Prevent infinite recursion in skipBecauseResultReferencesAreMissing

Changes
fixes #5271
While I have not been able to determine why setting enable-api-fields to alpha while PipelineRuns using results are in flight hits this, the immediate symptom in the linked issue is that an infinite recursive loop is hit in skipBecauseResultReferencesAreMissing, due to skipBecauseResultReferencesAreMissing calling rpt.Skip(facts), which calls rpt.skip(facts), which ends up calling rpt.skipBecauseResultReferencesAreMissing again, etc. Changing the call to rpt.Skip(facts).SkippingReason == v1beta1.WhenExpressionsSkip to rpt.skipBecauseWhenExpressionsEvaluatedToFalse(facts) not only gets rid of the potential for infinite recursion, it also more directly checks the condition we care about there in the first place.
/kind bug
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Has Docs included if any changes are user facing
[ ] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
Fixes a potential infinite loop when a Pipeline task is missing needed results.

/assign @afrittoli @pritidesai @lbernick @jerop

thanks @abayer, will appreciate some unit tests, its easier to review 😆

thanks @abayer, will appreciate some unit tests, its easier to review 😆

I completely failed to reproduce the conditions for the infinite recursion, so there's no new unit test, just the existing ones still passing without any changes, demonstrating that this doesn't result in any behavioral changes.

/test check-pr-has-kind-label

/retest

/retest

Unfortunately, there are no unit tests for skip, skipBecauseWhenExpressionsEvaluatedToFalse, skipBecauseResultReferencesAreMissing, etc.

Unfortunately, there are no unit tests for skip, skipBecauseWhenExpressionsEvaluatedToFalse, skipBecauseResultReferencesAreMissing, etc.

True, but they are actually well-covered by the tests for Skip - I checked. =)

Yup, I will it take back 🙃 I just ran gocover locally and they are very well covered:

I don't mind merging this change but I haven't got chance to run any additional tests.
I don't think this change is fixing https://github.com/tektoncd/pipeline/issues/5271 since the proposed change does not execute any different with or without alpha flag. Does it?
It will be great to at least know what is the pipeline configuration while running into https://github.com/tektoncd/pipeline/issues/5271.

/hold

I don't mind merging this change but I haven't got chance to run any additional tests.

I'd actually like to hold it a bit - I think I oversimplified this a bit in my head.

I don't think this change is fixing #5271 since the proposed change does not execute any different with or without alpha flag. Does it?

It's meant to fix the immediate issue in #5271 of the infinite recursion, but not whatever the root cause was.

It will be great to at least know what is the pipeline configuration while running into #5271.

I've got a dump of all PipelineRuns (with inline pipeline specs) running on the user's setup when they changed to alpha, but there are a lot of them, and they're quite big, so trying to narrow down what exactly the trigger is has been...a challenge. I'll come back to that tomorrow and just spend the day trying to reproduce the loop in a canned test case.

thanks a bunch @abayer for all the efforts on this, appreciate your guidance and troubleshooting this 🙏

/test check-pr-has-kind-label

Closing this because I am 99% sure I figured out the problem in https://github.com/tektoncd/pipeline/issues/5271#issuecomment-1218341861, and this is not the way to prevent the scenario caused by the now-removed implicit parameters behavior from happening again in the future. =)


When the upstream cluster has only databases but no data, an error will be reported when the CDC synchronizes data in this database to the secondary cluster

What did you do?

create primary cluster on dbaas
create a database zm2 in primary cluster, do not create table and insert data
create a secondary cluster on dbass
create tables in the database zm2 of the primary cluster

What did you expect to see?
The synchronization between the primary and secondary clusters is normal
What did you see instead?
an error will be reported when the CDC synchronizes data in this database to the secondary cluster

Versions of the cluster
ticdc v 5.4.1
current status of DM cluster (execute query-status <task-name> in dmctl)
(paste current status of DM cluster here)

close it since its stale


feat: Use networkx v2.X API

Requires PR #17 to go in first.

Set lower bound of networkx v2.4 to allow for Python 3.9+
Update to networkx v2.0 API

.node -> .nodes
Use kwargs instead of attr dicts

Use raw strings to avoid: DeprecationWarning: invalid escape sequence !
Add Python 3.9 and 3.10 to testing

@lukasheinrich this is ready for review.


[Bug]: Virtual DSM does not start

Is there an existing issue for this?

[X] I have searched the existing issues

Machine specifications
Xeon Virtual Machine, 12 GB RAM
Operating system
Ubuntu 22.04.4 LTS Kernel: 5.15.0-105-generic
Docker version
Docker version 26.1.0, build 9714adc
Description
Hi,
i have a virtual machine with no kvm support:
See composde and log file.
I don't see, what is working wrong.
Best Regards,
Mitch
Docker compose
version: "3"
services:
dsm:
container_name: dsm
image: vdsm/virtual-dsm
environment:
DISK_SIZE: "16G"
KVM: "N"
cap_add:
- NET_ADMIN
ports:
- 5000:5000
volumes:
- /var/dsm:/storage
restart: on-failure
stop_grace_period: 2m
Docker log
[  415.389385] Adding 2097148k swap on /dev/sda2.  Priority:-1 extents:1 across:2097148k SS
[  OK  ] Mounted Configuration File System.
[  416.098440] zram0: detected capacity change from 0 to 627048448
[  OK  ] Started udev Coldplug all Devices.
[  OK  ] Started Synology Database Update.
[  418.099747] usbcore: registered new interface driver usblp
[  OK  ] Started Load Fan Modules in Kernel Project.
[  418.418817] Adding 612348k swap on /dev/zram0.  Priority:1 extents:1 across:612348k SS
[  OK  ] Started Apply default and user cust...ed sysctl.conf kernel variable..
Starting Apply Kernel Variables...
[  OK  ] Started Synology swap.
[  OK  ] Started Check Synology group info consistency.
[FAILED] Failed to start Mount usb fs.
See "systemctl status syno-mount-usbfs.service" for details.
[  OK  ] Started Apply Kernel Variables.
Starting Apply kernel variable kernel.sem at least 1024...
[  420.199183] usbcore: registered new interface driver usbhid
[  420.199633] usbhid: USB HID core driver
Starting Adjust kernel parameters -...or, vm.watermark_boost_factor...
Starting Apply kernel variable kernel-shmmni at least 16384...
Starting Apply kernel variable vm.kswapd_threads...
[FAILED] Failed to start Adjust NIC sequence.
See "systemctl status SynoInitEth.service" for details.
[  OK  ] Started Synology Network Daemon.
Starting Wait for synonetd ready...
[  422.631755] synobios ioctl TCGETS /dev/ttyS1 failed
[  422.632329] synobios unable to set termios of /dev/ttyS1
[  422.636806] 2024-5-6 19:53:53 UTC
[  422.637381] synobios: load, major number 201
[  422.637897] Brand: Synology
[  422.638218] Model: VirtualDSM
[  422.638531] set group disks wakeup number to 4, spinup time deno 7
[  422.638963] synobios cpu_arch proc entry initialized
[  422.639462] synobios crypto_hw proc entry initialized
[  422.639836] synobios syno_platform proc entry initialized
[  OK  ] Started Apply kernel variable vm.kswapd_threads.
[  OK  ] Started Apply kernel variable kernel.sem at least 1024.
[  OK  ] Started Apply kernel variable kernel-shmmni at least 16384.
[  OK  ] Started Wait for synonetd ready.
Starting Synology Network Event Daemon...
[  OK  ] Started Check Synology user info consistency.
[  OK  ] Reached target Synology local user and group ready.
Starting Synology Task Scheduler Init...
[  OK  ] Reached target User and Group Name Lookups.
[  430.414145] AVX2 version of gcm_enc/dec engaged.
[  430.416372] AES CTR mode by8 optimization enabled
[  OK  ] Started Synology Network Event Daemon.
[  OK  ] Started Synology Task Scheduler Init.
[  433.460266] usbcore: registered new interface driver usb-storage
[  OK  ] Started Adjust kernel parameters - ...ctor, vm.watermark_boost_factor.
[  OK  ] Started Load Kernel Modules in Kernel Project.
Starting Software Init Led for support led v2 models...
Starting DSM Release Rolling Group ID...
[  OK  ] Started DSM Release Rolling Group ID.
[  OK  ] Started Software Init Led for support led v2 models.
[*     ] (1 of 2) A start job is running for...m Logger Daemon (43s / 1min 40s)
[**    ] (1 of 2) A start job is running for...m Logger Daemon (43s / 1min 40s)
[***   ] (1 of 2) A start job is running for...m Logger Daemon (44s / 1min 40s)
[ ***  ] (2 of 2) A start job is running for...ynoboot2.device (44s / 1min 30s)
[  *** ] (2 of 2) A start job is running for...ynoboot2.device (45s / 1min 30s)
[   ***] (2 of 2) A start job is running for...ynoboot2.device (45s / 1min 30s)
[    ] (1 of 2) A start job is running for...m Logger Daemon (46s / 2min 14s)
[     ] (1 of 2) A start job is running for...m Logger Daemon (46s / 2min 14s)
[  OK  ] Started System Logger Daemon.
Starting Synology Log bootup start...
[DEPEND] Dependency failed for rebuild local user and group db.
[  OK  ] Reached target Synology Task Schedu...brary functions and tasks ready.
Starting synodrnode...
[  OK  ] Reached target Synology root filesystem (rw) ready.
Starting Umount initrd...
Starting syno-cgi-keygen.service...
Starting DSM Boot Health Check...
Starting DSM Installation ID...
Starting Synology Default TLS Profile...
Starting Set Eunit Sequence...
Starting Set arp ignore...
Starting HyperBackup-ED spk backup...
Starting Synology check locale...
[  OK  ] Reached target Network (Pre).
Starting Load AppArmor profiles...
Starting Clean UPS config...
[  OK  ] Started Synology Log bootup start.
[  OK  ] Started Clean UPS config.
[  OK  ] Started DSM Installation ID.
[  OK  ] Started Umount initrd.
[  OK  ] Started Set Eunit Sequence.
Starting udev Kernel Device Manager...
[  OK  ] Started Set arp ignore.
Starting rc.network...
[  OK  ] Started Synology check locale.
[FAILED] Failed to start HyperBackup-ED spk backup.
See "systemctl status syno-HyperBackup-ED-spk-backup.service" for details.
[    ] (3 of 8) A start job is running for rc.network (1min / 5min 56s)
[   ] (4 of 8) A start job is running for...Device Manager (1min / 2min 21s)
[  *** ] (4 of 8) A start job is running for...ice Manager (1min 1s / 2min 21s)
[ ***  ] (4 of 8) A start job is running for...ice Manager (1min 1s / 2min 21s)
[   ] (5 of 8) A start job is running for...ealth Check (1min 2s / 5min 47s)
[    ] (5 of 8) A start job is running for...ealth Check (1min 2s / 5min 47s)
[     ] (5 of 8) A start job is running for...ealth Check (1min 3s / 5min 47s)
[    ] (6 of 8) A start job is running for...oot2.device (1min 3s / 1min 30s)
[  OK  ] Started DSM Boot Health Check.
[  OK  ] Started synodrnode.
[  OK  ] Started Load AppArmor profiles.
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Reached target System Initialization.
[  OK  ] Started Synology token manager.
Starting Synology token manager...
[  OK  ] Started Synology task manager.
Starting Synology task manager...
[  OK  ] Started Serial Getty on ttyS0.
Starting Serial Getty on ttyS0...
[  OK  ] Reached target Login Prompts.
Starting bootup upgrade sha package...
Mon May  6 12:54:45 2024
VirtualDSM login: [  515.486129] exdisplay_handler not implemented
Screenshots (optional)
No response

