Viking room in 29_multisampling example is obviously darker than in 28_mipmapping

Same phenomena also appears in later examples (30, 31 and 32).
————
Graphics Processor: AMD RX6600XT
Operating System: Windows 10 1809 LTSC, 17763.6189
Graphics Driver: AMD Software Adrenalin Edition 24.1.1
Vulkan SDK: 1.3.250
Rust: stable-x86_64-pc-windows-msvc 1.77.2

According to https://github.com/KhronosGroup/Vulkan-Samples/issues/1182 and some of my recent experiment this should be a bug of AMD graphics driver.


[Update existing sniff] Allow register_block_style

In https://github.com/WPTRT/WPThemeReview/blob/develop/WPThemeReview/Sniffs/PluginTerritory/ForbiddenFunctionsSniff.php
The sniff for regestering blocks is too strict.
The existing sniff is for 'register_block_*',  so an error is shown for register_block_style().
register_block_style() is allowed in themes, so it should not cause an error.

To do:

[ ] Add the rule in the Theme Review handbook to the Requirements page.
[ ] Add the rule in the Theme Review handbook to the Recommended page.
[ ] Move the rule in the Theme Review handbook to the Requirements page.
[ ] Create unit tests
[ ] Create new sniff
[ ] Adjust existing WPCS / PHPCS sniff and send in PR upstream.
[ ] Add existing sniffname sniff to the ruleset.

A PR for this is straightforward:
Check https://developer.wordpress.org/?s=register_block_&post_type[]=wp-parser-function for all the register_block_* type functions, add them manually but exclude the style one.
Thanks for noticing this 👍


Fix infinite recursion with closures

Guidance handles what would otherwise be infinitely recursive calls to guidance functions with a little "placeholder" based lazy-evaluation. This works great when the guidance functions take no arguments, but it fails otherwise. Fixing that may be a nice PR in of itself, but in the meantime, we can put ourselves in the zero-arg setting using closures.
Please take a look and let me know if you want to take some time to discuss this in detail.
P.S. one of your test cases was missing a "type": "object", which I included on the first commit of this branch.

Thanks for figuring out how to do this. However, I suspect that your work on the PlaceHolder is actually what is required. The goal of the GrammarFunction is to have a serialisable object so that a guidance client can interact with an endpoint which supports guidance. Moreover, the data sent must not contain executable code for security reasons.
Let me ping Scott on the PR to guidance-ai itself.

Understood. I suspect that the GrammarFunction generated by this code should still be serializable even if the python being used to produce it isn't.
I closed the Placeholder PR prematurely it seems -- I really thought I got it working with pure guidance functions, but as I mentioned, I'm currently unable to reproduce that. Really not sure what happened there... I must have been tired 😅
Anyway, I can reopen that PR and talk to Scott about how to do this right.


Validation: fix table spacing

Category

[x] Content fix

Related issues

no issue numbers; changes are part of the Validation cleanup efforts.

What's in this Pull Request?
This PR fixes 1 issue in 1 file.

Docs Build status updates of commit d51f1b5:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/design/semantic_slots.md
:bulb:Suggestion
View
Details

docs/design/semantic_slots.md

Line 32, Column 3: [Suggestion: column-header-missing - See documentation] Column headers are required for tables. Add appropriate header text, or remove any extra table cells that cause an extra column.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit ff6c87b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/design/semantic_slots.md
:bulb:Suggestion
View
Details

docs/design/semantic_slots.md

Line 32, Column 3: [Suggestion: column-header-missing - See documentation] Column headers are required for tables. Add appropriate header text, or remove any extra table cells that cause an extra column.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Global effort to fix build validation errors
The Content & Learning team is fixing build validation errors on docs.microsoft.com for the rest of H2. This will eliminate potential accessibility, security, and usability issues. This PR includes only build validation fixes and does not change other content. Please review within five business days and merge or comment in the PR with any changes you’d like to see. Thank you!

This change doesn't have any impact on the content, but makes the source content header to read. IOW, this isn't necessary.


Very slow performance after docker upgrade

~10x slower after updating docker and rebuilding postgres containers -
I've been using docker postgres for a project which was very very fast for the past year or so until updating docker and rebuilding my postgres containers.
I'm still getting very fast performance for other docker database containers (mssql, mysql), confirming it's not an issue with docker.
I'm also getting very fast performance via postgres installed directly on Windows (without docker)
I tried reinstalling Windows and my entire dev environment, which did not resolve the issue.
I've also tried some solutions online such as shm_size etc., which also did not resolve the issue.
Application tests run in about 4 seconds on Windows-installed postgres:

And run in about 40 seconds on Docker-installed postgres:

Docker Desktop 4.25.2 (129061)
postgres:12, postgres:13, postgres:14, postgres:15

Docker compose:
docker compose up
version: '3.1'
services:
    # Postgres
    postgres-12:
        image: 'postgres:12'
        container_name: 'riao-dbal-postgres-12'
        ports:
            - '5432:5432'
        environment:
            POSTGRES_USER: 'riao_root'
            POSTGRES_PASSWORD: 'password1234'
            POSTGRES_DB: 'db'
        shm_size: '2gb'

    postgres-13:
        image: 'postgres:13'
        container_name: 'riao-dbal-postgres-13'
        ports:
            - '5433:5432'
        environment:
            POSTGRES_USER: 'riao_root'
            POSTGRES_PASSWORD: 'password1234'
            POSTGRES_DB: 'db'
        shm_size: '2gb'

    postgres-14:
        image: 'postgres:14'
        container_name: 'riao-dbal-postgres-14'
        ports:
            - '5434:5432'
        environment:
            POSTGRES_USER: 'riao_root'
            POSTGRES_PASSWORD: 'password1234'
            POSTGRES_DB: 'db'
        shm_size: '2gb'

    postgres-15:
        image: 'postgres:15'
        container_name: 'riao-dbal-postgres-15'
        ports:
            - '5435:5432'
        environment:
            POSTGRES_USER: 'riao_root'
            POSTGRES_PASSWORD: 'password1234'
            POSTGRES_DB: 'db'
        shm_size: '2gb'

Running command docker-compose.yml to build containers
Docker Inspect:
{
	"Id": "9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb",
	"Created": "2023-11-24T14:39:45.117368622Z",
	"Path": "docker-entrypoint.sh",
	"Args": [
		"postgres"
	],
	"State": {
		"Status": "running",
		"Running": true,
		"Paused": false,
		"Restarting": false,
		"OOMKilled": false,
		"Dead": false,
		"Pid": 19512,
		"ExitCode": 0,
		"Error": "",
		"StartedAt": "2023-11-24T14:42:12.63045035Z",
		"FinishedAt": "2023-11-24T14:42:03.891409372Z"
	},
	"Image": "sha256:8cde386e2e85cce0eb684d0b27ddf6a8abbecd05d5af43bbbdf7be12c47c44e8",
	"ResolvConfPath": "/var/lib/docker/containers/9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb/resolv.conf",
	"HostnamePath": "/var/lib/docker/containers/9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb/hostname",
	"HostsPath": "/var/lib/docker/containers/9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb/hosts",
	"LogPath": "/var/lib/docker/containers/9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb/9c2b71981d1c83ae2050274eb52c5a770cadc2af4cad0b6b0c1d1bc0a7e022eb-json.log",
	"Name": "/riao-dbal-postgres-15",
	"RestartCount": 0,
	"Driver": "overlay2",
	"Platform": "linux",
	"MountLabel": "",
	"ProcessLabel": "",
	"AppArmorProfile": "",
	"ExecIDs": null,
	"HostConfig": {
		"Binds": null,
		"ContainerIDFile": "",
		"LogConfig": {
			"Type": "json-file",
			"Config": {}
		},
		"NetworkMode": "riao-project_default",
		"PortBindings": {
			"5432/tcp": [
				{
					"HostIp": "",
					"HostPort": "5435"
				}
			]
		},
		"RestartPolicy": {
			"Name": "",
			"MaximumRetryCount": 0
		},
		"AutoRemove": false,
		"VolumeDriver": "",
		"VolumesFrom": null,
		"ConsoleSize": [
			0,
			0
		],
		"CapAdd": null,
		"CapDrop": null,
		"CgroupnsMode": "host",
		"Dns": null,
		"DnsOptions": null,
		"DnsSearch": null,
		"ExtraHosts": [],
		"GroupAdd": null,
		"IpcMode": "private",
		"Cgroup": "",
		"Links": null,
		"OomScoreAdj": 0,
		"PidMode": "",
		"Privileged": false,
		"PublishAllPorts": false,
		"ReadonlyRootfs": false,
		"SecurityOpt": null,
		"UTSMode": "",
		"UsernsMode": "",
		"ShmSize":<PHONE_NUMBER>,
		"Runtime": "runc",
		"Isolation": "",
		"CpuShares": 0,
		"Memory": 0,
		"NanoCpus": 0,
		"CgroupParent": "",
		"BlkioWeight": 0,
		"BlkioWeightDevice": null,
		"BlkioDeviceReadBps": null,
		"BlkioDeviceWriteBps": null,
		"BlkioDeviceReadIOps": null,
		"BlkioDeviceWriteIOps": null,
		"CpuPeriod": 0,
		"CpuQuota": 0,
		"CpuRealtimePeriod": 0,
		"CpuRealtimeRuntime": 0,
		"CpusetCpus": "",
		"CpusetMems": "",
		"Devices": null,
		"DeviceCgroupRules": null,
		"DeviceRequests": null,
		"MemoryReservation": 0,
		"MemorySwap": 0,
		"MemorySwappiness": null,
		"OomKillDisable": false,
		"PidsLimit": null,
		"Ulimits": null,
		"CpuCount": 0,
		"CpuPercent": 0,
		"IOMaximumIOps": 0,
		"IOMaximumBandwidth": 0,
		"MaskedPaths": [
			"/proc/asound",
			"/proc/acpi",
			"/proc/kcore",
			"/proc/keys",
			"/proc/latency_stats",
			"/proc/timer_list",
			"/proc/timer_stats",
			"/proc/sched_debug",
			"/proc/scsi",
			"/sys/firmware"
		],
		"ReadonlyPaths": [
			"/proc/bus",
			"/proc/fs",
			"/proc/irq",
			"/proc/sys",
			"/proc/sysrq-trigger"
		]
	},
	"GraphDriver": {
		"Data": {
			"LowerDir": "/var/lib/docker/overlay2/2280e4453b2f806888f7b463c0d48cf3049633e12ae237dcdf6d7766a20e7b64-init/diff:/var/lib/docker/overlay2/24d04924c42a0c62aa8dd43d006268bbc9a301293a82717bffa4c865925cd42c/diff:/var/lib/docker/overlay2/ea3dbdc4d33399fd1d1b98a91cad88edf2bd8adfaa37bf6de592b6c0e9ccfcf5/diff:/var/lib/docker/overlay2/83e093cc54287e72590765cf94cf02c56fc9a9b2e1e5a7df90b2e7b08ea0d8eb/diff:/var/lib/docker/overlay2/ae4fec3031864d4488811bd3324ee20ffb2cfe56644409c406273068fd9eaa1b/diff:/var/lib/docker/overlay2/877ab6bcf4d032ca3dcf772cba6951c075588e659c4e4da8d5b3e9998048ac5d/diff:/var/lib/docker/overlay2/5e422fd6e58a93f326762b519229b6e246545a56bdf5b580ea778fa994166a91/diff:/var/lib/docker/overlay2/39bcb7e82105e2755f35df966fc67694de39a3e22fdb1fc4d8c39fee4a31e14f/diff:/var/lib/docker/overlay2/7a6b26948b50b212dd301883cdee82f3f8e90b07a57fcf107dbe8f2809742cdc/diff:/var/lib/docker/overlay2/230fd2e7ac49edc415f0d58b4b2defbac3de894f1f23c5fcc42fe5eb5ad14e05/diff:/var/lib/docker/overlay2/caef1238bb1bb29a6c3a26dd1df9444c5de56768d9d8b19edc4af7f04c93c4a9/diff:/var/lib/docker/overlay2/a5727870ce2126f6f2cc5f4d2f4edfec25b738f3868232aa93b512a10191fe7b/diff:/var/lib/docker/overlay2/3243cd85857457a3136085ebd4b6c6522a73e90177887aa8d1821f1a60bf6a75/diff:/var/lib/docker/overlay2/eed2632f98f36b4bd829bfcca2837866ff38a5a938c009c8adde8bc336dbd09c/diff",
			"MergedDir": "/var/lib/docker/overlay2/2280e4453b2f806888f7b463c0d48cf3049633e12ae237dcdf6d7766a20e7b64/merged",
			"UpperDir": "/var/lib/docker/overlay2/2280e4453b2f806888f7b463c0d48cf3049633e12ae237dcdf6d7766a20e7b64/diff",
			"WorkDir": "/var/lib/docker/overlay2/2280e4453b2f806888f7b463c0d48cf3049633e12ae237dcdf6d7766a20e7b64/work"
		},
		"Name": "overlay2"
	},
	"Mounts": [
		{
			"Type": "volume",
			"Name": "7b2909b6e24d0b48399c3137ba14ab3fe679e6e85423c3fdfd501a5e57eba8f9",
			"Source": "/var/lib/docker/volumes/7b2909b6e24d0b48399c3137ba14ab3fe679e6e85423c3fdfd501a5e57eba8f9/_data",
			"Destination": "/var/lib/postgresql/data",
			"Driver": "local",
			"Mode": "",
			"RW": true,
			"Propagation": ""
		}
	],
	"Config": {
		"Hostname": "9c2b71981d1c",
		"Domainname": "",
		"User": "",
		"AttachStdin": false,
		"AttachStdout": true,
		"AttachStderr": true,
		"ExposedPorts": {
			"5432/tcp": {}
		},
		"Tty": false,
		"OpenStdin": false,
		"StdinOnce": false,
		"Env": [
			"POSTGRES_DB=db",
			"POSTGRES_USER=riao_root",
			"POSTGRES_PASSWORD=password1234",
			"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/15/bin",
			"GOSU_VERSION=1.16",
			"LANG=en_US.utf8",
			"PG_MAJOR=15",
			"PG_VERSION=15.5-1.pgdg120+1",
			"PGDATA=/var/lib/postgresql/data"
		],
		"Cmd": [
			"postgres"
		],
		"Image": "postgres:15",
		"Volumes": {
			"/var/lib/postgresql/data": {}
		},
		"WorkingDir": "",
		"Entrypoint": [
			"docker-entrypoint.sh"
		],
		"OnBuild": null,
		"Labels": {
			"com.docker.compose.config-hash": "9b63b255858e032200e43aedfe79db5746b18ca786c4a1596b06129e911bedae",
			"com.docker.compose.container-number": "1",
			"com.docker.compose.depends_on": "",
			"com.docker.compose.image": "sha256:8cde386e2e85cce0eb684d0b27ddf6a8abbecd05d5af43bbbdf7be12c47c44e8",
			"com.docker.compose.oneoff": "False",
			"com.docker.compose.project": "riao-project",
			"com.docker.compose.project.config_files": "D:\\Dev\\riao-project\\docker-compose.yml",
			"com.docker.compose.project.working_dir": "D:\\Dev\\riao-project",
			"com.docker.compose.service": "postgres-15",
			"com.docker.compose.version": "2.23.0"
		},
		"StopSignal": "SIGINT"
	},
	"NetworkSettings": {
		"Bridge": "",
		"SandboxID": "c25224fa93ce51fb51852e2da0c9a9f7b9b419d6e74e59e252152adcbe17694c",
		"HairpinMode": false,
		"LinkLocalIPv6Address": "",
		"LinkLocalIPv6PrefixLen": 0,
		"Ports": {
			"5432/tcp": [
				{
					"HostIp": "<IP_ADDRESS>",
					"HostPort": "5435"
				}
			]
		},
		"SandboxKey": "/var/run/docker/netns/c25224fa93ce",
		"SecondaryIPAddresses": null,
		"SecondaryIPv6Addresses": null,
		"EndpointID": "",
		"Gateway": "",
		"GlobalIPv6Address": "",
		"GlobalIPv6PrefixLen": 0,
		"IPAddress": "",
		"IPPrefixLen": 0,
		"IPv6Gateway": "",
		"MacAddress": "",
		"Networks": {
			"riao-project_default": {
				"IPAMConfig": null,
				"Links": null,
				"Aliases": [
					"riao-dbal-postgres-15",
					"postgres-15",
					"9c2b71981d1c"
				],
				"NetworkID": "7d0007ec201ae063e353a7b099f77c7112e3f1e4639d774b4f952a2d9060a6cc",
				"EndpointID": "fa8e7ab9e4b4cda2f619e5d3682b77b8a80b5f12da1aec459425bcd7bc154982",
				"Gateway": "<IP_ADDRESS>",
				"IPAddress": "<IP_ADDRESS>",
				"IPPrefixLen": 16,
				"IPv6Gateway": "",
				"GlobalIPv6Address": "",
				"GlobalIPv6PrefixLen": 0,
				"MacAddress": "02:42:ac:17:00:02",
				"DriverOpts": null
			}
		}
	}
}

Solved w/ workaround - I changed my the host variable from localhost to <IP_ADDRESS>...

Not sure why this affects postgres now but was fine 7 months ago when docker-postgres was first installed
Not sure why this affects docker-postgres but not docker-mssql, docker-mysql
Not sure why this affects docker-postgres but not native Windows postgres installation

Thanks!


Mark components as player-only

Once https://github.com/space-wizards/RobustToolbox/issues/1255 is done we'll need to go through and update the components that need this to use it. If you see any dump them into this issue but off the top of my head 2 I know of are the flashable and alerts components.
The easiest way to tell is if it checks if the player is the currently controlled entity in state updates e.g.:
private void UpdateAlertsControls()
{
    if (!CurrentlyControlled || _ui == null)
    {
        return;
    }

Advantages are less data sent to irrelevant clients (helps with bandwidth and cheating).
If my PVS PR gets merged as-is then this is as easy as setting a bool server-side.

so both referenced prs for this were closed. this still valid?

GetComponentState(ICommonSession session) replaced this


switch ops-run-in-loop wrapper script from eval to running args directly

@twiest gave 👍 in stg PR #1689


As a team member I should be able to demo a stable version of Energy Vision

Tasks

[ ] Create a stable environment in Radix
[ ] Promote dev environment to stable in the Radix console once it’s stable
[ ] Pin the URL of the environment in the Slack channel

Acceptance criteria

The stable environment should be predictable and should not contain anything unsuspected nor should it break if there’s breakage in dev

In order to ensure good quality we should

[ ] Extra focus on usability
[ ] Test for portability
[ ] Test for accessibility
[ ] Create automated acceptance test/smoke test
[ ] Perform user testing

Radix environment in place. Should we also have a stable Sanity environment?

We can make another playground project and publish to that, but not sure if we can clone/share the dataset between that one and production. Might not be that bad if that one has a different dataset though?

@nilsml to check if this is a duplicate


minimal support for microchip cec1702

@galak Finally got to making this PR as promised way earlier. Please take a look if things are done in a sane way, or need fixing.

@galak Thanks, will fix accordingly.
Any comments on the Kconfig things? I was not fully sure how to name/use some of the board specifics, but I did what seemed to make sense and works.
UART_NS16550_PORT_0_CLK_FREQ is also hard coded in the fixup. Wonder how to put that into the dts.
I am next working on SPI and SPI Flash drivers. Is there any work on a generic SPI flash driver that I could reuse? I will need few flash specific overrides, but otherwise it's pretty generic chip on the demo board: SST26VF016B.
PINCTRL and GPIO drivers will probably come too later.

Change requests addressed. Please review again. Copyright notices also added. This work from @CryptaLabs.

Sorry for not saying this earlier, but wondering if we can either remove the HAL code import, or if we keep it we since its not Apache licensed we need to go through the process documented here:
http://docs.zephyrproject.org/contribute/contribute_non-apache.html

@galak

Sorry for not saying this earlier, but wondering if we can either remove the HAL code import, or if we keep it we since its not Apache licensed we need to go through the process documented here:
http://docs.zephyrproject.org/contribute/contribute_non-apache.html

The HAL is used in the board pin mux setup. It may be also needed for few other places. Of course much of the code can be written be rewriting the relevant things on per-driver basis.
There is additional ROM API present. It includes some header files and symbols introduced in the linker script. I have pending commit for that too, and may need it in.
@dbkinder

Flashing and Debugging sections are still empty

The CEC1702 does not contain flash. It requires external SPI flash chip that one needs to program using externally via the SPI programmer. This is true for the demo board, it's flashed by connecting directly to the SPI bus. I personally used rpi + flashrom, but other use cases exist. I wonder how to properly document this.
There is standard JTAG option available, but I have not used it. Apparently it needs also additional steps on the MCU to enable it, as they intentionally disable debugging for ROM boot up code.
Basically the chip boots from ROM, that loads the main firmware image from the external SPI chip. The image may be encrypted and signed. There's eFuse bits that contain the encryption/signature keys and the information if signature is required or not.
Lot of this is outside the scope of the initial commits. So I wonder if we drop the section, or briefly explain the above?

@fabled still interested in getting this merged?

@galak Yes, would be nice. Seems a rebase is needed... I can do that in near future. Is there other changes that would still be needed?

@galak Rebased, though testing is still in progress.

@franciscomunoz Requested changes added.
Fixed to advertise FPU support, and reworked the config related matters so things compile again. QMSPI code style issues fixed.
@franciscomunoz @galak Anything else to fix?

Timo,
It would be good if you rename the file  spi_cec_qmspi.c to spi_xec_qmspi.c
. This is because the whole Microchip family is MEC/CEC. What do you think
?
—Francisco
On Sun, Aug 12, 2018 at 3:03 PM Timo Teräs<EMAIL_ADDRESS>wrote:

@franciscomunoz https://github.com/franciscomunoz Requested changes
added.
Fixed to advertise FPU support, and reworked the config related matters so
things compile again. QMSPI code style issues fixed.
@franciscomunoz https://github.com/franciscomunoz @galak
https://github.com/galak Anything else to fix?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/zephyrproject-rtos/zephyr/pull/5383#issuecomment-412374965,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGB0FzuoLn6cgWmfJQwfpDowH4MVdfvkks5uQKYZgaJpZM4RA8jp
.

Then we would need to rename a lot of other things too. CEC is assumed as the SoC family in many places.
The MEC170x seems to be new set of chips that are CEC compatible. The docs seem to speak of "CEC/MEC family". However, there's a lot of other MEC series chips that are not compatible. There's also CEC1302 which is earlier revision that seems more or less compatible.
The headers seem to speak of MEC2016 as the core. So I'd probably keep the 'CEC' name. The MEC170x subset is just CEC compatible. Alternatively, if going for MEC, we should use MEC2016 or MEC170x as there's bunch of other MEC chips that are completely different. Let's stay with CEC?

I see, sure no problem.
On Mon, Aug 13, 2018 at 4:33 AM Timo Teräs<EMAIL_ADDRESS>wrote:

Then we would need to rename a lot of other things too. CEC is assumed as
the SoC family in many places.
The MEC170x seems to be new set of chips that are CEC compatible. The docs
seem to speak of "CEC/MEC family". However, there's a lot of other MEC
series chips that are not compatible. There's also CEC1302 which is earlier
revision that seems more or less compatible.
The headers seem to speak of MEC2016 as the core. So I'd probably keep the
'CEC' name. The MEC170x subset is just CEC compatible. Alternatively, if
going for MEC, we should use MEC2016 or MEC170x as there's bunch of other
MEC chips that are completely different. Let's stay with CEC?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/zephyrproject-rtos/zephyr/pull/5383#issuecomment-412488866,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGB0FxhNus_jbt1iT-YT3PfgUg_OSXMEks5uQWP6gaJpZM4RA8jp
.

@galak Ping.

@galak Ping.

Its been a while, sorry about that.  Since this out of my memory, my first question is what is the license of the CEC HAL code?

It seems to be pretty free. The header file carries this:
 * @par      ARM Limited (ARM) is supplying this software for use with Cortex-M
 *           processor based microcontroller, but can be equally used for other
 *           suitable processor architectures. This file can be freely distributed.
 *           Modifications to this file shall be clearly marked.
 *
 *           THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
 *           OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
 *           MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
 *           ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
 *           CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Do you mind bring this PR up to date w/latest mater.  I need to start a license review for the HAL since its not using a standard license.  I don't see any issues w/it.

@galak The conflict is simple to resolve. But seems the SoC stuff resides in new directory. Could you point an example commit how to add a new soc / soc-family (+ soc-series if needed) on the new layout and what the Kconfig files should be named like?

@galak The conflict is simple to resolve. But seems the SoC stuff resides in new directory. Could you point an example commit how to add a new soc / soc-family (+ soc-series if needed) on the new layout and what the Kconfig files should be named like?

Sure, pretty much we just moved arch/arm/soc/microchip_cec to soc/arm/microchip_cec.  Take a look at:
commit 537798db0d82c1b6c6f2d6fb029210ef007ebf6e
Author: Diego Sueiro<EMAIL_ADDRESS>Date:   Wed Oct 17 07:58:14 2018 +0100
soc: arm: exx32: Add Silabs EFR32MG12P soc files

@galak Mechanical rebase done. Builds again the hello sample. Unfortunately, have not boot tested yet.

@galak Mechanical rebase done. Builds again the hello sample. Unfortunately, have not boot tested yet.

thanks, I submitted the license for review, with the Thanksgiving Holiday in the US its going to delay things a bit.

@tbursztyka Can you look at the SPI driver in this PR.

@galak Ping. Reworked The NS16550 UART alternate clock select to have SoC specific block in the uart driver. That simplifies things quite a bit. Let me know if would have a better approach. I hope we could get this merged in soonish. It's been pending a long time...

@nashif @galak What should we do with PRs that are a year old and still open?

@dbkinder

Documentation is better, but still missing Flashing and Debugging section content.

I will work out the Flashing section. The vendor provider stuff is all Windows -based. Getting it done in generic way is doable, but may need some extras. Any way it boots from external SPI chip, so the thing is to have SPI flasher. What comes to Debugging, I don't have much experience as I never used hardware debugger. The SoC and board has standard JTAG support, but I basically never used it. So It is not really possible for me anything else that "Standard JTAG supported." or similar. Would that be sufficient for the time being?

Much of the time has been waiting review - or scheduling some cycles to this. Howevre, I am still happy to do requested changes as possible. I really hope we could get this to acceptable state so others can start building on it. I have had some private questions asked on this. There is now another demo board built on this SoC, and there is also four new SoCs (MEC1701, MEC1703, MEC1704 and MEC1705) which are of same core/family.

closing as stale


[bug] Rikolti ETL'd item records don't populate in -stage

Rikolti ETL harvest jobs complete, but the item records don't populate in -stage.

[ ] create_stage_index Log for 15685 - permalink to log

Run ID: manual__2024-03-14T00:45:09+00:00
https://calisphere-stage.cdlib.org/collections/15685/

[ ] create_stage_index Log for 19967 - permalink to log

Run ID: manual__2024-03-14T00:51:34+00:00
https://calisphere-stage.cdlib.org/collections/19967/

[ ] create_stage_index Log for 27423 - permalink to log

Run ID: manual__2024-03-14T00:52:47+00:00
https://calisphere-stage.cdlib.org/collections/27423/

Duplicate #831


fontbakery.com is ahead of the repo

Hi!
It seems that the version on fontbakery.com is ahead of the repository and includes a fix for the glyphsets import:
  await micropip.install([
     'axisregistry',
     'setuptools',
     'lxml',
     'fontTools>=4.39.0',
     'opentypespec',
     'munkres',
     'mock',
     'requests',
     'beziers>=0.5.0',
     'dehinter',
+   'beautifulsoup4',
+   'fs',
+   'jinja2',
+   'gfsubsets',
+   'gflanguages',
  ]);

Could you please update the repository?

Oh, sorry, I confused myself. This repository here should be considered defunct, we're serving everything from the fonttools/fontbakery repo now.


Prism3 - Availability incorrect

Hi - just discovered this amazing library!
I've noticed that the stock availability isn't working fully for Prism3 - at least not here in Wigan!
The HREF that's being searched for is http://schema.org/InStock (see here) however it should also include http://schema.org/InStoreOnly.

https://capitadiscovery.co.uk/wigan/items/486163?query=bob+mortimer&resultsUri=items%3Fquery%3Dbob%2Bmortimer

Just as a PS, I wanted to thank you again for this wonderful npm library. I've used it on a personal project in my free time over the course of the last week to build Libraree.org (with a temporary hack to deal with the above issue, for now).
It was something to solve a personal need: searching a short list of several authorities' catalogues in one go; something I've been doing the long way for a while now. Your hard work gave me the nudge to build the app I'd been dreaming about for a while!
It differs from librarybooks.uk in so much as it searches a predefined short list of libraries of which I'm already a member, rather than all library services in the UK by distance. It also uses Google Books to turn titles into ISBN numbers.
You can install it as an app on phones or on a desktop computer as it's also a PWA.
I realise a comment on an issue isn't the best way of letting you know all this, but I've struggled to find another way of reaching you.
Thanks again!

Hi Chris,
Thanks for raising this, and for the feedback! Availability is definitely one of the biggest challenges I've found with this project as it often seems to be down to the configuration within each individual library service. I've just made a change that should add that additional status in though.
It's also good to hear about Libraree - just taken a look and it looks great, I'll put it on my phone!


session.getStub is not a function

UnhandledPromiseRejectionWarning: TypeError: session.getStub is not a function

Also getting this issue.

Any idea how to solve this?


demonstrate multi-allelic gVCF failure - test added

This PR does not pass tests - this is as intended as purpose is to demonstrate problem.
Test added in ADAMContextSuite
and related test vcf file, which demonstrates that we currently cannot import gVCF variants which have a
Multi-allelic site with non-ref symbolic allele
error reported when running tests is:
2016-10-11 11:30:03 ERROR TaskSetManager:74 - Task 0 in stage 0.0 failed 1 times; aborting job
- load gvcf which contains a multi-allelic row from a directory *** FAILED ***
  org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 0.0 failed 1 times, most recent failure: Lost task 0.0 in stage 0.0 (TID 0, localhost): java.lang.IllegalArgumentException: Multi-allelic site with non-ref symbolic allele[VC Unknown @ chr22:18030096-18030099 Q564.73 of type=MIXED alleles=[TAAA*, <NON_REF>, T, TA, TAA] attr={BaseQRankSum=-0.133, ClippingRankSum=-1.438, DP=114, MLEAC=[0, 1, 1, 0], MLEAF=[0.00, 0.500, 0.500, 0.00], MQ=69.72, MQ0=0, MQRankSum=-0.686, ReadPosRankSum=-0.013} GT=GT:AD:DP:GQ:PL	2/3:13,3,17,17,0:50:86:602,508,1628,86,678,553,137,342,0,281,467,744,353,309,659
	at org.bdgenomics.adam.converters.VariantContextConverter.convert(VariantContextConverter.scala:214)
	at org.bdgenomics.adam.rdd.ADAMContext$$anonfun$loadVcf$1.apply(ADAMContext.scala:823)
	at org.bdgenomics.adam.rdd.ADAMContext$$anonfun$loadVcf$1.apply(ADAMContext.scala:823)
	at scala.collection.Iterator$$anon$13.hasNext(Iterator.scala:371)
	at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
	at org.apache.spark.util.Utils$.getIteratorSize(Utils.scala:1595)
	at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1157)
	at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1157)

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1531/Build result: FAILUREGitHub pull request #1205 of commit cd05b747e0bca02a51390152e27df224417290a1 automatically merged.Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'[EnvInject] - Loading node environment variables.Building remotely on amp-jenkins-worker-05 (centos spark-test) in workspace /home/jenkins/workspace/ADAM-prb > /home/jenkins/git2/bin/git rev-parse --is-inside-work-tree # timeout=10Fetching changes from the remote Git repository > /home/jenkins/git2/bin/git config remote.origin.url https://github.com/bigdatagenomics/adam.git # timeout=10Fetching upstream changes from https://github.com/bigdatagenomics/adam.git > /home/jenkins/git2/bin/git --version # timeout=10 > /home/jenkins/git2/bin/git -c core.askpass=true fetch --tags --progress https://github.com/bigdatagenomics/adam.git +refs/pull/:refs/remotes/origin/pr/ # timeout=15 > /home/jenkins/git2/bin/git rev-parse origin/pr/1205/merge^{commit} # timeout=10 > /home/jenkins/git2/bin/git branch -a --contains 9830f5063012db134a809f62c43e78373ba3f81e # timeout=10 > /home/jenkins/git2/bin/git rev-parse remotes/origin/pr/1205/merge^{commit} # timeout=10Checking out Revision 9830f5063012db134a809f62c43e78373ba3f81e (origin/pr/1205/merge) > /home/jenkins/git2/bin/git config core.sparsecheckout # timeout=10 > /home/jenkins/git2/bin/git checkout -f 9830f5063012db134a809f62c43e78373ba3f81eFirst time build. Skipping changelog.Triggering ADAM-prb ? 2.6.0,2.11,1.5.2,centosTriggering ADAM-prb ? 2.6.0,2.10,1.5.2,centosTouchstone configurations resulted in FAILURE, so aborting...Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'
Test FAILed.