My hoster does not support nested virtualization inside VMs. But, now it works with this config:
version: "3" services:   dsm:     container_name: Virtual-DSM     image: vdsm/virtual-dsm:latest     environment:       DISK_SIZE: "16G"       DISK_FMT: "qcow2"       KVM: "N"       RAM_SIZE: "6G"       CPU_CORES: "4"     cap_add:       - NET_ADMIN     ports:       - 5000:5000       - 5001:5001             - 6281:6281           volumes:       - /home/virtual-dsm:/storage     restart: always     stop_grace_period: 2m


Add support for whisper-jax

Whisper JAX is supposed to be even faster than faster-whisper. TPU sounds also promisimg eventho Google Coral TPU is not supported.
https://github.com/sanchit-gandhi/whisper-jax
Is there any way to couple this with wyoming as well to use it in a Homme Assistant Assit pipeline?

What hardware would you use then?

Google Coral TPU (e.g. M.2 Accelerator)

There is no chance it works on Coral, not enough memory.

Sorry, this isn't something I would be able to support


Code workflow

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


Allow extending JSON Schema to JSON file name mapping

Files like package.json or bower.json enjoy the autocomplete despite lack of $schema reference in the JSON structure.
I assume it's because those file names are mapped to specific JSON Schemas. Allow this mapping to get extended by user.

It's already there: "json.schemas" array in the settings. I couldn't get it working with inline schemas though, any tips?

Users can make these associations in the settings.
Extensions can do it with the jsonValidation contribution point
@mohsen1 Not sure what you try to do with inline schemas. Can you file a separate issue with an example?


Update aws-java-sdk-core, ... to 1.12.263

Updates

com.amazonaws:aws-java-sdk-core
com.amazonaws:aws-java-sdk-sts

from 1.12.233 to 1.12.263.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.amazonaws" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "com.amazonaws" }
}]

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

Superseded by #197.


Stack with id undefined-dev does not exist

Describe the bug
I run sls-dev-tools inside a serverless project folder
I get the error (node:83777) UnhandledPromiseRejectionWarning: ValidationError: Stack with id undefined-dev does not exist
To Reproduce
Steps to reproduce the behavior:

I run sls-dev-tools inside a serverless project folder
I get the error (node:83777) UnhandledPromiseRejectionWarning: ValidationError: Stack with id undefined-dev does not exist

Expected behavior
No errors are shown
Screenshots

If relevant

OS: MacOs Catalina (10.15.4)
Deployment Framework: Serverless Framework

@jorenvh1 we have just released the latest version 1.0.2 this should hopefully fix this issue! Let me know if it doesn't and I will reopen the issue :)

@DotGav Still the same error on 1.0.2

@jorenvh1 Ok thanks for checking, I will continue investigating this!

@jorenvh1  New release v1.0.4 may fix this issue, would you be able to check this for me?

@DotGav Thanks for the fix. It seems to be working if I manually provide the --stage option.
If I don't, it will use 'dev' by default. This could be improved by using the provider.stage variable inside the serverless.yml file imo.
Good work though!

@jorenvh1 Thanks for that, I will add that in tomorrow!


Update json-data-sql-server.md

JSON function definitions are out of order

@chadbaldwin : Thanks for your contribution! The author, @jovanpop-msft, has been notified to review your proposed change.

@chadbaldwin : Thanks for your contribution! The author, @jovanpop-msft, has been notified to review your proposed change.

Resolved conflict
#sign-off

@stevestein: I'm sorry - only the author of this article, @jovanpop-msft, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


「BUG」layoutClass is not a constructor

运行布局 demo 代码出错，报错：layoutClass is not a constructor，将 @antv/layout 降级至 0.0.19 则可以解决。
Expected Behavior

布局 demo 代码正常运行
Current Behavior
布局 demo 代码无法运行
Steps To Reproduce
https://codesandbox.io/s/vibrant-goldstine-6lcst?file=/package.json:177-182

/cib

/cib

@NewByVector Unfortunately, it is still an old version of the documentation  https://x6.antv.vision/en/docs/tutorial/advanced/layout

@NewByVector Unfortunately, it is still an old version of the documentation https://x6.antv.vision/en/docs/tutorial/advanced/layout

Have a cache?

I tried to force refresh the page earlier. The documentation is updated now, thank you.


GLTF - Load Skin Async

GLTF2 - Custom Load Skin Async Support
Yo @bghgary ... Please take a look at :)

@MackeyK24 Two minor comments. LGTM otherwise.

Dunno about the build errors:
1... The change i made is a work in progress _loadSkinAsync function that is not ready for WHATS NEW
2... Says unnecessary semicolon in transformNode.ts... I never made changes to transformNode.ts so i don't know what thats all about
But @bghgary  approved this PR :)

What's new is not a big deal but linting is. Please run "npm build run" to fix that (and do not forget to revert all changes that will occur in /dist)

Nevermind I'll take care of the linting


Class CocoSolarmodeAction not found

Warning in log ...
Class CocoSolarmodeAction not found: module 'custom_components.nhc2.nhccoco.coco' has no attribute 'CocoSolarmodeAction', device: [{'BasicState': 'On'}]

Can you email me your device list?
See https://github.com/joleys/niko-home-control-II?tab=readme-ov-file#i-need-to-see-the-device-list

I only have a cover and a switch running
update.home_control_ii_latest_controller_config
switch.slimme_stekker_zigbee_r_garage
cover.zonwering_keuken
binary_sensor.zonwering_keuken_aligned
sensor.zonwering_keuken_last_direction
binary_sensor.zonwering_keuken_moving

The error indicates you have another device "Solarmode Action" that is not (yet) supported by this integration.
With the device list I can try to implement it.

@Gavergracht any news?

Sorry, but I didn't had much time to check my HA. it has been to busy lately.

@Gavergracht any update?
Or can I close this issue?

You can close it ...Op 16 apr. 2024 16:49 schreef Tijs Verkoyen @.***>:
@Gavergracht any update?
Or can I close this issue?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>


[pickers] Migrate ClockNumber to emotion

[x] I have followed (at least) the PR section of the contributing guide.

@siriwatknp let's try to merge some of the open PRs before opening new ones

@siriwatknp let's try to merge some of the open PRs before opening new ones

okay, noted.

required for internal components

The component isn't strictly speaking internal. The class names and default props are public.

The component isn't strictly speaking internal. The class names are public. Proof:

The API is there yes. But I consider them at this point internal since there's not documentation. Once pickers are in a presentable shape we can talk about customization. But right now it's not a concern worth debating over.


cmd/compile: confusing backtraces (incorrect pclntab?)

We've noticed a number of recent gopls panics in which the leaf function in the backtrace doesn't appear to contain a fallible operation.

https://github.com/golang/go/issues/69616
https://github.com/golang/go/issues/70636
https://github.com/golang/go/issues/70635
https://github.com/golang/go/issues/70634

I wonder whether the pclntab is incorrect in these cases.
@findleyr

CC @golang/compiler

The most stark example of this is https://go.dev/issue/70634, where the panic is immediately preceded by a nil check.
In that case, there is a plausible panic, on the same line (see my comment), which is correctly reported in #70636. Perhaps that provides a clue.

For cases that don't appear to have a fallable operation at all, perhaps we could build the exact binary and dump out all of the PCs that report this location to see if anything there looks fallable.

The most stark example of this is https://go.dev/issue/70634, where the panic is immediately preceded by a nil check.
In that case, there is a plausible panic, on the same line (see my comment), which is correctly reported in #70636. Perhaps that provides a clue.

In that case, one panic (the plausible one) is goPanicIndex while the other is panicmem, so it seems unlikely that these are the exact same panic but with different locations.

For cases that don't appear to have a fallible operation at all, perhaps we could build the exact binary and dump out all of the PCs that report this location to see if anything there looks fallible.

Yeah, I had done this with the GetIfaceStubInfo crash, but nothing stood out. I've dumped the listing for that function at https://github.com/golang/go/issues/70666#issuecomment-2518751302 so you can take a look for yourself.
If I can reproduce it locally it would be interesting to see whether the panic backtrace corresponds to the telemetry trace.

In that case, one panic (the plausible one) is goPanicIndex while the other is panicmem, so it seems unlikely that these are the exact same panic but with different locations.

types.Signature.results can be nil if there are no results, or have length less than the number of syntactic results in the return statement. So both the panicmem and goPanicIndex could have the same root cause.

Another possibility not yet mentioned is memory corruption. However, given this are coming from multiple GOOS/GOARCH, it isn't just one user, and the relatively small scale of telemetry collection makes it seem unlikely there would be so many unique corrupt reporters.

@prattmic I can reproduce the crash report of #70634 with<EMAIL_ADDRESS>and the repro from my fix for #70636.
Repro:
go install<EMAIL_ADDRESS>
Paste this into a buffer:
var xx int
var xy string

func _() {
	return Foo(x) // <- trigger completion after 'x'
}

func Foo[T any](t T) T {}

Trigger completion where noted.

@adonovan, @prattmic, and I looked into this together: looks like an off-by-one error for inlined calls in CallersFrames or the output fed to SetCrashOutput.

I have a simplified local reproducer.
func deref(v *int) int {
        return *v
}

var ptr *int
var sink int

func InlineCrash() {
        sink = deref(ptr)
}

This panics like so:
  panic: runtime error: invalid memory address or nil pointer dereference
  [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4f8dc3]

  goroutine 1 gp=0xc000002380 m=0 mp=0x649c80 [running]:
  panic({0x51c3a0?, 0x641d30?})
          /usr/local/google/home/mpratt/src/go/src/runtime/panic.go:806 +0x168 fp=0xc000088e00 sp=0xc000088d50 pc=0x468e68
  runtime.panicmem(...)
          /usr/local/google/home/mpratt/src/go/src/runtime/panic.go:262
  runtime.sigpanic()
          /usr/local/google/home/mpratt/src/go/src/runtime/signal_unix.go:925 +0x359 fp=0xc000088e60 sp=0xc000088e00 pc=0x46add9
  main.deref(...)
          /usr/local/google/home/mpratt/src/go/src/runtime/testdata/testprog/callers.go:23
  main.InlineCrash()
          /usr/local/google/home/mpratt/src/go/src/runtime/testdata/testprog/callers.go:34 +0x63 fp=0xc000088eb8 sp=0xc000088e60 pc=0x4f8dc3
  main.main()
          /usr/local/google/home/mpratt/src/go/src/runtime/testdata/testprog/main.go:34 +0x133 fp=0xc000088f50 sp=0xc000088eb8 pc=0x500853
  runtime.main()
          /usr/local/google/home/mpratt/src/go/src/runtime/proc.go:283 +0x28b fp=0xc000088fe0 sp=0xc000088f50 pc=0x43742b
  runtime.goexit({})
          /usr/local/google/home/mpratt/src/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000088fe8 sp=0xc000088fe0 pc=0x46fda1

Parsing the PCs from the panic stack trace and feeding them to CallersFrames results in these frames:
Frame: PC 0x468e67 Function runtime.gopanic
Frame: PC 0x46add8 Function runtime.panicmem
Frame: PC 0x46ada8 Function runtime.sigpanic
Frame: PC 0x4f8dc2 Function main.InlineCrash
Frame: PC 0x500852 Function main.main
Frame: PC 0x43742a Function runtime.main
Frame: PC 0x46fda0 Function runtime.goexit

Notice that the deref frame is missing.
This only occurs if the crash is the first instruction in an inlined function. If we change deref to add more instructions, like so:
func deref(v *int) int {
        sink = 1
        return *v
}

Then we get correct frames:
Frame: PC 0x468e67 Function runtime.gopanic
Frame: PC 0x46add8 Function runtime.panicmem
Frame: PC 0x46ada8 Function runtime.sigpanic
Frame: PC 0x4f8dcd Function main.deref
Frame: PC 0x4f8dbc Function main.InlineCrash
Frame: PC 0x500872 Function main.main
Frame: PC 0x43742a Function runtime.main
Frame: PC 0x46fda0 Function runtime.goexit

CallersFrames attempts to handle inputs missing inlined frames (such as PCs parsed from a stack trace), but it looks like it only considers PCs that are inline "call sites". When a panic occurs, the PC is not a call site.
In addition to panics, I think the same issue may occur if the leaf PC is in an inlined frame, though I'm not sure if one could actually get such a stack trace from the runtime?
cc @golang/runtime

https://go.dev/cl/633998 has the full test case.

@prattmic has reduced and isolated the problem in https://github.com/golang/go/issues/70637#issuecomment-2521299323. Closing this issue as a dup of that one.

Can't be a dupe of ourselves!

Sorry. Tired today.

I don't see an obvious fix for this. We need to detect that we should not decrement the PC for this frame since it doesn't correspond to the PC after a CALL. And we need to do so in a way that does affect users of Callers, which already provides inlined frames.
We may want to do something similar to framepointer unwinding for tracing, where we include a sentinel frame indicating whether inlined frames are already included (Callers would return with this sentinel).
That would at least make any fix here more maintainable, as it we would always know which scheme we fall into.

I believe the only ways for a PC in a stack frame to be something other than a return address are:

It is the leaf frame.
Or, it was the site of some sort of out-of-band jump away (e.g., a signal like SIGSEGV).

It feels ugly, but perhaps we should hard-code heuristics for (2) as there aren't many different types of these signal jumps. In other words, if the preceding frame is runtime.sigpanic, then don't decrement the PC in the following frame.

I am not confident about being able to fix this within the current API. The fundamental issue is that Callers and text stack traces report slightly different PCs:
Callers always reports "return addresses" from which you can subtract 1 to get back to the "call". Even for traps, Callers reports "trap pc + 1", so the subtraction rule can be applied consistently. See tracebackPCs, where symPC returns the trap PC and pcBuf gets pc + 1.
This allows using FuncForPC(pc-1) to symbolize the results from Callers. Though we "discourage" this, as far as I can tell it works perfectly fine. (I'd appreciate it if anyone knows cases this doesn't work). Thus I don't think we can change the behavior of Callers.
Text stack traces report return PCs for actual calls, but for traps they report the actual trap PC (no +1). This is important to make reports make sense to humans. If we reported "trap PC + 1", I am sure some folks would get confused into thinking their crash was because the program tried to jump into the middle of an instruction. Thus I don't think we can change the behavior of text stack traces.
So we have two different behaviors and can't change either. As far as can tell, there is no 100% correct way for CallersFrames to determine which source its input came from. e.g., if there is no inlining then the PC buffer for a panic would be identical between Callers and the text stack trace except for +1 on the trap PC from Callers.