ok to close in favor of #1247?

Closed as merged in #1247.


works first time, but says bluetooth not supported after reboot

samsung notes work fine

i might have uninstalled samsung settings by mistake

App installation failed with error message: Windows cannot install package SAMSUNGELECTRONICSCO.LTD.SamsungSettings1.5_<IP_ADDRESS>_x64__3c1yjt4zspk6g because this package depends on a device driver that could not be found.  One of the following device drivers must be installed: {[Samsung-SFourSWComp15.inf, <IP_ADDRESS>]} (0x80073cfd)

just found out why this happens, it happens after a system restore, lemme check why exactly

yeah just installed everything clean again, it works nicely then gives this error as soon as i turn it off and on anytime after installation


refactor: infer.rs 'fn results'

No need for &self to be mutable
Make control-flow more obvious
Also, in merge_equal_metas(), do if contains ... remove.unwrap in one step

No change to semantics.

@cqc-alec reassigning this as Seyon sounds busy and I'm not looking for any subject area expertise - this is semantics-preserving!


Adding metric visualization code snippets in guide/documentation to facilitate use

🚀 Feature
Explaining the methods of visualizing visually interpretable metrics with matplotlib or another library will be much easier in terms of use. It would be nice if, as an example, it could be explained how ROC metric results can be visualized in a very simple way. A draft piece of code can be added even if no visual attachment is added.
Motivation
I sometimes have trouble interpreting the format and/or output of some metrics. Therefore, I think that if I know where to put which output (in the graph), I can understand it more easily.
Pitch
When I read the ROC metric API documentation I would like to see a piece of code where I can visualize the results.
Alternatives
The piece of code that can be executed even if not placed visually will help.
Additional context