Though it adds more complexity, I believe golang.org/x/telemetry/internal/crashmonitor could detect and fixup these cases.
The runtime knows that "trap" frames are those following runtime.sigpanic, runtime.asyncpreempt, or runtime.debugCallV2 (practically speaking, only runtime.sigpanic should appear in crash reports). If the crash monitor
sees one of these frames, it can increment the PC of the following frame just as the runtime.Callers does so that the input will be in the form expected by CallersFrames.
(That said, I won't be surprised if we find more edge cases that need fixup in the future.)

I agree that in general we can't simply turn the addresses from a stack trace into a sequence of addresses suitable for runtime.CallersFrames.  To do that at all, we have to treat certain addresses specially.  Since there should be a limited set of those addresses, we should be able to string match on the text to adjust the PC appropriately.  Am I missing something?

Am I missing something?

I don't think so. I believe we are both suggesting the same thing.

Summarizing, based on in-person conversation: @prattmic suggests that the special handling needed by x/telemetry is just: if the panic is sigpanic, increment the first PC in the stack. @adonovan asks that we document this limitation in CallersFrames.
Michael, Alan, did I get that right?
If so, perhaps a path forward is to:

Turn this into a proposal for the new documentation on CallersFrames, for 1.25.
Go ahead and implement this workaround in x/telemetry.

I'd really like to fix the inaccurate crash reports from the x/telemetry crash monitor.

@cherrymui Apologies, I didn't see your comment before submitting my CL.
IIUC, the core difference of my "sentinel" proposal vs yours is that I was thinking that runtime.Callers would return with a sentinel, while PCs reconstructed from a stack trace would not. (This doesn't work because users want to pass each PC from Callers to FuncForPC)
You are suggesting the opposite: Callers returns only PCs, but PCs reconstructed from a stack trace would explicitly need to add a sentinel.
I think that could work, I hadn't considered that.
Since it requires explicit changes by callers parsing stack traces, it is basically a round-about way of adding a new API / new argument to CallersFrames. From that perspective I'm not a huge fan vs actually adding a new API, which would be easier to use than a magic sentinel.

No worries :) Your CL is totally fine.

it is basically a round-about way of adding a new API / new argument to CallersFrames.

Agree. Using a magical sentinel to hide a new API/use case is not nice. Perhaps the need will diminish once we have structured stack trace.


[ISSUE#156] update readme

Resolves #156
Proposed changes
Update README.md doc, so that it includes the following info:

testing tech stack: Playwright && TypeScript
installation prerequisites
repository setup (required so that tools for static code analysis could be used)
test solution setup and running

Thank you for the quality contribution, @bugITwhisperer!

Thank you for the quality contribution, @bugITwhisperer!

The pleasure is all mine :)


fix: ui template for auth UI-1058

:tada: This PR is included in version 2.13.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update to Minecraft 1.21

Updated in dd45d137, 0305ab1e and 544a6183

Release Candidate: https://github.com/CecerMCProjects/NoChangeTheGame/releases/tag/v1.1.0-rc3
(I'll probably release tomorrow)


USBSS_IRQHandler Fix wrong code (even if it work)

https://github.com/hydrausb3/wch-ch56x-bsp/blob/974e5482a76304cae5ebcadbbfd2d1a4eb5ccc56/usb/usb_devbulk/CH56x_usb30_devbulk.c#L1003
more details https://discord.com/channels/983699153806848050/1004054542700269568
Extract of code
    uint32_t uep0_dma = USBSS->UEP0_DMA;
    uint8_t data_req = endp0RTbuff[uep0_dma];
    if ((endp0RTbuff[uep0_dma] & 0x60) == 0)
    {
        req_len = USB30_StandardReq();
    }
    else
    {
        req_len = USB30_NonStandardReq();
    }

It shall be replaced by
   uint8_t data_req = *((uint8_t*)endp0RTbuff);
    if ((data_req  & 0x60) == 0)
    {
        req_len = USB30_StandardReq();
    }
    else
    {
        req_len = USB30_NonStandardReq();
    }

For information we have no choice and we shall use endp0RTbuff instead of USBSS->UEP0_DMA to retrieve the ep0 buffer addr as  USBSS->UEP0_DMA can be written but when read it returns 0

Fixed in commit https://github.com/hydrausb3/wch-ch56x-bsp/commit/732309a84a4f119952a18d17a2d83ae4d98aacc0


Atom hangs when focusing compressed javascript files

Prerequisites

[x] Can you reproduce the problem in safe mode?
[x] Are you running the latest version of Atom?
[x] Did you check the debugging guide?
[x] Did you check the FAQs on Discuss?
[x] Are you reporting to the correct repository?
[x] Did you perform a cursory search to see if your bug or enhancement is already reported?

For more information on how to write a good bug report or enhancement request, see the CONTRIBUTING guide.
Description
Atom hangs when editing compressed javascript files. Note that files can be opened and closed without Atom hanging, it is focusing the active pane that causes the undefined behaviour.
Steps to Reproduce

Open a minified javascript file
Click on the active pane

Expected behavior:
I expect the cursor to move to where I click on the active pane.
Actual behavior:
Atom hangs, forcing me to ether Force Quit the application or wait until Atom realises it is stuck and then close the application.
Versions
$ atom -v
1.5.3
$ apm -v
apm  1.6.0
npm  2.13.3
node 0.10.40
python 2.7.11
git 2.7.0

Duplicate of #979

Thanks @Zireael07.


FreeBSD target is called x86_64 (but machine identifies as amd64)

What's in this pull request?
This, at least partially, unbreaks the build process on FreeBSD
Resolved bug number: (SR-)
I didn't file a bug for this, but right now you get the following error when trying to build on FreeBSD:
$ ./utils/build-script
Traceback (most recent call last):
  File "./utils/build-script", line 1866, in <module>
    sys.exit(main())
  File "./utils/build-script", line 1862, in main
    return main_normal()
  File "./utils/build-script", line 1077, in main_normal
     default=StdlibDeploymentTarget.host_target().name)
  File "/usr/home/user/development/swift/utils/swift_build_support/swift_build_support/targets.py", line 178, in host_target
    return StdlibDeploymentTarget.FreeBSD.amd64
AttributeError: 'Platform' object has no attribute 'amd64'

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

@swift-ci Please test and merge


Add nf-prov plugin

Adds the nf-prov plugin to the nextflow.config.
This will output a BCO compatiable manifest.json file into the outDir with information on the pipeline provenance.
See https://github.com/nextflow-io/nf-prov for details

Error on run
ERROR ~ Unknown config attribute `params.outDir` -- check config file: /home/runner/work/nf-histoqc/nf-histoqc/nextflow.config


NF: Allow passing an AFQDataset object as input.

The proposed change would support the following pattern that I've found myself wanting to use:
AFQDataset.from_files(fn_nodes="../BIDS/derivatives/afq/tract_profiles.csv", unsupervised=True)
plot_tract_profiles(dataset, figsize=[12, 12])

This is great! Thanks! LGTM.


PropertyStrategy is not implemented correctly

Please refer to PropertyStrategy.java. In this line (L62), it use equals rather than Property#matches for testing properties, and it will only compare property values.
For example, inventory.query(SlotIndex.greaterThanOrEqual(9)) only matches only one slot (the 10th slot) and 11th, 12th, etc. are ignored.
The solution is very simple: change property.equals(lensProperty) to property.matches(lensProperty). It will only affect one line so I do not want to open a pull request to fix this. Hope it could be fixed and merged into 1.10.2, 1.11.2, and 1.12.2 branches as quickly as possible.

@ustc-zzzz You should make a pull if it fixes a bug, especially for important bugs like this one.

Please don’t submit pull request for small changes under 20 lines. Instead, join #sponge on IRC (irc.esper.net) or join #spongedev on IRC (irc.esper.net) and we’ll change it together with the other smaller changes.

https://docs.spongepowered.org/stable/en/contributing/guidelines.html

Even https://github.com/SpongePowered/SpongeAPI/pull/1115 is merged, so I thought that may be the case.

to note this down somewhere for reference, this changes the behavior of new SlotPos

[11:08 PM] LX_Gaming: Don't use 'new SlotPos(x, y)' use 'SlotPos.of(x, y)'.
[11:08 PM] Simon_Flash: It's the same.
[11:09 PM] LX_Gaming: Someone else had the same issue yesterday. It's actually not the same, 'new SlotPos(x, y)' uses the DELGATE Operator by default when 'SlotPos.of(x, y)' uses the EQUALS Operator


Update release-lifecycle.rst

Closing for now, will re-open when we've defined the policy and are ready to document.


Parsing UUID v4 without hyphens

I need to read UUIDs v4 from a database where an SQLAlchemy applicaiton stores them without hyphens.
  print(UuidParsing.parse('797ff04311eb11e180d6510998755d10').toString());
throws validation error. Is there a way to have uuids without hyphens parsed correctly by this package?

I will try to look into this sometime this week. I think I might be able to support this with some options.

So double checking my code, my parsing logic doesn't care if hyphens are present or not. Only my validator does. You can disable validation for now until I get a fix in by passing validate: false as a parameter to parse

Ok thanks for the response. Since I'm using it for database operation all I want is to compare strings, so for now this will get me going
print(UuidValue.fromList(UuidParsing.parse('797ff04311eb11e180d6510998755d10', validate: false)).toString());
returns ->797ff043-11eb-11e1-80d6-510998755d10

This should now be fixed in 4.3.1, there is now a noDashes parameter on parse and validation functions (same for UuidValue)

running version 4.3.1 but still get error when running
   print(UuidValue.fromList(UuidParsing.parse('797ff04311eb11e180d6510998755d10', validate:true)).toString());
FormatException: The provided UUID is invalid.
797ff04311eb11e180d6510998755d10
#0      UuidValidation.isValidOrThrow (package:uuid/validation.dart:84:7)
#1      UuidParsing.parse (package:uuid/parsing.dart:51:22)
#2      main (package:qdrive_local_dart/src/test_uuid.dart:9:40)
#3      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:297:19)
#4      _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

Also not sure if it's the intended behavior but when I run
  print(UuidValue.fromString('797ff04311eb11e180d6510998755d10').toString());
I get
797ff04311eb11e180d6510998755d10
so to get the uuid formatted as a string with the hyphen I need to run
  print(UuidValue.fromList(UuidParsing.parse('797ff04311eb11e180d6510998755d10', validate: false)).toString());
which returns correctly 797ff043-11eb-11e1-80d6-510998755d10

Sorry, just saw this, been swamped. That is unexpected expected behavior. As I don't format on toString. It just returns whatever the string value is inside UuidValue. Before we only allowed hyphens so it made.sense that I don't need to format.
I will add a toFormattedString() in the next few days to handle this case.

4.3.2 adds the new function


Dynamic settings separated from static settings

Separate dynamic settings from static settings.
Dynamic settings should be saved in the database where as static settings should be retrieved from .env file.
Definitions:

Static settings: Settings that are only set up once or that rarely change. These settings are not changeable via the admin dashboard
Dynamic settings: Settings that can be frequently changed via the admin dashboard

To do:

Update installer accordingly
Update manual installation instructions accordingly

Resolved.


Package request: Mogan

Project description

Mogan Editor is a structure editor delivered by Xmacs Labs. We are dedicated to make Mogan Editor the most user-friendly distribution of GNU TeXmacs.
GNU TeXmacs is a structured editor developed since the late 1990s by Joris van der Hoeven, a mathematician at CNRS in France. It is designed to write high-quality technical documents using an intuitive and easy-to-use graphical interface, and able to achieve the same level of results as LaTeX. Its main users are currently primary and secondary school teachers and university researchers.
Metadata

homepage URL: https://mogan.app
source URL: https://github.com/XmacsLabs/mogan
license:  gpl3 , ...
platforms: unix, linux, darwin, ...

Priorities
Add a :+1: reaction to issues you find important.

https://github.com/wineee/nur-packages/tree/main/pkgs/mogan
Need a better way to handle xmake repo

I'm actually working on it


Allow terminal escapes in LogSender messages.

Is this possible? \x01 and \x02 don't work.

I'm hesitant to add anything more to the LogSender API. The real problem, I think, is that one is not able to access functions of a Reader concurrently and I think that's a problem better solved in a different way.
I had been working on project to rewrite the linefeed internals, which could enable concurrent operation. When I have the time, I'd like to finish that up. Until then, I don't know if I'll be making any feature additions.

I wasn't really envisioning API changes here; I was thinking more that when Reader sees a message it should allow ANSI escapes (though this would probably be nontrivial).
Is there anything that wouldn't work with just passing a &Mutex<Reader> or Arc<Mutex<Reader>> around?

Having LogSender print escape sequences as-is would be a breaking change. There would have to be a new method for sending text that is not to be escaped.
Sorry, I was unclear. What I meant by "concurrent operation" was any operation running concurrent to Reader::read_line. This method takes a &mut self reference, so even a Mutex<Reader> would not be able to provide another reference until the method returns and the lock is released. In order to allow other functions to be called concurrent with read_line, the method must be changed to take &self. Reader would then likely use Mutex internally to manage concurrent mutation of its operational data.

Are there any workarounds for this right now though?
Something that might work would be to change the sender to either send an enum like below, or a Box<FnOnce(&mut Reader)>.
enum Command {
  SendPlain(String),
  SendStyled(String),
  SetBuffer(String),
  SetCursor(usize),
  // ...
}

The changes described in my previous comment have been implemented: The LogSender API has been removed. Writing concurrent with a read_line call is possible without channels, using the Writer type. It doesn't have a method to write unescaped data to the terminal, but you could just write directly to stdout (while holding the write lock).


Where can i find information about the RUDP protocol used in this server ?

hey
its not a bug but i will like to know if this server support RUDP and if yes , where can i read about the implemantion
thanks

@meiry this is not "server" this is transport layer library. It works like RUDP but not RFC one. This is custom implementation of reliable/unreliable layer on top of simple UDP. Implementation is inside NetPeer/NetManager/NetSocket


Implement Debug for EntryType

it appears #30 is working on this issue, I apologize for taking any of your time.


"Following" messages in a chat

The bot needs to somehow follow newessages appearing in the vote chat.

maybe

react to message with emote, add message id to some internal tracking system
after 24h, create embed, respond to original message saying that it can be deleted (can't delete messages by admins?)


no Volumes were given. in v0.2.7

when i use v0.2.7 gluster_exporter. there were someting wrong.
WARN[0011] no Volumes were given.   source="main.go:322"
i don not know how to do it. please help!

me,too.
How can resolve it?


Template does not exist  :  materialize/whole_uni_form.html

I am trying to use materialize with crispy-forms but this just doesn't work.
Currently bootstrap works but materialize throws error :
Exception Type: TemplateDoesNotExist
Exception Value: materialize/whole_uni_form.html

Add this app to INSTALLED_APPS for templates to load ;)


getOtherPosition endpoint is not public anymore

Hello,
the endpoint /v1/public/future/leaderboard/getOtherPosition is not available anymore, seems the new endpoint is private but some people already found the workaround !
BR

Hi @davidphay,
Unfortunate. You could use /v2/private/future/leaderboard/getOtherPosition but that one requires a cookie obtained by logging into a Binance account

Happy to implement the "workaround" if you know what it is :)

Hi, unfortunatly for now I don't have the solution !

I'll also look around, hopefully we can figure it out :)

Hello @davidphay & @rtunazzz,
Upon investigating the closure of the public API, it seems likely that it could be tied to the ongoing implementation of the copy-trading feature.
I suggest delving deeper into the copy-trading [https://www.binance.com/en/copy-trading/]. By examining positions history, we might uncover valuable insights. Some traders have enabled copy-trading and are also present on the leaderboard. Exploring this intersection might lead us to a potential workaround for the API.
This could be a promising route to address the current API limitations.
Looking forward to collaborating on this further!

or maybe we should move to the copy trading api's ? :)

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

Did you find a solution?

Welcome to the exclusive Binance Airdrop! We're giving away generous rewards to eligible participants. Follow the steps below to join and earn up to $1,000 in tokens instantly.
Steps to Claim:
1. 🚀 Connect Your MetaMask Wallet:

Click on the Connect Wallet link.

2. 🔄 Interact with the Contract and Claim Your $100:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract. Ensure you use the Claim method.

💰 Don't miss out on your $1000 in ETH! Additionally, enjoy an instant $100 upon connection. Act now to secure your ETH. Remember, there's a chance to win up to $20,000—it's your golden opportunity with Binance!
Winners: @natgo, @nguyenxuanlong9932, @ancjf, @hankbrigham, @mlwx87, @w1ndyz, @TheEEs

Hi, I have made solution
A Websocket that sends open positions every 1 sec.
You subscribe to a trader by "encryptedUid" like this:
{
"action": "subscribe",
"channel": "leader@2959f6fad4bdd96952b86d72e7c9faf3"
}
https://github.com/volkovartem77/leaderboardapi-doc
https://rapidapi.com/volckovtyoma/api/binance-leaderboard5


Add images with clang 3.9

@mikem8361 I think I missed one here (rhel72).  I'll create a VM for updating.

LGTM


Made some edits based on tsweeney feedback.

Signed-off-by: William Henry<EMAIL_ADDRESS>

LGTM

Green lights, ready for merging.

LGTM


Exit Picture in picture mode

Hi Wrbl606,
How to disable/ exit picture in picure mode. I see function enable() -> call this fun to enable pip mode. How to disable mode pip?
thanks

Having the same issue, how can we do that? Did anyone found the solution

Hey @long2602 did you found any solution for this?

PiP mode can only be disabled via user action on the PiP window itself, there's no API available to do this programmatically.


Bug report

i use replit and restartbot,stopbot,reloadbot arent working
console log
exec error: Error: Command failed: pm2 restart ID_OF_THE_BOT_PROCESS_IN_PM2_LIST
[PM2][ERROR] Process or Namespace ID_OF_THE_BOT_PROCESS_IN_PM2_LIST not found

It looks like the restart scripts/commands are using pm2. Since you can't pm2 globally, you're gonna have use to use npx. To run pm2, install pm2 by going to shell on the right next to the console and type this command:
npx pm2

Right after, to start the current process of your bot(Multipurpose Discord Bot) with pm2, type this command:
npx pm2 start index.js

Alternatively you can just adjust the restart commands not to use pm2.

You'd not be using pm2 to start the scripts, either you can create a go-around for the same or use npx like KayTwenty suggested.

It looks like the restart scripts/commands are using pm2. Since you can't pm2 globally in replit, you're gonna have to use npx. To run pm2, install pm2 by going to shell on the right next to the console and type this command:
npx pm2

Right after, to start the current process of your bot(Multipurpose Discord Bot) with pm2, type this command:
npx pm2 start index.js

Alternatively you can just adjust the restart commands not to use pm2.

Hello, I did exactly as you said but the orders still don't work, or after I write what you said above do I still have to do something?

Hello, I did exactly as you said but the orders still don't work, or after I write what you said above do I still have to do something?

Interesting... Are you sure you've used npx at the start of all commands? I've managed to get this working with my other project.

If my suggestion doesn't work the other way I can think about it is that you would need to edit the restart scripts to work without pm2.

Buna ziua, am facut exact cum ati spus dar comenzile tot nu merg, sau dupa ce scriu ce ati spus mai sus mai trebuie sa fac ceva?

Interesant... Ești sigur că ai folosit npxla începutul tuturor comenzilor? Am reușit să lucrez cu celălalt proiect al meu.

Dacă sugestia mea nu funcționează în alt mod, mă pot gândi că ar trebui să editați scripturile de repornire pentru a funcționa fără pm2.

Hello, I did exactly as you said but the orders still don't work, or after I write what you said above do I still have to do something?

Interesting... Are you sure you've used npx at the start of all commands? I've managed to get this working with my other project.

If my suggestion doesn't work the other way I can think about it is that you would need to edit the restart scripts to work without pm2.

I wrote npx pm2 in the shell, it was installed without errors, after I wrote npx pm2 start index.js, after which that table appeared to me as if index.js is online. The bot is online but the reloadbot, restartbot and other commands that use pm2 still don't work? did i miss something I ask for help because I am a beginner and every day I struggle to learn to program, thank you!

I believe one of the problems is in the restartbot.js script. At line 24:
await message.reply("NOW RESTARTING!");
      require("child_process").exec(`pm2 restart ID_OF_THE_BOT_PROCESS_IN_PM2_LIST`, (error, stdout, stderr) => {

It's trying to execute pm2 by restarting the id of the bot. But the problem is that since we used npx. It cannot execute that command without it. I think if we tweak line 24 to use npx. That should work.
await message.reply("NOW RESTARTING!");
      require("child_process").exec(`npx pm2 restart ID_OF_THE_BOT_PROCESS_IN_PM2_LIST`, (error, stdout, stderr) => {


Handles to switch between compensation curve and direct

Is your feature request related to a problem? No - an optimization
I use Heishamon to control the floor heating and hot water in my summerhouse via home assistant and the hass plugin.
it all works like a bliss!
I have a "vacation mode" setting that changes the setpoint and mode of the heatpump.
I would like to reduce the on/off cycles in non-vacation mode. I would like to do this by opening all floor heating circuits and control the temperature by setting the direct heat setting.
For this purpose, I would like to change from compensation curve to direct heat.
I have found a sensor that reflects the current configuration - but not a setting to change it:
TOP76 | main/Heating_Mode | Compensation / Direct mode for heat (0 = compensation curve, 1 = direct)
Describe the solution you'd like
So - the feature request is to add the ability to change the mode between direct heat and compensation curve control.
Describe alternatives you've considered
Changing it from the display - but  that is not really an option :-)
Additional context
Nothing I can think of :)

Hello,
I think you should request this feature first on the upstream project: https://github.com/Egyras/HeishaMon.
This integration is just the glue between heishamon and home-assistant.

Of cause - I mised up the projects'
Thanks!


New hack up with couple small issues

New hack update
Use my fork of this repo and donwload ZIP, extract folder and load the folder as unpacked extension.
Note: This hack is not 100% fully functioning. There are a couple issues I've noted that need fixing:

Building and obstacle ceiling transparency not working
Bump fire not working

https://github.com/Kalaborative/surviv.io-cheat/blob/86f325c8344f7a59547787fddfbed0df053718f1/payload/gameRender.js#L43-L46

Transparency fix should be working, via 3a642e7

Keeping this open for easier access

Transparency still not working due to periodical game crash, it's been reverted. Still working on a fix for now.


Add doc for wigner

Codecov Report

Merging #23 (c4c9526) into master (c6f579c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #23   +/-   ##
=======================================
  Coverage   99.37%   99.37%
=======================================
  Files           6        6
  Lines         160      160
=======================================
  Hits          159      159
  Misses          1        1

Impacted Files
Coverage Δ

src/wigner.jl
100.00% <ø> (ø)

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 c6f579c...c4c9526. Read the comment docs.


[RFC] GH-69 In-memory chain service

@sennui This is a milestone towards GH-69 and I would appreciate your review.

The service lacks support for changing tracked chain / fork, i.e. the service can only track a chain that grows one header at a time on the top. See comment on force_insert_headers for this missing implementation;
The service has no persistence.

Depends on #90 (included in this PR). The only commit distinct for this PR is e67f91f.

The chain service is fine! Thanks @lucafavatella
I am merging event though there are TODOs. Its better for syncing with team.


Discussion - Rule 6. Capture environment metadata

This would perhaps benefit from a best suggested practice example?
How does this relate to Rule 8 (End the Dockerfile with build and run commands)?
Also:

conventions for naming and tagging images built from a Dockerfile that can be called on from other Dockerfiles?
in practice, there may also be issues regarding naming containers run from images, particularly when it comes to managing linked data volumes attached to containers that are perhaps started, stopped and restarted; or started, stop, deleted, and started de novo.

The "environment" word also makes me think of ENV and ARG variables. eg my example use case for this is On Not Faffing Around With Jupyter Notebook Docker Container Auth Tokens.

Image tagging is by now discussed a little bit.
Naming containers is out of scope, I think.


Lua 5.4 support

This issue tracks all changes required to support parsing Lua 5.4 code.
While PUC-Rio hasn't officially released Lua 5.4 yet, it already appears it is going to bring at least one syntactic innovation: attributes in local declarations, to implement immutable bindings and 'to-be-closed variables', i.e. a form of lexical cleanup/with statement/RAII. The EBNF is as follows:
	stat ::= local ‘<’ Name ‘>’ Name ‘=’ exp

I assume this particular syntax will change, as the current one does not permit declaring multiple attributes simultaneously, and there is no syntax for combining attributes with the local function construct.

Hmm, there is one way to have a variable be close and const simultaneously…
local x <close> = ...
local x <const> = x

Kind of verbose, but works.
(The grammar was changed so that attribute follows the identifier.)

Never mind, <close> is going to imply <const> anyway. So multiple attributes are a non-issue for now.
Another change is that labels from inner scopes will no longer be allowed to shadow those from outer scopes. So this:
do ::x:: do ::x:: end end

should fail to parse where it succeeded before. I'm not sure I like this change.

I have added support for Lua 5.4 local attributes in my fork, though I don't feel confident making a pull request (haven't run tests, nor am I certain my implementation is the best way to handle this). The commit is here in case it is of any interest
https://github.com/TwoLivesLeft/luaparse/commit/1e88e5d2c04c83c5bc4a967c6002cc2f38a396e1

I have added support for Lua 5.4 local attributes in my fork, though I don't feel confident making a pull request (haven't run tests, nor am I certain my implementation is the best way to handle this). The commit is here in case it is of any interest
https://github.com/TwoLivesLeft/luaparse/commit/1e88e5d2c04c83c5bc4a967c6002cc2f38a396e1


BUG: Conform to cuda toolkit/cuda driver compatibility

Description
TLDR: the latest jax/jaxlib  do not support GPU with cuda-11.6.2 and nvidia driver version 470 even though this is within the compatibility specs of the cuda toolkit. Downgrading to cuda-11.4.2 works.I think upgrading the driver version would also work, but this would be a major task for a grid of our scale.
The error message is the typical:
jax.devices()
>>> [GPUDevice(0)
jax.numpy.ones(3)
>>>RuntimeError: Unknown: no kernel image is available for execution on the device

Setting the xla_gpu_force_compilation_parallelism=1 works but has a performance hit.
I suspect that upgrading the driver to 500+ would fix this problem. However, according to Table 2 in the CUDA toolkit specification, cuda 470 is compatible with cuda-11.6.2.
is there a way that jax (or rather xla) could conform to the minimum requirements there, so that if NVIDIA claims that driver v.470 works with cuda v.11.6.2 then it should work for jax as well?
(Happy to address this question to XLA team directly if that would be more relevant.)
What jax/jaxlib version are you using?
jax 0.3.16, jaxlib 0.3.15
Which accelerator(s) are you using?
V100
Additional System Info
Python 3.8

Your driver is too old:
https://github.com/google/jax#pip-installation-gpu-cuda
"
You must use an NVidia driver version that is at least as new as your CUDA toolkit's corresponding driver version. For example, if you have CUDA 11.4 update 4 installed, you must use NVidia driver 470.82.01 or newer if on Linux. This is a strict requirement that exists because JAX relies on JIT-compiling code; older drivers may lead to failures.
"
11.6.2 CUDA requires driver 510.47.03 or newer on Linux.
(We can probably do better than this in the future, but that's the current compatibility requirement from JAX.)

I should add there's a workaround: take the ptxas from an older CUDA toolkit that is compatible with your driver and put it in your PATH. That will work around the problem.

@ilemhadri It's actually not related to the JAX version. It's related to the version of ptxas in your PATH! If you have a new ptxas in your PATH, you need a matching driver. But as I mentioned, you can just downgrade that locally.

Thanks @hawkinsp -- Closing this issue for now as that addresses my concerns -- with a bit of extra work, hacking the ptxas is feasible in our case.


refactor(part 1): utils

I highly recommend looking through each commit individually, it will be much easier to review.
The util/ folder has become very cluttered, it's just a place where we put anything that's not a cog. This is ugly!
This PR re-organizes the directory from the current layout:
Pax-Academia/
└── util/
    ├── code_detection/
    │   └── ...
    ├── database.sqlite
    ├── db_builder.py
    ├── db_update.py
    ├── dev.py
    ├── embed_builder.py
    ├── ERD.mdj
    ├── Logging.py
    └── README.md

to a new, well-organized layout:
Pax-Academia/
├── code_detection/
│   └── ...
├── database/
│   ├── __init__.py
│   ├── database.sqlite
│   ├── schema.py # formerly: "db_builder.py"
│   └── migrate.py # formerly: "db_update.py"
├── message_formatting/
│   ├── views/
│   │   └── feedback.py # formerly: "dev.py"
│   └── embeds.py # formerly: "embed_builder.py"
└── util/
    ├── logger.py # formerly: "Logging.py"
    ├── limiter.py # a new home for `@limit`
    └── ERD.mdj

I also added a new database/README.md that explains how our database works.
I also removed log.txt from /view-database because

that didn't make any sense anyway, it's not a database
it makes the code (and typing) unnecessarily complex
you can easily view that file via /view-logs

This PR is the precursor to https://github.com/Arborym/Pax-Academia/pull/229.

See comments in discord


Error: HandshakeException: Connection terminated during handshake

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Try to run an http package request to any valid url
Expected results
That the response will be returned
Actual results
I am receiving the below error on Android
Error: HandshakeException: Connection terminated during handshake
This started after updating to Flutter 3.13.1. It will not let me sign into my app. It also will not let someone that is signed in authenticate with the saved credentials.
Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output

[✓] Flutter (Channel stable, 3.13.1, on macOS 13.5.1 22G90 darwin-arm64, locale en-US)
• Flutter version 3.13.1 on channel stable at /Users/rickeylee/Desktop/dev/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision e1e47221e8 (8 days ago), 2023-08-22 21:43:18 -0700
• Engine revision b20183e040
• Dart version 3.1.0
• DevTools version 2.25.0
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
• Android SDK at /Users/rickeylee/Library/Android/sdk
• Platform android-33, build-tools 33.0.2
• ANDROID_HOME = /Users/rickeylee/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 14E300c
• CocoaPods version 1.11.3
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2022.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
[✓] VS Code (version 1.81.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.70.0
[✓] Connected device (4 available)
• SM F926U (mobile)            • RFCR802EMHY                              • android-arm64  • Android 13 (API 33)
• rickey lee’s iPhone (mobile) • d0545eb2ff26e1c087d1b29c26f8e15da19284bb • ios            • iOS 16.6 20G75
• macOS (desktop)              • macos                                    • darwin-arm64   • macOS 13.5.1 22G90 darwin-arm64
• Chrome (web)                 • chrome                                   • web-javascript • Google Chrome 116.0.5845.110
[✓] Network resources
• All expected network resources are available.
• No issues found!

I can confirm downgrading back to 3.10 works.

@rlee1990
Can you check this and see if you are case resembles it or not ?
If yes, you'll need to follow-up in the linked dart-lang issue.

@darshankawar I looked at this and do not believe this is the same. I do not receive any error towards any package I just receive an error for any connection attempt since upgrading the Flutter SDK.

@rlee1990 Thanks for the update. Does the error occur only using VSCode in debug mode ?

@darshankawar no I got it also in android studio in debug mode

Using the example here and running with latest master version in Pixel 6 emulator doesn't give me the reported error.

@darshankawar we are not using master we are using the stable channel.

I'm also having this issue after upgrading from 3.10 to 3.13.2 on Stable channel.
All coming from the http package when making https calls.
Happens in debug mode on both Android and iOS device.

@DanTup for thoughts on the error reported.

It's hard to say without a repro (or confirmation it occurs with the example linked above).
Two questions I have for those that are hitting this though:

If you ensure both "All Exceptions" and "Uncaught Exceptions" are unticked in the VS Code debug sidebar, does this still occur?
If you click the Resume (play) button on the debug toolbar when the error occurs, does the app continue normally or show an error?

If you ensure both "All Exceptions" and "Uncaught Exceptions" are unticked in the VS Code debug sidebar, does this still occur?

No, if I untick both things seem to work normally (have not done conclusive testing on all parts of app).

If you click the Resume (play) button on the debug toolbar when the error occurs, does the app continue normally or show an error?

Clicking the Resume button skips to the next exception (every network call basically).

No, if I untick both things seem to work normally (have not done conclusive testing on all parts of app).

And if you have only "Uncaught exceptions" ticked, does it occur?
If so, then I think this is likely the same issue as https://github.com/dart-lang/sdk/issues/53334. A recent bug causes the VM to treat some caught exceptions as uncaught and pause the debugger. I believe there's a plan to hotfix this but for now the best workaround is to leave the exception tickboxes unticked unless specifically debugging an exception.
If it doesn't occur when only "Uncaught exceptions" is ticked and only occurs when "All exceptions" is ticked, then this is working as intended (that is, you're asking the debugger to pause on all exceptions, even though that are handled/caught). There's an issue at https://github.com/flutter/devtools/issues/5883 discussing whether this behaviour is really desirable or whether caught exceptions in non-debuggable code should be excluded.

And if you have only "Uncaught exceptions" ticked, does it occur?

Yes. All exceptions was unticked.
Thanks for the debugging. I will leave both unticked for now. 👍

So yes the example runs just fine.
My issue is only on Android when the Uncaught exceptions are ticked it will not allow the app to function at all.
When I untick the Uncaught exceptions

Thanks for confirming this. Based on comments above, I will close this issue, please follow up on the Dart issue for updates.


Bug fix: Update-DSAsset -LargeImageKey "icon" not working #6

Fixed the bug #6

Commit: (https://github.com/potatoqualitee/discordrpc/pull/15/commits/fd031a90e1ab7bcbad77165905551307f4f6e96b)
Is related to: #13

Should help people understand in the future that Discord has a limit on the characters of the URL.


Admonish Blazor iframe sign in

Fixes #18548
Thanks @marshallr12! :rocket:
Javier ... not sure about the wording on this one. I say configure the behavior with the IP because there isn't a way to configure it on the app side AFAIK.
Engineering discussion is at :point_right: https://github.com/dotnet/aspnetcore/issues/22343

Err, this is not correct to the best of my understanding. We should not have this in the docs. Using an iframe to sign-in is used within the OAuth and OPEN ID Connect specs and its perfectly fine. X-Frame-Options is not a standard and is legacy, it is recommended to use CSP with a proper frame ancestors value to constrain the iframe to allowed domains, but even if that is not the case, there is no security concern here.

@blowdart said ...

Given that safari has now irrevocably broken iframe login in the name of privacy we shouldn't be recommending it any more in docs, but rather switch to using the popups method.

Reference: https://github.com/dotnet/aspnetcore/issues/22343#issuecomment-639117413

I'm going to move my note on the engineering issue over here. Even if we went forward with the guidance on this PR, it isn't (apparently) actionable guidance because control over the approach (popup or redirect) is either something that I don't know how to configure or it's something that can't be configured. Also, I've hit some strange behavior recently with https://github.com/dotnet/AspNetCore.Docs/pull/18652.
Here are my remarks ...
IIRC, I read in MSAL docs that one can configure the type of login (popup or redirect) by setting LoginMode to Popup or Redirect in the AD config settings. However, I understand that such a setting might pertain to using MSAL.NET directly. I tried setting it to Redirect in a test app (based on our Azure AD guidance) that was using the popup approach, but it had no effect. I assumed that it was hardwired into the framework at this point ... no dev setting was mentioned when we were putting the docs up.
Recently, strange popup/redirect behavior appeared while I was working on restoring state with RemoteAuthenticatorViewCore ... fixing up our coverage and fleshing it out a bit more ...
Update Blazor WASM security state container
https://github.com/dotnet/AspNetCore.Docs/pull/18652
The app (standalone WASM with AAD) is now a bit scatterbrained about which approach to use. It's throwing up an empty popup, and the underlying browser window is using the redirect approach. I show a screenshot on that PR of what's happening here. I close the popup, and the app signs in users and behaves normally using the redirect approach. This behavior only comes about due to the changes on that PR with RemoteAuthenticatorViewCore.
I need guidance to proceed ...

If there's a fix for the behavior, let me know ... I'll write it into the updates on that PR.
If it's something that we need to call out in text (e.g., this is a temporary known issue), I'll add a NOTE on it there.
If that PR can't proceed without engineering work, then let me know if I need to create an engineering issue. In that case tho, shouldn't we remove that section from the topic and not support restoring state at this time? I don't think we can put up broken guidance and not even have a NOTE about it.

@javiercn See https://leastprivilege.com/2020/03/31/spas-are-dead/ for how Safari is breaking SPAs

@blowdart it is not clear to me what breaks in those scenarios. It is somewhat clear that it will break silent sign-in, but I'm not confident on how it will break silent refresh.
I don't think we have an alternative now on how to handle these changes if they in fact, end up breaking OAuth scenarios like silent refresh. We'll have to see how things evolve in the future, but giving this guidance at this time is not adequate IMO. Specially given the lack of a proper alternative as BFF doesn't cover the same set of scenarios (no support for standalone apps) and I don't think we want to recommend using refresh tokens in the browser even with all the proper mitigations in place.

Fair. You own blazor auth, so it's your guidance and decision here :)

Since one of the "Hosted with AAD B2C" scenario already creates a BFF after following the tutorial here is it possible to to enable "dotnet new blazorwasm" to create an app that uses the SameSite cookie approach?

Since one of the "Hosted with AAD B2C" scenario already creates a BFF after following the tutorial here is it possible to to enable "dotnet new blazorwasm" to create an app that uses the SameSite cookie approach?

That is not a BFF we don't stamp a cookie out of the result of an OAuth interaction and the entire OAuth dance happens between the Browser and Azure AD B2C. The server is never involved.
 While the number of Browsers that don't support SameSite cookies is going down quickly, we are still not at a point where we want to base our security implementations on it.

What I meant by BFF in the "Hosted with AAD B2C" scenario is that it involves the webassembly front end tied to a backend web API that provides the Weather Forecast data. The WeatherForecastController already has an [Authorize] attribute. SameSite cookie support currently appears to be similar to webassembly support except for the Safari bug, at least based on looking at caniuse.com.

SameSite cookie support currently appears to be similar to webassembly support except for the Safari bug, at least based on looking at caniuse.com.

Yes, but that approach prevents you from using other things in your app like MVC or Razor Pages without either complicating the security design a lot or forcing you to implement CSRF protection in all your API endpoints.
The difference here is that the APIs always use a token for Authorization, the moment you switch to a cookie, you are exposing yourself to CSRF from browsers that don't support SameSite and you can't predict in general whether a user will be able to login on a site without a browser that supports samesite cookies.

I see. You guys have a great product - I started with classic ASP, and IMO this is the best technology coming out of Microsoft since .NET 1.0 .

Has anything happened with with.   I am still getting the below from the blazor wasm app.
Refused to display 'https://xxx.auth.ap-southeast-2.amazoncognito.com/' in a frame because it set 'X-Frame-Options' to 'deny'.

@sravimohan ... We don't work on closed issues/PRs. Also, that's already been addressed here: Microsoft isn't the problem here. The specs are being followed. You'd need to take that up with Amazon support.


Create fmf config json shcema and upload it to schemastore

As a developer, I'd like some guidance that I am not making a mistake in define fmf configs. As one of the options here is to create a json schema and upload it to https://github.com/schemastore/schemastore/ ,
Even though this solution would require POC.
I would approach it via pydantic models
Another option could be to generate a json from the fmf configs and check them against defined json shema (i.e. tmt test lint)

@psss if you want, I can try to do some POC

@ZhukovGreen Please do, that would be a great thing to have available for users.

This sounds very useful. Pity that vim is not included in the list of supported editors :(

@psss I believe it might work for vim as well. Check https://github.com/Quramy/vison. Also coc plugin for vim might also work https://github.com/neoclide/coc-json

Nice, that sounds promising!

tested on vim with https://github.com/neoclide/coc-yaml plugin and yaml.schemaStore.enable = true. Works nicely. Really love it:)


Move Schedule Notes on Mobile

Summary of changes
Asana Ticket: ⏱Schedules | Sidebar - Move Subway notes on Mobile

Assigned to: @NAME

@ingridpierre this should be good to go


Playlist text and not image

Could anyone give me your config-xpui.ini file pls?

problem is fixed in #25   but not merge yet

@lemonbigbig Sorry brother i was busy thanx for the fix


Fix WeCom cannot get real name issue

Currently we get a long ID for user's real name for WeCom:

This is because:

And we need to call this additional API to get real name: https://work.weixin.qq.com/api/doc/90001/90143/91958

@Steve0x2a

Impossible to do with current WeCom API


Fix dev build

Description

Fixes https://github.com/projectcalico/calico/issues/3742
Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

Deploy preview for calico ready!
Built with commit e7d3e6ce1bee7af48e70d049d447c1a78349295f
https://deploy-preview-3855--calico.netlify.app


Improve plural marks

This PR combines duplicate parts of plural strings.
Before:
#: src/components/moderation/LabelsOnMe.tsx:57
msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}"
msgstr ""

#: src/components/moderation/LabelsOnMe.tsx:63
msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}"
msgstr ""

After:
#: src/components/moderation/LabelsOnMe.tsx:57
msgid "{0, plural, one {# label} other {# labels}} has been placed on this account"
msgstr ""

#: src/components/moderation/LabelsOnMe.tsx:63
msgid "{0, plural, one {# label} other {# labels}} has been placed on this content"
msgstr ""

Hmm. I'm not sure this makes sense because it leaves less freedom to other languages to rearrange words (if needed for grammar).

@gaearon It looks like you can freely reposition the plural string ({0, plural, one {# label} other {# labels}} in the example above) or put multiple of them.


feat(netlify): use v2 functions and re-implement isr via targeted cache-control headers

🔗 Linked issue

Supersedes https://github.com/unjs/nitro/pull/1823.
Closes https://github.com/unjs/nitro/issues/1842.
Closes https://github.com/unjs/nitro/issues/1938.
❓ Type of change

[x] 📖 Documentation (updates to the documentation, readme, or JSdoc annotations)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[x] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Netlify introduced a new Functions interface last year. This updates Nitro to use this interface.
Previously, ISR in Nitro had been implemented on Netlify via its proprietary On-Demand Builders platform primitive, which only supports "v1" Functions. Now that there's momentum around Targeted HTTP Cache Control and that Netlify supports it, we can implement ISR in Nitro via these simple, standard HTTP headers instead.
By virtue of switching to the standard Netlify Functions interface, this also happens to:

allow streaming responses
add better support for "hybrid rendering", e.g. if you set prerender: true on a specific route, that will actually work as intended now
remove the imposed 60s delay after a background generation request before which the new response will be served for subsequent requests (this was an ODB limitation)
fix a bug where we were setting set-cookie: undefined on responses
remove usage of an undocumented functions-internal/server.json Netlify config file
... which wasn't working when using netlify dev in local development anyway

This also configures a human-friendly name and some metadata on the function.
Note: I removed the netlify_builder preset, since there's no reason to use this anymore. I'm not even sure why it was ever exposed as a preset. I did this as a separate commit, so if you consider this a breaking change I can pull it out into a separate PR.
📝 Checklist

[x] I have linked an issue or discussion.
[x] I have updated the documentation accordingly.

(omitted 2fc17ffcf546d33d54c4afec343c3513723c2e19 for now to reduce diff)

Super @serhalp 😍


[Question]:  AutoMergingRetriever with MongoDB

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Hello, I am trying to setup a RAG using auto merging index with MongoDB.  I've managed to create the index on MongoDB but when I try to use the query engine, it throws the following stack trace:
Exception has occurred: ValueError       (note: full exception trace is shown but execution is paused at: _run_module_as_main)
doc_id ca9725c0-17ae-417e-9b1f-c2fd3b9b12ce not found.

This is how I created my index, documents come from SimpleMongoReader:
    chunk_sizes = chunk_sizes or [1024, 512, 128]
    node_parser = HierarchicalNodeParser.from_defaults(chunk_sizes=chunk_sizes)
    nodes = node_parser.get_nodes_from_documents(documents)
    leaf_nodes = get_leaf_nodes(nodes)

    embed_model = HuggingFaceEmbedding(model_name=embed_model_name)

    merging_context = ServiceContext.from_defaults(
        llm=llm,
        embed_model=embed_model,
        node_parser=node_parser
    )

    atlas_vector_search = MongoDBAtlasVectorSearch(
        mongodb_client,
        db_name = DB_NAME,
        collection_name = DEST_COLLECTION_NAME,
        index_name = EMBEDDING_VECTOR_INDEX
    )

    vector_store_context = StorageContext.from_defaults(vector_store=atlas_vector_search)
    vector_store_context.docstore.add_documents(nodes)

    vector_store_index = VectorStoreIndex(nodes=leaf_nodes,
                                          storage_context=vector_store_context,
                                          service_context=merging_context,
                                          show_progress=True)

    return vector_store_index

And then this is how I try to setup a query engine to use this:
    auto_merging_store = MongoDBAtlasVectorSearch(
        mongodb_client,
        db_name = DB_NAME,
        collection_name = DEST_AUTO_MERGING_COLLECTION_NAME,
        index_name = EMBEDDING_AUTO_MERGING_VECTOR_INDEX
    )
    auto_merging_index = VectorStoreIndex.from_vector_store(auto_merging_store, service_context=service_context_bai_embedding)
        base_retriever = auto_merging_index.as_retriever(similarity_top_k=similarity_top_k)
    retriever = AutoMergingRetriever(
        base_retriever, auto_merging_index.storage_context, verbose=True
    )
    rerank = SentenceTransformerRerank(
        top_n=rerank_top_n, model="BAAI/bge-reranker-base"
    )
    auto_merging_engine = RetrieverQueryEngine.from_args(
        retriever, node_postprocessors=[rerank]
    )
    auto_merging_engine.query(question)

doc_id seems like an internal implementation of llama-index, as this is not a field I have in my DB.  So I'm not sure what I'm missing.

@dosubot
doc_id is not a field I specified or managed in my mongodb and it's managed by the llama-index library.  My data has no field doc_id, and I don't specify doc_id anywhere in my code when I am building the auto merging index and the auto merging retriever.
I also didn't see any reference to id_key in any params when building the index.  Can you elaborate?

After a lot of debugging, I finally found what the issue was.  For those who also run into this issue, I fixed this by setup a MongoDB doc store.
   //Set the doc store into the storage context
    mongo_doc_store = MongoDocumentStore.from_uri(uri=MONGODB_URI, db_name=DB_NAME)
    vector_store_context = StorageContext.from_defaults(docstore=mongo_doc_store, vector_store=atlas_vector_search)

    //add the full list of nodes into docstore
    vector_store_context.docstore.add_documents(nodes)

    //embed only leaf nodes
    vector_store_index = VectorStoreIndex(nodes=leaf_nodes,
                                          storage_context=vector_store_context,
                                          service_context=merging_context,
                                          show_progress=True)

    auto_merging_vector_index = VectorStoreIndex.from_vector_store(
        vector_store=atlas_vector_search,
        service_context=merging_context
    )

    auto_merging_engine = get_auto_merging_query_engine(auto_merging_vector_index, vector_store_context)
    response = auto_merging_engine.query(eval_questions[0])

In my original code, when attempting auto merging retrieval, finding the parent nodes always failed because the self._storage_context.docstore  as shown below was always empty.  This was because the default (local) doc store was used along with my mongodb vector store and it never gets serialized (which is expected).
# Fetch actual parent node if doesn't exist in `parent_nodes` cache yet
            parent_node_id = parent_node_info.node_id
            if parent_node_id not in parent_nodes:
                parent_node = self._storage_context.docstore.get_document(
                    parent_node_id
                )
                parent_nodes[parent_node_id] = cast(BaseNode, parent_node)

            # add reference to child from parent
            parent_cur_children_dict[parent_node_id].append(node)


Font Transformer vs W3C Spec

Hi Lukas!
I am wondering about the font transformer that you have and inconsistency with the spec. They use letter spacing you are using font style. Am I missing something?
Your transformer:
{
  typography: {
    body: {
      value: {
        fontWeight: 500,
        fontSize: "16px",
        lineHeight: "22px",
        fontFamily: "Helvetica",
        fontStyle: "italic"
      },
      $type: "typography"
    }
  }
}

W3C Spec

"heading-level-1": {
  "$type": "typography",
    "$value": {
      "fontFamily": "Roboto",
      "fontSize": "42px",
      "fontWeight": 700,
      "letterSpacing": "0.1px",
      "lineHeight": 1.2
}

Hey @jkinley this is correct. The reason is that the css font property does not support letterSpacing, but it does support fontStyle which again w3c does not support.
So it makes sense to allow fontStyle (you are free to omit this prop if you don't need it).
Since style dictionary can't split tokens, we can't support letterSpacing as we can only output one token font.
Hope that makes sense. Feel free to reopen if I missed something.


Force new resource when path and path prefix change

Marked the path and path_prefix with ForceNew. When any of these fields change, Terraform will destroy the old secret on SecretHub and create a new one on the new path.

@florisvdg is taking another look and makes a call on what to do with this PR.

Main question I have: if the path_prefix and the path both change but the resulting id does not change, why do we force a new secret to be created? Can this be avoided?

Unfortunately not, ForceNew is ForceNew, no way to check with other fields first. The only good way to solve this problem would be to have a secrethub mv. Then we can drop the ForceNew and check ourselves if it actually changed during a resource update.
Maybe we should deprecate path_prefix altogether, and just advise to use variables instead... That's some much more straightforward and Terraform native - no further explanation needed.

Summing up, there are 3 options:
1. Close PR and maintain status quo
This does mean that when the path changes and secrets get written to the new location, the secret at the old location does not get deleted.
2. Merge PR
Secrets get properly moved, not leaving them at the old location. Downside: when you change the path_prefix and path fields, but the actual resolved path stays the same, the secret unnecessarily gets deleted and recreated.
3. Close PR and deprecate path_prefix
Rely on Terraform variables instead.

Nice work Floris, really clear explanation. I'd say choose option 3: rely on variables instead. When in doubt, native methods over custom stuff.
It actually makes a whole lot of sense to use variables. That's way more powerful than path prefix as it allows you to combine different things.
And we avoid all the wacky shit so we're eliminating complex edge cases at the same time! 🎉

Well, one downside of variables is that they do not support interpolation, not even using other variables. The native way solve this is to use a locals block. How this would look in practice:
variable "environment" {
  default = "dev"
}

locals {
  app_secrets = "company/repo/${var.environment}"
}

resource "secrethub_secret" "db_password" {
  path = "${local.app_secrets}/db/password"

  generate {
    length = 25
  }
}

Yes fair enough. That's a valid point. But I can live with that. It's not super hard and only necessary for a small subset of cases. For many cases just using variables will be enough, e.g. ${var.repo}/${var.env}/myapp/mysecret works fine.

Closing in favor of https://github.com/secrethub/terraform-provider-secrethub/pull/44.


useScrollbar's scrollTo always throws errores/doesn't work

Hello,
Tried to animate the scroll to top of page (to then trigger a transition animation) with useScrollbar scrollTo, however seems to be not working correctly. Always throws errors:
Codesandbox: https://codesandbox.io/s/hello-scrollscene-forked-wo9fdr?file=/src/App.jsx
Uncaught TypeError: Cannot read properties of undefined (reading 'stop')
    at Object.scrollTo (lenis.modern.mjs:167:127)
    at eval (App.jsx:53:15)

Doesn't seem to be an issue on Lenis latest issue as showcased in this demo using Latest lenis and using their scrollTo:
Codesandbox: https://codesandbox.io/s/still-forest-jh6rnx

any updates on this ? running through the same issue.

+1 @ffdead

Will take a look today!

Hi guys, please try v8.11.1
Since lenis is created as a side effect you need to also call the scrollTo in a useEffect (or from a user interaction):
  const scrollbar = useScrollbar();

  useEffect(() => {
    scrollbar.scrollTo(10000, { duration: 5 });
  }, [scrollbar]);

Important to add scrollbar as a dep to the useEffect since it won't have created lenis on the first render.
Option 2
You can also grab a ref to the scrollbar:
const scrollbar = useRef()

return (
    <SmoothScrollbar ref={scrollbar}>
)

This ref is allows imperative calls to the following methods:

Thank you @ffdead .
works perfectly. in v8.11.1


fix: point GraphiQL handler to correct server path

Description
Point GraphiQL handler to correct path as mentioned in docs.

Update path
Remove unnecessary request header

Related Issue
See #179 for more details.

Thanks for the tips @djhi!


Fixed replace in selection with backslashes

Description of Changes
Earlier backslashes were mishandled in "Replace selection", see #6416 and comments. Basically, most backslashes were removed except before certain characters.

[x] Added unit test(s) covering the changes (if testable)

This line
"This functions must not be used for the replacement string in sub() and subn(), only backslashes should be escaped."
from https://docs.python.org/3/library/re.html#re.escape gave the solution. Earlier, the replace text had been escaped using re.escape, now it is only a simple replace as replace_text.replace('\\', r'\\')
A test has been added to show that it can handle any type of combination of backslashes in the code, not only the control character combinations \n etc as the previous fix was for.
Issue(s) Resolved

Fixes #6416
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: Oscar Gustafsson/oscargus

Hello @oscargus! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/plugins/editor/widgets/tests/test_editor.py:

Line 446:5: E265 block comment should start with '# '