# torchmetrics functional API to compute metric

...

# then visualize

fig = plt.figure(figsize=(8,6))

for i in result_table.index:
    plt.plot(result_table.loc[i]['fpr'],
             result_table.loc[i]['tpr'],
             label="{}, AUC={:.3f}".format(i, result_table.loc[i]['auc']))

plt.plot([0,1], [0,1], color='orange', linestyle='--')

plt.xticks(np.arange(0.0, 1.1, step=0.1))
plt.xlabel("Flase Positive Rate", fontsize=15)

plt.yticks(np.arange(0.0, 1.1, step=0.1))
plt.ylabel("True Positive Rate", fontsize=15)

plt.title('ROC Curve Analysis', fontweight='bold', fontsize=15)
plt.legend(prop={'size':13}, loc='lower right')

plt.show()

Somewhat related to #652


Fixup of #388

@Guelakais thanks for following up on our feedback. Could you in the future address the feedback on the same PR that you submitted instead of creating new ones? It's the GitHub workflow for tracking changes and feedback, otherwise it'll be much more difficult to track feedback. Thanks.

I had accidentally applied the changes to my own main-branch and found it easier to delete the entire fork and set it up again than to remove commits. I will try to do this better in the future.

@esteve Wouldn't it make more sense to put the file once in each root directory of each ros2-rust related repo? Putting it multiple times in the same repo just means we need to remember more places hidden within each repo to update if the target style ever changes.
Also I think the pieces we're thinking about moving out into their own repo(s) so far are Python packages which wouldn't use the .rustfmt.toml file anyway.

@mxgrey yeah, that makes sense, we can just add a .rustfmt.toml file at the root when we create the new repos.

@Guelakais thanks!


Renamed ingestion tutorial

The tutorial is about ingestion, not about Intake only.

(Change from my hard drive missed from #49.)

Ok but we need to change all the links if we rename that

I think all the links were already ok, and it looks like you reverted the reverted link change, so I assume it's ok now.


too many ldb file has created

After the program runs for a period of time, leveldb's ldb file is up to 300,000 and takes up 97GB of space. However, actually viewing the information under leveldb.stats takes only 15GB. When restarting the program open Leveldb, leveldb automatically deletes the file and eventually takes up 16GB ( download log).
open db code:
	db, err := leveldb.OpenFile(file, &opt.Options{
		OpenFilesCacheCapacity: 16,
		BlockCacheCapacity:     8 * opt.MiB,
		WriteBuffer:          4 * opt.MiB,
		Filter:                 filter.NewBloomFilter(10),
		CompactionTableSize:  8* opt.MiB,
	})
	if _, corrupted := err.(*errors.ErrCorrupted); corrupted {
		db, err = leveldb.RecoverFile(file, nil)
	}

i found the leveldb.aliveiters is too big .one db is 25259.

i have use the new config ,and the number of ldb files does not grow rapidly。
&opt.Options{
		OpenFilesCacheCapacity: 3584,
		BlockCacheCapacity:    536 * opt.MiB,
		WriteBuffer:          68 * opt.MiB,
		Filter:                 filter.NewBloomFilter(10),
		CompactionTableSize: 2 * opt.MiB,
	}

i fixed it. The reason is that the crated Iterator is always in use and has not been released yet.


Update to Kotlin M14

The update seems to be done, but the 0.7.1 artifacts cannot be resolved.
They may not be uploaded yet.

All the libs I depend on are now available, I guess it's done :)

Anko 0.7.1 is released https://github.com/JetBrains/anko/releases/tag/v0.7.1.

It was not entirely available on jcenter until 10 minutes ago for some reasons.


How to reduce transform time?

When I use NNPACK with caffe's convolution layer, I find it cost almost half of time to transform output data:

profile = {total = 0.35187557300014305, input_transform = 0.032353789985791082, kernel_transform = 0.00099588599914568476, output_transform = 0.14845979897654615, block_multiplication = 0.1696860040538013}

Is there any way to reduce this time?

It looks like you have small input image with few input channels. Output transform time can't be reduces. You can get rid of kernel transform time, through, by pre-computing kernel transforms as described in #82


Type is not assignable to AnimationName

Bug report
Describe the bug
After upgrading to v1.1.0 from v0.2.3 I am running into an issue with keyframes. Here is an example code snippet:
export default styled(Overlay, {
    position: 'fixed',
    inset: 0,
    backgroundColor: 'hsl(0 0% 0% / 0.439)',
    '@motion': {
        willChange: 'opacity',
        animationDuration: '$transitions$duration-fast',
        animationTimingFunction: '$transitions$easing-ease-in-out',
        // typescript throws an error here
        animationName: keyframes({
            from: { opacity: 0 },
            to: { opacity: 1 }
        })
    }
});

Prior to v1.1.0 typescript was not complaining about this. The error it throws now is:
Type '{ (): string; name: string; }' is not assignable to type 'AnimationName | Globals | ScaleValue | Index | undefined'.
Some workarounds for now are as follows:

Wrap the keyframes function with `${keframes(...)}`
Wrap the whole block under the media query like so

'@motion': {
    '&': {
        willChange: 'opacity',
        animationDuration: '$transitions$duration-fast',
        animationTimingFunction: '$transitions$easing-ease-in-out',
        animationName: keyframes({
            from: { opacity: 0 },
            to: { opacity: 1 }
        })
    }
}

The keyframes API was usually designed to be used in its own block, like
const fade = keyframes({...})

and then:
{
  animationName: fade
}

Im personally in favour of that approach, because you can express what the animation does more easily, and you can share them across components.
But having said that, I guess it should still work the way you're wanting it to.
@jonathantneal whats your view on this? any performance issues? or any reason why we may want to prevent this type of pattern?

@peduarte I have also tried to to this by setting keyframes as a variable, then used the shorthand animation property. The ts errors only go away in this scenario when there is a template string used.

My view on this is that it’s hard to say whether it should or it shouldn’t.
The literal answer to why it doesn’t work is "because we did not design the API this way".
Now, could supporting this create problems? Yes. Only 2 that I can think of:

We have a very simple check to determine whether something is a declaration or a rule. What is the cost of adding more logic to the bit that runs over every declaration or nested selector?
Which TS utilities should support this? Should someone be able to prevent this from being an inline keyframes rule, but allow a previously created keyframes rule?


Remove use of defaultdict

Solidity will always a default value of zero instead of None in python.  We were trying to emulate this with defaultdict.  This had the unintended consequence of creating new entries if an unknown key was looked up.  We could either create a custom DefaultDict or just use the .get() method on dict to ensure that we always get a default zero value.  We chose the latter.

defaultdict -> dict
update callers
update pyproject
fix lint

Codecov Report
Patch coverage: 88.88% and project coverage change: -0.04 :warning:

Comparison is base (ad8aa35) 85.73% compared to head (c3985e7) 85.69%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #492      +/-   ##
==========================================
- Coverage   85.73%   85.69%   -0.04%
==========================================
  Files          32       33       +1
  Lines        2670     2684      +14
==========================================
+ Hits         2289     2300      +11
- Misses        381      384       +3

Flag
Coverage Δ

unittests
85.69% <88.88%> (-0.04%)
:arrow_down:

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

Impacted Files
Coverage Δ

elfpy/markets/hyperdrive/checkpoint.py
85.71% <85.71%> (ø)

elfpy/markets/hyperdrive/hyperdrive_actions.py
85.46% <85.71%> (+0.15%)
:arrow_up:

elfpy/markets/borrow.py
85.27% <88.88%> (-0.56%)
:arrow_down:

elfpy/markets/hyperdrive/hyperdrive_market.py
84.92% <92.00%> (+0.15%)
:arrow_up:

elfpy/markets/base.py
88.88% <100.00%> (-0.25%)
:arrow_down:

... and 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

defaultdict just implements quantum waveform collapse, when you observe an index, it coalesces into a point form that existed only as a cloud of probability prior


homespan.poll() taking too much storage space

Hello,
I have a sketch that I have been using with my ESP32 for a while. Recently I have upgraded my libraries and now I get an error compiling that the sketch is too big:
Compilation error: text section exceeds available space in board
I have traced the issue back to the homespan.poll() call on void loop()
Commenting out homespan.poll() and nothing more, the sketch uses 1244957 bytes (94%) of program storage space.
Without commenting out homespan.poll(), the sketch uses 1430061 bytes (109%) of program storage space.
I am not an expert on C++, but I assumed once I imported the library it would come with all its contents, not include more code depending on the functions I call.
Before upgrading libraries I didn't have this issue as I have the old version of the sketch currently loaded and running on the ESP32.
It is also worth noting that the whole homespan setup (creating devices, homespan.begin(), etc...) doesn't take up much space. Only homespan.poll() do.
Could you advise me on this issue?
Thank you

Which libraries did you update?  HomeSpan or something else?  A complex HomeSpan sketch takes up about 1MB of flash space (using HomeSpan 1.7.2 and Arduino-ESP32 version 2.0.9).  Are you using any other external libraries?
Note if you need more space you can compile with a different partition structure.  Based on your statistics above, it seems like you may be compiling with the default partition, which divides the ESP32's 4MB of flash into two program partitions (APP) of 1.2 MB each (two are needed to support OTA), and one 1.5 MB SPIFFS data partition (which is much bigger than needed for HomeSpan).  You can try compiling with the Minimal SPIFFS option, which yield 1.9 MB for each program partition.  Alternatively, if you don't use OTA you only need one program partition and can compile with the No OTA option that provided for 2 MB APP and 2 MB SPIFFS.

These are all the includes from libraries I use in the sketch:
#include <ArduinoIoTCloud.h>
#include <Arduino_ConnectionHandler.h>
// HomeSpan - Version: Latest
#include <HomeSpan.h>
// ESP8266 Influxdb - Version: Latest
#include <InfluxDbClient.h>
// DHT sensor library - Version: Latest
#include <DHT.h>
#include <DHT_U.h>
#include <uptime_formatter.h>
#include <uptime.h>

They are all the latest versions. I updated all libraries, but only HomeSpan had this big change in size.
I need OTA for this project. Also, my board is DOIT ESP32 DEVKIT V1 and it doesn't show me the partition scheme option. Can I use ESP32 Dev Module instead in the board options?

Were you able to resolve this by choosing the ESP32 Dev Module and selecting one of the larger partition schemes?

I have managed to compile the code without errors or warnings, but I have not yet loaded it into the ESP32 as I am afraid I won't be able to revert back to how it was originaly

I have just uploaded the sketch using the minimal SPIFFS partition scheme and it seems to have worked.

I have just uploaded the sketch using the minimal SPIFFS partition scheme and it seems to have worked.


run succesfully ,but i don't know how to use it.

hello ensan
thanks for your share
I  run the sample on my mac with no issue.
but I can not find IMKitSample in the input source. so  I can not switch to it.
how can I  use the input method in my text editor?

Hello @alancpu .
Did you check setting > keyboard > input source > English?
This is the screenshot taken in my environment. I could find the input source here.

Didn't appear there for me

I had to restart the computer for it to show up.

Oh I didn't know that case. I'll add your information to README.

Since there's no reaction form author, I'd like to close this issue. If there's any problem, feel free to re-open or create another issue.


How to subscribe to user events (socket events) without using virtual get (for testing purposes) in sails.js

Node version: 12.19.1
Sails version (sails): 1.4.0
ORM hook version (sails-hook-orm): 2.1.1
Sockets hook version (sails-hook-sockets): 2.0.0
Organics hook version (sails-hook-organics): 0.16.1
Grunt hook version (sails-hook-grunt): 4.0.1

I'm trying to implement some tests for my socket and I can't find a way to subscribe to User events without using sails.js virtual GET inside SailsSocket class
the application frontend code looks something like that

import socketIOClient from "socket.io-client";
import sailsIOClient from "sails.io.js";

const io = sailsIOClient(socketIOClient);
io.sails.transports = ['websocket'];
io.sails.url = "http://localhost:1337/";//define the url in http protocol (that's works fine)
io.sails.reconnectionAttempts = 10000;
const socket = io.sails.connect();

socket.get(`/api/v1/socket/subscribe/1`); //virtual GET to the server via the socket object (also fine)

and the backend sails.js code looks like this:

//routes.js

module.exports.routes = {
  'GET /api/v1/socket/subscribe/:user_id': {action: 'socket/subscribe'}
}

//socket/subscribe

fn: async function (inputs) {

    const id = this.req.param('user_id');
    const user = await User.findOne({id});
    User.subscribe(this.req, [user.id]);

}

so far so good and everything works pretty well on the application side.
my problem starts when i'm trying to connect with a different client side code on a socket class that don't have virtual GET
I'm using k6, its a load testing tool with some API to connect to sockets.
I'm not sure if virtual GET is part of the web socket protocol or how everything really works around that with sails.js

//frontend code
io.sails.url = "http://localhost:1337/";

//k6 code
var url = 'ws://localhost:1337/socket.io/?__sails_io_sdk_version=1.2.1&__sails_io_sdk_platform=node&__sails_io_sdk_language=javascript&EIO=3&transport=websocket';
var params = { tags: { my_tag: 'hello' } };
var response = ws.connect(url, params, function (socket) {
   socket.on('open', function open() {
      console.log('connected');
      socket.on('message', function (message) {
         console.log(`Received message: ${message}`);
      });
    });
  });

I changed the url to use the ws protocol (was originally http) and I managed to connect the socket from k6, however was not able to receive any user event that published on the backend

//publish event from the backend to the client
User.publish([1], data);

I can't figure out how to subscribe to those user events outside the client side code inside my application.. (k6 or any other socket library)
thanks for all those that spend the extra time reading all this! :)
some related links:
https://k6.io/docs/javascript-api/k6-ws/socket/
https://sailsjs.com/documentation/reference/web-sockets/socket-client/io-socket-get
https://sailsjs.com/documentation/reference/web-sockets/socket-client/sails-socket

Hi @hartatovich, We recommend writing an action to subscribe to the socket that recreates a JSON websocket response object. We also recommend taking a look at how sockets emit in the sails.io.js source code
.


Change the method of checking changelog updates

PR description, plz. Apart from answering why, it might be worthwhile mentioning that we switch from ignore-changelog -> skip-changelog. Are there any other differences?


Support multi credential

Also solve #4

Codecov Report

Merging #20 into master will decrease coverage by 1.49%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##             master     #20     +/-   ##
==========================================
- Coverage       100%   98.5%   -1.5%
- Complexity      111     113      +2
==========================================
  Files            16      17      +1
  Lines           264     268      +4
==========================================
  Hits            264     264
- Misses            0       4      +4

Impacted Files
Coverage Δ
Complexity Δ

src/Support/HeaderAwareTrait.php
0% <0%> (ø)
2 <2> (?)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a7c6ff7...adc2922. Read the comment docs.


Allow package restore location to be set in a way that gets propagated

@conniey
Fixes #295

Lgtm


Extra Nodes in Three.js vs. Blender

Here's the GLTF in Blender:

Here's a log of the node keys in Three.js:

Here's a zip with the GLB:
mobble.zip
The issue is the nodes at the top in the Three.js output, beginning with 771... Wondering where they come from?

There are 32 nodes in the .glb you attached. They exactly match the objects in Blender, so there does not appear to be any issue with the Blender export.
$ glb-json mobble.glb | gron | rg nodes | rg name | cut -d ' ' -f 3 | sort
"IfcBeam/None.012";
"IfcBeam/None.016";
"IfcBeam/None.018";
"IfcBeam/None.024";
"IfcBeam/None.026";
"IfcBuildingElementPart/None.003";
"IfcBuildingElementPart/None.010";
"IfcBuildingElementPart/None.017";
"IfcColumn/None.007";
"IfcColumn/None.008";
"IfcCovering[CLADDING]/None";
"IfcCovering[CLADDING]/None.001";
"IfcCovering[CLADDING]/None.005";
"IfcCovering[CLADDING]/None.009";
"IfcCovering[CLADDING]/None.015";
"IfcCovering[CLADDING]/None.020";
"IfcCovering[CLADDING]/None.021";
"IfcCovering[CLADDING]/None.023";
"IfcCovering[CLADDING]/None.025";
"IfcCovering[FLOORING]/None.002";
"IfcFurnishingElement/None.004";
"IfcFurnishingElement/None.006";
"IfcFurnishingElement/None.013";
"IfcPlate/None";
"IfcPlate/None.001";
"IfcProject/None";
"IfcSite/None";
"IfcWall/None.011";
"IfcWall/None.014";
"IfcWall/None.019";
"IfcWindow/None.022";
"IfcWindow/None.027";

It appears Three uses a Group for glTF meshes with multiple primitives
https://github.com/mrdoob/three.js/blob/aca1c4f4503c887331d3045eb9984749185a840b/examples/jsm/loaders/GLTFLoader.js#L3572
And indeed, the meshes 77/1040 and 77/1326 are the only meshes with more than one primitive (this happens because the Blender mesh uses multiple materials).

That's really helpful @scurest thanks so much!


ASDFASFAS ANSWER (#301)

no

No [x 30* 120 = 36,000]
In other words stop spamming

@FantasyIsBae He got blocked from the project and NameYT

I feel bad for doing it :/
But it had to be done, they make up almost half of the issues combined and it keeps coming


Latest version of Isoseq3 and Pigeon segmentation fault

Operating system
Linux64
Package name
Isoseq3, Pigeon
Conda environment
For pigeon
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
ca-certificates           2022.9.24            ha878542_0    conda-forge
certifi                   2019.11.28       py27h8c360ce_1    conda-forge
ld_impl_linux-64          2.39                 hc81fddc_0    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 12.2.0              h65d4601_19    conda-forge
libgomp                   12.2.0              h65d4601_19    conda-forge
libsqlite                 3.40.0               h753d276_0    conda-forge
libstdcxx-ng              12.2.0              h46fd767_19    conda-forge
libzlib                   1.2.13               h166bdaf_4    conda-forge
ncurses                   6.3                  h27087fc_1    conda-forge
openssl                   3.0.7                h166bdaf_0    conda-forge
pbpigeon                  1.0.0                h9f5acd7_1    bioconda
pip                       20.1.1             pyh9f0ad1d_0    conda-forge
python                    2.7.18               h42bf7aa_3
python_abi                2.7                    1_cp27mu    conda-forge
readline                  8.1.2                h0f457ee_0    conda-forge
setuptools                44.0.0                   py27_0    conda-forge
sqlite                    3.40.0               h4ff8645_0    conda-forge
tk                        8.6.12               h27826a3_0    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               h166bdaf_4    conda-forge
Describe the bug
isoseq3 v3.8.2 and pigeon v1.0.0 both produce a "segmentation fault" message. The previous versions of each program runs normal
Error message
Segmentation fault
Expected behavior
The previous versions of each program runs normal

Please have a look if those work for you
https://github.com/PacificBiosciences/pbbioconda/issues/549#issuecomment-1344516742

Weirdly I am having a new issue, lima is having this issue but it seems like pigeon and isoseq3 are not (I think).
I created a new VM with Ubuntu 20.04 because that is listed as supported. I can install from bioconda and run pigeon --version and isoseq3 --version (which I couldn't do before, in #549) but lima --isoseq segfaults as well as lima --log-level TRACE.
At this point my suspicion is that these tools are relying on system libraries that are not being properly checked/versioned for compatibility? lima is surprising because it hasn't received an update since I started using it, so it hasn't changed but something else must have.

I think I'm tracking down my issue as something else...maybe bad data or bad output that is causing lima to fail (unfortunately without a useful error message). When I know more I'll open a separate issue.

@armintoepfer thank you. This work for me. However, I notice a minor difference in this new version of Isoseq3, particularly for isoseq3 collapse. I have now a Warning message '>|> 20230106 03:24:09.947 -|- WARN -|- Run -|- 0x7f88b4d36d40|| -|- Transcripts do not contain quality values, will not output Id.fastq'
I should mentioned that the warning did not appear before in previous version of Isoseq3 using the same data.

@armintoepfer also I just notice that Pigen classify split scaffolds into _classification and _junction but the program seems stuck in the scaffold 45 for hours. My genome ref have 49 scaffolds.

Let me ping @derekwbarnett @jmattick for support

Hi @gushiro This sounds like it might be a multithreading issue. Can you re-rerun and see if it hangs at the same point in the data? Let me know what you see. Also, you should know the answer long before 2 days of runtime.

In that case, is it possible to provide a minimal working dataset to reproduce the issue? https://github.com/PacificBiosciences/pbbioconda#file-sharing

@armintoepfer yes, where can I send them to you?

Please click on the link, everything is explained how to upload data to us

@gushiro We've received the data and will triage. Once we have more information, we will update here.

I am getting the same warning in isoseq3 collapse. Interestingly, after pigeon classify not a single transcript is classified as 'coding'. Any ideas why that would happen? Is it only column 30 annotations are incorrect or all of them? There are many among them annotated as 'full-splice_match' and 'reference_match' and 'canonical' but none of them as 'coding'.

There are many among them annotated as 'full-splice_match' and 'reference_match' and 'canonical' but none of them as 'coding'.

'coding' is not one of the options

I'm sorry, I made it unclear. I mean the column 30 "coding". Every isoform is annotated as "non_coding". Even though the column 6 (which you linked the options for) has many "full-splice_match" isoforms. I am confused how is it possible for every transcript to be "non_coding"?

@armintoepfer thanks. To add a little:
I think for non-model species with long UTRs, maybe will be good for pigeon to count genes if the read fall XXXX bp downstream the last exon. I can see in my data a lot of short cDNA and cDNA in utrs that would be classify as intergenic (and therefore not producing a count?). I can see the importance of classifying transcript before (removing antisense reads for example), but I wonder what would happen during the gene count matrix generation if the transcript does fall only in the UTR region.

@gushiro I have identified the problem. In your genome annotations file, the following record is out-of-order:
chr46   rRNA    gene    15556622        15556733        .       +       .       gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316";
chr46   rRNA    exon    15556622        15556733        .       +       .       gene_id "SSU_316"; transcript_id "LSU_316.1";
chr46   rRNA    transcript      15556622        15556733        .       +       .       gene_id "SSU_316"; transcript_id "LSU_316.1"; exon_number "1";

The exon entry appears before the transcript. pigeon is expecting exon records to be "children" of the transcript. The rest of the file follows this convention. It's just this one record that is different.
Re-ordering to this, allows pigeon to run to completion:
chr46   rRNA    gene    15556622        15556733        .       +       .       gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316"; gene_id "LSU_316";
chr46   rRNA    transcript      15556622        15556733        .       +       .       gene_id "SSU_316"; transcript_id "LSU_316.1"; exon_number "1";
chr46   rRNA    exon    15556622        15556733        .       +       .       gene_id "SSU_316"; transcript_id "LSU_316.1";

This situation triggered an internal error state that was not properly handled and suspended processing. I will include a fix in the next release here.

@derekwbarnett thanks, it worked perfect now.
I still have many "intergenic" transcript. When I check my data, I can see that each gene have many of these small intergenic transcript downstream the gene, spanning between 1000 - 3000 bp. Would it be possible for pigeon make-seurat or any step before to count these short transcript as part of the gene if the gene is "1000 bp" upstream, for example?

I have uploaded a new version. If that still segfaults, but not the github binary itself, then conda is corrupting the binary.

Just tested and it looks like they work now, thanks for fixing the issue


Fix typo error, remove whitespace.

Remove whitespace, I think that this is typo error

Thanks for the fix @liboshi


[WIP] Bump PersistentVolumeClaim retention to beta

KEP #1847
K8s feature gate PR #111300.

Hey @mattcary,
Is it intended to update the submodule themes/docsy as well?

Oops, no. Some submodule thing. I thought I removed it already.

Remember to update https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/ as well.

thank you! done

/remove-lifecycle rotten

Hi @mattcary .
Is there any forward movement on these changes? I plan to close this pull request.

@mattcary
When you have time to look at the changes again, feel free to reopen this pull request.
/close


Added the possibility to disable the “Back” button and check GOLD values on chosen elements of a HIT, plus other bug fixes

changed “tasktype” to “task_type”
if new setting “allow_back” is set to false for a element of the HIT (in hits.json), then for that element the “Back” button will not be shown
if new setting “check_gold_with_msg” is set with a string for a element of the HIT (in hits.json), then for that element when the “Next” button is pressed, the check in goldChecker.ts will be performed and if positive the next element of the HIT will be presented, otherwise a snackbar with the given string value of “check_gold_with_msg” will be shown
2 bugs fixed:
1. Decimal numbers can now be typed correctly for Magnitude Estimation scale
2. “Next” button is not shown “active” anymore after the first element of a HIT, when the Magnitude Estimation textbox value is emptied

Changes confirmed.

Changes confirmed.


what's the scope of the identifiers in the germline schema objects?

This is important in relation to the ADC, both for the API which will allow queries, but also for repositories that store multiple studies that use multiple germline sets.

[x] germline_set_id. I believe this should be a globally unique identifier. It's important that this identifier being resolvable, i.e. there is a clear procedure to retrieve the germline set data from its id. Services that manage and generate identifiers should probably use the decentralized identifier standard. Individuals that wish to publish their own germline sets should likely use such a service so they can be provided with a resolvable, persistent identifier.
[x] allele_description_id. Is this only for internally linking GermlineSet and AlleleDescription? If so, are ADC repositories allowed to assign whatever value they wish to insure uniqueness? Also this implies that GermlineSet and AlleleDescription data must always be kept "together" otherwise the linkage can be lost.
[x] sequence_id. Is this only for internally linking in AlleleDescription?
[x] sequence_delineation_id. Same as sequence_id?
[x] receptor_genotype_set_id and receptor_genotype_id?
[x] mhc_genotype_set_id and mhc_genotype_id?

Additional questions regarding the ADC API:

[x] What query end points should we have? A germline end point seems obvious. An allele end point?
[x] If germline_set_id is a globally unique identifier then the API should be straight forward.
[x] For an allele end point, what is the identifier that will return the unique record?

sequence_id is used as the primary key across objects for any observed sequence. Some of these _id fields seem redundant with sequence_id functionally. Eg, RearrangedSequence. repository_id and UnrearrangedSequence. assembly_id may be more appropriate as sequence_id.

RearrangedSequence.repository_id would be, for example, the accession id in Genbank. We don't have control over its value
The Unrearranged sequence fields such as assembly_id match this - in that they reflect the common way the sequence is referred to in a database such as ensenbl
keep separate id and ref fields for germline and allele_description - keep ids in as internal linker, ref is external curie type. Add a ref to AlleleDescription`

As agreed in the standards call on the 21st:

the ids are unique identifiers
refs are CURIE-style references
both GermlineSet and AlleleDescrioption should have refs, so that they can be queried via an API
having reviewed the schema, I propose to retain all defined unique identifiers, as they will be helpful in composing and parsing the files (for example to identify repeated use of the same values)

Seems good, so this means:

RearrangedSequence:sequence_id - clarify wording  and x-airr attributes.
RearrangedSequence:repository_id - rename to sequence_ref.
UnrearrangedSequence: sequence_id - clarify wording and x-airr attributes.
UnrearrangedSequence: sequence_id - rename to sequence_ref.
And so on...

Correct?
Note, this also defines what _ref would mean in #347 and excludes _ref from the suffix options for the ADC solution #589. Which I don't personally have any problem with.

Because this will initially be an experimental release we might be able to push back sorting out the proper x-airr tags. But, to answer your question, if you look at Rearrangement:sequence_id you will see:
sequence_id:
  x-airr:
    adc-query-support: true
    identifier: true

Denoting whether the field is required and what its purpose is in the AIRR Data Model and ADC contexts. We'll need to sort that our for the identifier fields at some point.

Closing this as all issues apart from long-term use of x-airr tags were addressed. Will raise a new issue for the x-airr tags.


[Event Request] codeunit 99000834 "Purch. Line-Reserve" - TransferPurchLineToItemJnlLineOnBeforeInitRecordSet

Please add new event in Codeunit 99000834 in function TransferPurchLineToItemJnlLine
[IntegrationEvent(false, false)]
local procedure TransferPurchLineToItemJnlLineOnBeforeInitRecordSet(var OldReservEntry: Record "Reservation Entry")
begin
end;

if ItemJnlLine."Invoiced Quantity" <> 0 then
	CreateReservEntry.SetUseQtyToInvoice(true);

TransferPurchLineToItemJnlLineOnBeforeInitRecordSet(OldReservEntry);
if ReservEngineMgt.InitRecordSet(OldReservEntry) then begin
	repeat
		OldReservEntry.TestItemFields(PurchLine."No.", PurchLine."Variant Code", PurchLine."Location Code");

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 40744.


Update license header for Jakarta JMS changes

The license check makes sure that the license header ending date year is the last year the file was updated in git. Since those were merged in 2023, the license check fails. This updates the headers so that the license check passes by running ./mvnw com.mycila:license-maven-plugin:format.
See #1353

Thanks @shakuzen


Reconstruction workflow for longitudinal data

Hi all!
I have been trying to run the mrtrix_singleshell_ss3t_ACT-hsvs reconstruction workflow on longitudinal dwi and T1w data that have gone through qsiprep proprocessing and freesurfer`s recon-all, respectively. I have tried to set up the freesurfer derivatives folder in multiple ways (including following these recommendations: https://surfer.nmr.mgh.harvard.edu/fswiki/BIDS). However, all of them resulted in the crash attached. The only way this reconstruction workflow worked was when I used only one session per subject (i.e., it only worked for cross-sectional data).
Many thanks in advance for the help!!

I have tried to set up the freesurfer directory using regular freesurfer naming in two ways, but neither worked. From my understanding (and please correct me if I am wrong), qsiprep needs the recon-all output from the T1W template estimated across sessions for each subject. So, I have first tried to set up the fresurfer directory with this output using only the name of the subject (as below), but it only worked when subjects had a single session.
├── freesurfer
│   └── sub-0001
│       ├── label
│       ├── mri
│       ├── scripts
│       ├── stats
│       ├── surf
│       ├── tmp
│       ├── touch
│       └── trash

Alternatively (in case my understanding is wrong), I have tried to set up the freesurfer directory with the recon-all ouput of the T1w of each session using the name of the subject + session (as below - suggested in https://surfer.nmr.mgh.harvard.edu/fswiki/BIDS), but it also did not work.
├── freesurfer
│   ├── sub-0001_ses-post2
│   │   ├── label
│   │   ├── mri
│   │   ├── scripts
│   │   ├── stats
│   │   ├── surf
│   │   ├── tmp
│   │   ├── touch
│   │   └── trash
│   └── sub-0001_ses-pre
│       ├── label
│       ├── mri
│       ├── scripts
│       ├── stats
│       ├── surf
│       ├── tmp
│       ├── touch
│       └── trash

How should the freesurfer directory be structured?
Many thanks again!

Hi I got the same error for a dataset in which each subject had two sessions. I ran fmriprep v22.0.2 and QSIPREP v0.16.0RC3 successively on this data set with the following commands:

fMRIPrep command: /opt/conda/bin/fmriprep --fs-license-file /work/freesurfer/license.txt /work/WordLearning /work/WordLearning/derivatives/fmriprep participant --participant-label pilot1 -w /work/temp_data_WordLearning --mem-mb 50000 --omp-nthreads 10 --nthreads 12 --fd-spike-threshold 0.5 --dvars-spike-threshold 2.0 --bold2t1w-dof 9 --cifti-output 91k --output-spaces MNI152NLin2009cAsym MNI152NLin6Asym T1w --ignore slicetiming sbref --fs-subjects-dir /work/WordLearning/derivatives/fmriprep/sourcedata/freesurfer --debug compcor --bids-filter-file /work/WordLearning/code/fmriprep/bids-filter.json

qsiprep command: /usr/local/miniconda/bin/qsiprep /work/WordLearning /work/WordLearning/derivatives participant --participant_label pilot1 -w /work/temp_data_WordLearning --output-resolution 1.2 --fs-license-file /work/freesurfer/license.txt --eddy-config /work/WordLearning/code/qsiprep/eddy_params.json --b0-threshold 50 --unringing-method mrdegibbs --denoise-method dwidenoise --output-space T1w template --template MNI152NLin2009cAsym --distortion-group-merge average

freesurfer tree:
freesurfer
├── fsaverage
│   ├── label
│   ├── mri
│   ├── mri.2mm
│   ├── scripts
│   ├── surf
│   └── xhemi
└── sub-pilot1
    ├── label
    ├── mri
    ├── scripts
    ├── stats
    ├── surf
    ├── tmp
    ├── touch
    └── trash

crash file:
crash-20221028-135754-jsein-get_atlases-ed4033b2-a680-4250-af04-00da1f9675a1.txt

In my case qsirecon works for ses-01 but keeps failing for ses-02, stating:
Exception: No MNI to T1w transform found in anatomical directory
My question is: in which anatomical directory is qsirecon looking for, since he finds this file it for ses-01

@csleo95 : did you try with the --longitudinal flag?

@julfou81, I used the --longitudinal flag when running the preprocessing workflow, but not when running the reconstruction workflow. Did you try it for the latter? Did it work?

@julfou81, I used the --longitudinal flag when running the preprocessing workflow, but not when running the reconstruction workflow. Did you try it for the latter? Did it work?

No, I am testing it now on the preprocessing workflow, but seeing your response and looking at the documentation, I doubt I would get different results than yours... The 'longitudinal options seems to only be used to create a longitudinal template with mri_robust_template function. It is a similar behavior than FMRIPREP and does not force freesurfer to be run in "longitudinal mode".

@julfou81, I used the --longitudinal flag when running the preprocessing workflow, but not when running the reconstruction workflow. Did you try it for the latter? Did it work?

No, I am testing it now on the preprocessing workflow, but seeing your response and looking at the documentation, I doubt I would get different results than yours... The --longitudinal options seems to only be used to create a longitudinal template with mri_robust_template function. It is a similar behavior than FMRIPREP and does not force freesurfer to be run in "longitudinal mode".

Yes.. Please let me know if you get a different result. I have been also trying other combinations of flags and directory structures to run the reconstruction workflow. If I get something different, I will let you know!

Also having an issue running qsirecon on longitudinal data - everything words for ses-001, but the common anatomical files for ses-001 (the transformations and whatnot) are not recognized for ses-002, causing the whole thing to crash..

This sounds like a problem. Are all you running the hsvs workflow? And you have multi session data?
Our group hasn't run into a problem with this yet, but that's probably due to how we structure the running of longitudinal data. We usually have scans separated by a year or more, so mri_robust_template doesn't work. Instead we treat each session as its own subject. You can do this by making a different subject ID in BIDS for each session or you can process the multi-session data once per session using a bids filter file (this is what we do) eg:
filterfile=${PWD}/${sesid}_filter.json
echo "{" > ${filterfile}
echo "'fmap': {'datatype': 'fmap'}," >> ${filterfile}
echo "'dwi': {'datatype': 'dwi', 'session': '$sesid', 'suffix': 'dwi'}," >> ${filterfile}
echo "'sbref': {'datatype': 'func', 'session': '$sesid', 'suffix': 'sbref'}," >> ${filterfile}
echo "'flair': {'datatype': 'anat', 'session': '$sesid', 'suffix': 'FLAIR'}," >> ${filterfile}
echo "'t2w': {'datatype': 'anat', 'session': '$sesid', 'suffix': 'T2w'}," >> ${filterfile}
echo "'t1w': {'datatype': 'anat', 'session': '$sesid', 'suffix': 'T1w'}," >> ${filterfile}
echo "'roi': {'datatype': 'anat', 'session': '$sesid', 'suffix': 'roi'}" >> ${filterfile}
echo "}" >> ${filterfile}


updating the tf_lambda module to remove extra resources

to: @airbnb/streamalert-maintainers
resolves: #1119
Background
The bug that prevented us from using a singular aws_lambda_function resource was fixed a long time ago.
Changes

Updating the tf_lambda module to remove extra resources that made the whole thing very complicated.

Coverage remained the same at 95.432% when pulling 46d60e1893f56dca4636bc5fc626f120d2dd8d93 on ryandeivert-help-lambda-module into fc02df5dbb7da91fc923c301daae240f98c91f03 on release-3-2-0.


OPCODE array out of bound

Lets see this macro
#define GET_OPCODE(i)            ((int)(((mrb_code)(i)) & 0x7f))

#define JUMP i=BYTECODE_DECODER(*pc); CODE_FETCH_HOOK(mrb, irep, pc, regs); goto *optable[GET_OPCODE(i)]

GET_OPCODE macro fetch opcode from mruby file and make sure them are less than 0x7f but not verify length of optable array if this opcode less than 0x7f and larger than optable length this will lead to out of bound vulnerability
Here poc, test on Ubuntu Linux 16.04 (x86_64)
./mruby -b crash-99007cea00f875d7fd7ccf41ac18013bef8d6e62
Crash result:
[----------------------------------registers-----------------------------------]
RAX: 0x0
RBX: 0x0
RCX: 0x6b5260 --> 0x10d
RDX: 0x2
RSI: 0x0
RDI: 0x7fffffffe6f0 --> 0x0
RBP: 0x7fffffffe7e0 --> 0x7fffffffe840 --> 0x7fffffffe8a0 --> 0x7fffffffe8f0 --> 0x7fffffffe9b0 --> 0x46ead0 (<__libc_csu_init>:	push   r15)
RSP: 0x7fffffffe0c0 --> 0x200000000
RIP: 0x0
R8 : 0x0
R9 : 0x200000000000200
R10: 0x711030 --> 0xaaa8
R11: 0x7ffff7899390 --> 0xfffda380fffda0af
R12: 0x401990 (<_start>:	xor    ebp,ebp)
R13: 0x7fffffffea90 --> 0x3
R14: 0x0
R15: 0x0
EFLAGS: 0x10206 (carry PARITY adjust zero sign trap INTERRUPT direction overflow)
[-------------------------------------code-------------------------------------]
Invalid $PC address: 0x0
[------------------------------------stack-------------------------------------]
0000| 0x7fffffffe0c0 --> 0x200000000
0008| 0x7fffffffe0c8 --> 0x711048 --> 0x414d48000000736a ('js')
0016| 0x7fffffffe0d0 --> 0x6b5260 --> 0x10d
0024| 0x7fffffffe0d8 --> 0x6b3010 --> 0x7fffffffe6f0 --> 0x0
0032| 0x7fffffffe0e0 --> 0x100000002
0040| 0x7fffffffe0e8 --> 0x8
0048| 0x7fffffffe0f0 --> 0x7fffffffe160 --> 0x2000000000 ('')
0056| 0x7fffffffe0f8 --> 0x736a00000004
[------------------------------------------------------------------------------]
Legend: code, data, rodata, value
Stopped reason: SIGSEGV
0x0000000000000000 in ?? ()

poc is attached in this issues

Currently, problems caused by modified compiled binary is out of our scope.
Precise checks for the unrealistic problem may slow down VM.
Let me consider we would fix this.

I think mruby itself should not validate the compiled mruby, for performance reasons. However, a separate validation tool could be useful. I guess this could even be implemented in mruby itself?


kodoja_build issue

Tried building a kodoja database but ran into this error-
Logging in as anonymous ...
No such file ‘nucl_est.accession2taxid.gz’.
Kodoja failed unexpectedly with the following:
Traceback (most recent call last):
File "/home/ubuntu/anaconda3/bin/kodoja_build.py", line 168, in
main()
File "/home/ubuntu/anaconda3/bin/kodoja_build.py", line 137, in main
krakenDB_build(args.output_dir, kraken_db_dir, args.threads, args.kraken_kmer,
File "/home/ubuntu/anaconda3/bin/database_modules.py", line 155, in krakenDB_build
subprocess.check_call("kraken-build --download-taxonomy --threads " +
File "/home/ubuntu/anaconda3/lib/python3.9/subprocess.py", line 373, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'kraken-build --download-taxonomy --threads 1 --db ./krakenDB/' returned non-zero exit status 8.

That looks like an issue within kraken-build, can you check what version of kraken you have installed?


FIXED Users on Figures #3230

Added Fixes to Figure02 #3230

@nenonix @JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@CarolynRowe PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


Consider renaming project to something else

ejs abbr is already taken and well known in JS community.
https://github.com/mde/ejs

Some suggestions from me:

err.js
log.js
jsdebug (there is npm package, but it doesn't seem active)

Not the best names ever, but its some suggestion :) If anyone has ideas let them come!

Thanks for you suggestions, I might change once I am done adding some extra functionality and than I can decide one for the lib...

I would love to rename this project to something like loggr.js, but I am not sure how this will impact the projects traffic, where lot of users have already shared the links to others. Still, will see once I figure out.

I won't ever look at the library or recommend it to anyone in the js community until it doesn't steal a name from ejs. It's the default of most Node projects as a templating language.

Project is now renamed to logerr.


bug: kubelet server certificates does not include keepalived VIP

Summary
When using HA setup with Keeplived, the server certificates provisioned for Kubelet does not include the Keepalived VIP. This causes TLS verification issues when performing various operations like viewing logs or port forwarding on the current leader.
Issue Type
Bug Report
Ansible Version
ansible [core 2.14.6]
  config file = /Users/moray/.ansible.cfg
  configured module search path = ['/Users/moray/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /opt/homebrew/Cellar/ansible/7.6.0/libexec/lib/python3.11/site-packages/ansible
  ansible collection location = /Users/moray/.ansible/collections:/usr/share/ansible/collections
  executable location = /opt/homebrew/bin/ansible
  python version = 3.11.4 (main, Jul 25 2023, 17:36:13) [Clang 14.0.3 (clang-14<IP_ADDRESS>.1)] (/opt/homebrew/Cellar/ansible/7.6.0/libexec/bin/python3.11)
  jinja version = 3.1.2
  libyaml = True

Steps to Reproduce

Install RKE2 (sample playbook below)

- hosts: rke
  become: true
  roles:
    - role: lablabs.rke2
  vars:
    rke2_ha_mode: true
    rke2_ha_mode_keepalived: true
    rke2_version: v1.26.7+rke2r1
    rke2_install_bash_url: https://get.rke2.io
    rke2_api_ip: <IP_ADDRESS>
    rke2_disable:
      - rke2-ingress-nginx
    rke2_cni: canal
    rke2_cluster_group_name: rke
    rke2_servers_group_name: rke_master
    # Ansible group including worker nodes
    rke2_agents_group_name: rke_worker
    rke2_server_options:
      - "disable-cloud-controller: true"

Try viewing logs of any pod on the current Keepalived leader

Expected Results
The TLS certificate generated for Kubelet includes the Keepalived VIP (<IP_ADDRESS> in the example above), issuing kubectl logs and kubectl port-forward command on pods on the current leader works without problem.
Actual Results
The TLS certificate for Kubelet does not include the Keepalived VIP (<IP_ADDRESS> in the example above). Issuing kubectl logs or kubectl port-forward commands on pods on the current leader results in the following error:
Error from server: Get "https://<IP_ADDRESS>:10250/containerLogs/kube-system/kube-proxy-master-0/kube-proxy": tls: failed to verify certificate: x509: certificate is valid for <IP_ADDRESS>, <IP_ADDRESS>, not <IP_ADDRESS>

Additional information:

The API server serving certificate does include the VIP.
The leader's internal ip address always shows up as the VIP.
I have tried setting RKE2 options node-ip and advertise-address to the non-virtual ip but to no avail.

Hi moray95,
Can you set this variable and try again?
rke2_additional_sans:

"<IP_ADDRESS>"

I couldn't reproduce this problem. Especially I tried with your configuration.

Out of curiosity, does Kubernetes show the VIP as the node internal address?

Other nodes are using VIP as server address

This image is from master-01 server

I turned off master-01 and VIP moved to master-02

In summary, We use VIP for load balancing between master nodes. if i understood the your question correctly. 'kubectl get node -o wide' is output doesn't show VIP as the node internal address.
I'm actually going to fork this project and do this balancing with HaProxy.

Thanks for the info.
I guess here is the problem:

'kubectl get node -o wide' is output doesn't show VIP as the node internal address.

On my setup, I see the VIP as the node internal address. When VIP isn't used, certificates shouldn't cause a problem as the non-virtual ip are is properly added to the certificate.

Can you share your hosts(inventory) file with me?

Sure, here it is:
rke_master:
  vars:
    rke2_type: server
  hosts:
    master-0:
      ansible_host: <IP_ADDRESS>
    master-1:
      ansible_host: <IP_ADDRESS>
    master-2:
      ansible_host: <IP_ADDRESS>

rke_worker:
  vars:
    rke2_type: agent
  hosts:
    worker-0:
      ansible_host: <IP_ADDRESS>
    worker-1:
      ansible_host: <IP_ADDRESS>
    worker-2:
      ansible_host: <IP_ADDRESS>
    worker-3:
      ansible_host: <IP_ADDRESS>
    worker-4:
      ansible_host: <IP_ADDRESS>

rke:
  children:
    rke_master:
    rke_worker:

If possible can you do a clean installation?
Before installation you should run these commands on all servers;
/usr/local/bin/rke2-uninstall.sh
rm -rf /etc/systemd/system/rke2-server.service
My result:

my example config:
- hosts: rke
  become: true
  remote_user: ubuntu
  roles:
    - role: lablabs.rke2
  vars:
    rke2_ha_mode: true
    rke2_ha_mode_keepalived: true
    rke2_version: v1.27.4+rke2r1
    rke2_install_bash_url: https://get.rke2.io
    rke2_api_ip: <IP_ADDRESS>
    rke2_cni: canal
    rke2_cluster_group_name: rke
    rke2_servers_group_name: rke_master
    # Ansible group including worker nodes
    rke2_agents_group_name: rke_worker
    rke2_server_options:
      - "disable-cloud-controller: true"

So, I performed a clean install on a brand new VM and here is my finding:
Using <IP_ADDRESS> as VIP and <IP_ADDRESS> as node ip, the same issue still appears. Using <IP_ADDRESS> as node ip and <IP_ADDRESS> as VIP, the issue disappears.
On the initial setup, I changed the VIP from <IP_ADDRESS> to <IP_ADDRESS> and the issue got fixed.
My guess would be that RKE uses the lowest IP when multiple IPs are available, but your example seems to contradict this. Maybe it's an OS difference? I am using Ubuntu Server 22.04 for the record.

I used Ubuntu 20.04. I will try next week with Ubuntu 22.04 and I will write result here.


Make explicit how rotation can drive 2 columns -> 3 columns

The example project does not behave shown in the GIF in this respect!

The example works with size classes, should be good to go on iPhone 6 Plus and iPads. Either that or you've got the old classic portrait orientation lock on mistake?! Let me know.

@adamwaite Ah. I've not read up on size classes so that's probably why I'm blind to it. I can check what I ran this on...


Inconsistent treatment with long negative number

Hello everyone,
I found  a bug that could be one case of "inconsistent treatment/check of pre-conditions" with long negative number.
Chakra version: <IP_ADDRESS>
OS: Ubuntu 16.04 x64
Steps to reproduce:

Run this code

var buffer = new ArrayBuffer(64);
var view = new DataView(buffer);
view.setInt8(0,0x80);
print(view.getInt8(-1770523502845470856862803727694) === -0x80);

Expected output:
An exception with an invalid or out-of-range index
Actual results:
true
V8, SpiderMonkey and JavascriptCore shows expected results. Chakra always returns the value -128 for a long negative number on getInt8 function, note that converting -0x80 to decimal value we obtain -128 too.

All the get and set methods in DataView.cpp seem to use ToUInt32 on the offset argument they're provided, per spec looks like they should use toIndex https://tc39.github.io/ecma262/#sec-toindex which would throw range errors for any negative.
I'll make a PR for this.


style all the sign-in pages

I changed some Go
I changed the sign-in colors from pink to green to be consistent with the signed-in indicator on the top-right corner
Changed some routes a bit

Page
Desktop
Mobile

/login

with SSB

Fallback

The only other thing I'd remove is the block where it tries to figure out if input is feed or an alias in web/handlers/auth/withssb.go. I would have suggested a change but somewhy it's not possible to comment on regions outside of what is patched...

pulled into #90 :smile_cat:


Docs update for Windows users

Additionally, Windows users will need to install pypiwin32.

Seems that it is not needed to add pypiwin32 manually as it is installed automatically
Collecting pypiwin32; sys_platform == "win32" (from asciimatics)
  Downloading pypiwin32-219-cp35-none-win32.whl (7.9MB)

Windows 7

Thanks for getting in touch.  Those instructions are explicitly for people who don't use pip.  I'll clarify...


Update gdpr-view-settings.md

The documentation is not clear that as long as a user has access to a report suite under Admin Console they'll be able to see Data Governance Privacy Labeling section under Admin UI in Analytics.

Hi @alibrahi  - I checked with Engineering and here is their response: "A user has to be an admin to be able to access the Data Governance Privacy Labeling UI. Having access to a report suite is not sufficient.

OK, @alibrahi, we are looking into this further...

@alibrahi - Engineering  took a look at the code for the menu which is how users should be accessing the UI.  They do indeed have to be an admin in order for that menu item to appear.  There is not any explicit code in our UI that would block a user from using it if they had the URL for the UI though.
Does that make sense?

@MicaPete so in my test I didn't have a direct URL. I didn't make myself an admin and just gave myself a single report suite as access and the menu appeared.
Also that is the only thing that appeared since I didn't give myself access to the other menu items.
So my ask is that we update the documentation reflecting that users do not have to be an Analytics Admin, which is what is communicated in it now.

@alibrahi - we will do some more testing. What you have encountered might be a bug, because Engineering is still fairly certain that you have to be an admin for the menu item to appear. Thanks for your patience.

@MicaPete thanks, that's what it seems like. In any case I just wanted to have the documentation reflect the current status.

Updated the docs


[launcher] - Typing "Code" on master doesn't result in Visual Studio Code, "Cod" does

typed "Code" got nothing back.
Type "Cod" it returned
Note: I unloaded indexer plugin

Algorithm :

So there are a few things that we can do, modify the factor and keep it to 7 for strings of length upto 5/6 or we could reduce the cut-off score to around 40.


Initial implementation for 'dlv dap'

PTAL. Please tell me if I went overboard with all the new comments :)

This can be closed as it went in as #1858 into the delve repo.


Windows support

This looks like a fantastic tool, but I get this when trying to run it on windows:
Failed to call 'convert icon.png -resize 167x167 ios\mobile\Images.xcassets\AppIcon.appiconset\ipad-83.5x83.5-2x.png. Error is 'Command failed: convert icon.png -resize 167x167 ios\mobile\Images.xcassets\AppIcon.appiconset\ipad-83.5x83.5-2x.png
Invalid Parameter - -resize

I installed ImageMagick, so I think maybe convert is conflicting with a Windows command?

Hi @jtl3d, looks like an issue indeed. I will see what I can do to diagnose, but I'll need to set up a windows VM so it'll be few days. Quick question - have you got imagemagic installed in your PATH, i.e. if you are just on a plain command prompt and type:
convert -version

Hi @dwmkerr, same error here.
As @jtl3d suggested, it does look like ImageMagick's "convert" conflicts with a Windows command: on my machine, after installing ImageMagick, starting a new console window & verifying that ImageMagick's binary folder is in my PATH, where convert returns C:\Windows\System32\convert.exe.
Complicating factor: after installing ImageMagick's ImageMagick-7.0.6-9-Q16-x64-dll.exe Windows release, there's no app named 'convert' under ImageMagick's install folder anyway, and the installed local help gives example commandline syntax that's always prefixed with "magick", e.g. magick convert rose.jpg rose.png. Seems like the commandline's just differs on Windows.

Hi @dwmkerr, quick follow-up: I modified my local npm\node_modules\app-icon\src\imagemagick\call-imagemagick.js and changed line 10 from
    childProcess.exec(command, (err, stdout, stderr) => {
to
    childProcess.exec('magick ' + command, (err, stdout, stderr) => {
After that, the error which @jtl3d originally reported, and which I also encountered, didn't occur - icons were generated just fine.

Hi @acha11 that's awesome, thanks for sharing! I'll check the same changes work fine on MacOS X and Linux and then will update the codebase. Cheers!

No problem, thanks for a great library! Let me know if I can assist by testing on Windows.

Just installed IM7 on windows and app-icon but it seems it still not working throw err that Error: ImageMagick must be installed. Try:     brew install imagemagick and when i run convert from the command line I get Must specify a file system but when i run magick it actually works fine then.
To tweak it a little bit I checked into @acha11  comment childProcess.exec('magick ' + command, (err, stdout, stderr) => { and went a little bit further to replace the commandExists('convert', (err, imageMagickInstalled) => { to commandExists('magick', (err, imageMagickInstalled) => { inside npm\node_modules\app-icon\src\imagemagick\is-imagemagick-installed.js but still not working

@Quadriphobs1 can you try with this branch?
feature/windows-build

I think that this actually fixes the windows issues, I just need to get the CI build running properly. If this build fixes your issue I'll release it as a patch and fix the CI issues for it separately


Label indexing issue

First reported on the upstream branch: https://github.com/uhh-lt/targer/issues/56
@xingbow reports that when labeling this text
We should abandon Youtube. Toolassisted speedruns uploaded to video sites like Nico Nico Douga, YouTube or
    TASVideos may be described as a new world record by TASsan , who is said to have the superhuman memory and reflexes

... the indexing in the response seems to be wrong for the last sentence, i.e., the end key is missing.

Indeed the following cURL request reproduces the issue also on the Webis deployment of TARGER:
curl 'https://demo.webis.de/targer/label_text' \
-X POST \
-H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
--data-raw 'text=We+should+abandon+Youtube.+Toolassisted+speedruns+uploaded+to+video+sites+like+Nico+Nico+Douga%2C+YouTube+or+%0A++++TASVideos+may+be+described+as+a+new+world+record+by+TASsan+%2C+who+is+said+to+have+the+superhuman+memory+and+reflexes&classifier=IBM' | jq

Response:
[
  {
    "type": "CLAIM",
    "start": 3,
    "end": 25
  },
  {
    "type": "PREMISE",
    "start": 27,
    "end": 94
  },
  {
    "type": "PREMISE",
    "start": 96,
    "end": 170
  },
  {
    "type": "PREMISE",
    "start": 173
  },
  {
    "start": 18,
    "end": 25,
    "type": "MISC"
  },
  {
    "start": 79,
    "end": 94,
    "type": "PER"
  },
  {
    "start": 96,
    "end": 103,
    "type": "MISC"
  },
  {
    "start": 112,
    "end": 121,
    "type": "MISC"
  },
  {
    "start": 164,
    "end": 170,
    "type": "MISC"
  }
]


Honeywell Climate graph conflates operating and operation mode

Home Assistant release with the issue:
0.96.0b4
Last working Home Assistant release (if known):
0.95.4
Operating environment (Hass.io/Docker/Windows/etc.):
Hass.io, HassOS, RPI3B+
Component/platform:
https://www.home-assistant.io/components/honeywell
Description of problem:
The honeywell thermostat (US) graph now records the "operation mode" instead of the "operating mode" in the shaded area of the pop-up graph in the front-end. For example, now the graph will be shaded the entire time the thermostat is set to "cool" instead of when it is actually cooling. You can see below where I upgraded to 0.960b4 from 0.95.4 just before 12:00AM. It remains solid green since the upgrade.

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
- platform: honeywell
  username: redacted
  password: redacted
  scan_interval: 600
  region: us

Traceback (if applicable):

Additional information:
I suspect this is related to the release of Climate 1.0

The component includes hvac_action, so lets wait & see what happens with #3380:
@property
def hvac_action(self) -> Optional[str]:
    """Return the current running hvac operation if supported."""
     return HW_MODE_TO_HA_HVAC_ACTION[self._device.equipment_output_status]


Refactor HTTP Requests

This enables config[:base_api_uri] to overwrite default settings so that Sanbox environment is usable.

👍


Number 1 priority should be this

Describe the bug
Technoblade's Pig rank doesn't show the correct colour of +'s
Its meant to be light blue
Profile/Location
https://sky.shiiyu.moe/stats/Technoblade/Blueberry
Expected behavior
Correct colour +'s
Screenshots

Desktop (please complete the following information):

OS: Windows
Browser: Chrome
Version: 10

This was probably caused by #372

fixed by #394


configuration inheritence doesn't work for collection values

To reproduce
Settings class:
public class FooSettings
{
    public string Bar { get; set; }
    public ICollection<int> Foos { get; set; }
}

the appsettings.json:
{
  "FooSettings": {
    "Bar": "value from appsettings.json",
    "Foos": [ 1, 2, 3 ]
  }
}

the appsettings.Development.json:
{
  "FooSettings": {
    "Bar": "value from appsettings.Development.json",
    "Foos": [ 4 ]
  }
}

the values resolved with the following code:
public class ValuesController : Controller
{
    private readonly FooSettings _fooSettings;
    public ValuesController(IOptionsMonitor<FooSettings> fooSettings)
    {
        _fooSettings = fooSettings.CurrentValue;
    }
}

are:
Bar -> "value from appsettings.Development.json"
Foos -> [ 4, 2, 3 ]

expected:
Bar -> "value from appsettings.Development.json"
Foos -> [ 4 ]

Tried this with Foos being strnig[], IEnumerable<string>, List<string> and ICollection<string> - same result.
This is very unintuitive.
If I remove the Foos value from appsettings.json then the result is as expected.
Interestingly enough, using [ 4, null, null] produces [4] or [4, 0, 0] depending on what type was used in FooSettings.
Using packages:
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="1.1.1" />

Running on Windows 10,
Microsoft .NET Core Shared Framework Host
Version  : 1.1.0
Build    : 928f77c4bc3f49d892459992fb6e1d5542cb5e86

I also hate this behavior - it makes using collections in the configuration highly unintuitive / near impossible. If the current behavior is needed  for some cases, then I recommend adding new syntax / override that can enable simple replacement of the entire collection with new set of values.

This is by design.


Add docs on CheckNonZeroSender

This is a signed extension that ensures the sender is not the zero address.
See rustdocs.

Duplicate (kinda) of #681 , happy to assist on this