USB 3.0 unreliability

I have a problem with data transfer on an usb hub.
when under load, the usb connection the the drives that are connected to the hub crashes
https://pastebin.com/JGM3xKDz
the hub is a4 port powered hub by Anker, and two powered summing disks are connected to it
hub's lsusb - https://pastebin.com/MiAMh9K5
I'm running 4.4.154-1122-rockchip-ayufan-g7859b9b904a9
with OMV installed
i'v tried the following advice https://bbs.archlinux.org/viewtopic.php?id=183190 on comment #12, which helped a little, the drives became more stable, but disconnected after all.

Excited, briefly testing usb hub transfers that would previously crash with rsync, the new Manjaro-arm release seems to transfer fine SO FAR, on it less than 24 hours, need further testing, hope ayufan can take whatever it is that fixes it in the Manjaro release
Tested with simultaneously transferring from usb a to usb b and usb c to usb d all on the same hub connected to the usb3 port

running:
Linux rockpro64 4.4.167-1161-rockchip-ayufan-g6f1664023387 #1 SMP Fri Mar 22 23:03:38 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
doinf test:
time dd if=/dev/zero of=swap2g bs=1024 count=2097152
usb 2 works ok ~40MB/sec on small test
but if I plug it into USB 3.0 it fails, when I try same test:
Mar 24 19:22:35 rockpro64 kernel: [   47.712519] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
Mar 24 19:29:10 rockpro64 systemd-timesyncd[395]: Synchronized to time server <IP_ADDRESS>:123 (ntp.ubuntu.com).
Mar 24 19:29:18 rockpro64 kernel: [   57.576936] usb 4-1: reset SuperSpeed USB device number 2 using xhci-hcd
Mar 24 19:29:30 rockpro64 kernel: [   69.147234] wl_run_escan: LEGACY_SCAN sync ID: 3, bssidx: 0
Mar 24 19:29:34 rockpro64 CRON[876]: (root) CMD (for i in pgrep "ftpd|nfsiod|smbd|afpd|cnid" ; do ionice -c1 -p $i ${XU4_HMP_Fix}; done &>/dev/null)
Mar 24 19:29:49 rockpro64 kernel: [   88.103647] usb 4-1: reset SuperSpeed USB device number 2 using xhci-hcd
Mar 24 19:30:01 rockpro64 CRON[883]: (root) CMD (for i in pgrep "ftpd|nfsiod|smbd|afpd|cnid" ; do ionice -c1 -p $i ${XU4_HMP_Fix}; done &>/dev/null)
Mar 24 19:30:01 rockpro64 systemd[1]: Started Session 7 of user root.
Mar 24 19:30:13 rockpro64 kernel: [  112.131154] wl_run_escan: LEGACY_SCAN sync ID: 4, bssidx: 0
Mar 24 19:30:20 rockpro64 kernel: [  119.074033] usb 4-1: reset SuperSpeed USB device number 2 using xhci-hcd
Mar 24 19:30:30 rockpro64 kernel: [  129.202231] usb 4-1: reset SuperSpeed USB device number 2 using xhci-hcd
Mar 24 19:30:35 rockpro64 kernel: [  134.942379] usb 4-1: USB disconnect, device number 2
Mar 24 19:30:35 rockpro64 kernel: [  134.957823] sd 0:0:0:0: Device offlined - not ready after error recovery
Mar 24 19:30:35 rockpro64 kernel: [  134.965603] sd 0:0:0:0: [sda] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x01 driverbyte=0x00
Mar 24 19:30:35 rockpro64 kernel: [  134.965644] sd 0:0:0:0: [sda] tag#0 CDB: opcode=0x2a 2a 00 04 4b 94 b0 00 00 f0 00
Mar 24 19:30:35 rockpro64 kernel: [  134.965663] blk_update_request: I/O error, dev sda, sector 72062128
Mar 24 19:30:35 rockpro64 kernel: [  134.966761] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9008128)
Mar 24 19:30:35 rockpro64 kernel: [  134.966783] Buffer I/O error on device sda2, logical block 619008
Mar 24 19:30:35 rockpro64 kernel: [  134.967496] Buffer I/O error on device sda2, logical block 619009
Mar 24 19:30:35 rockpro64 kernel: [  134.968197] Buffer I/O error on device sda2, logical block 619010
Mar 24 19:30:35 rockpro64 kernel: [  134.968897] Buffer I/O error on device sda2, logical block 619011
Mar 24 19:30:35 rockpro64 kernel: [  134.969596] Buffer I/O error on device sda2, logical block 619012
Mar 24 19:30:35 rockpro64 kernel: [  134.970296] Buffer I/O error on device sda2, logical block 619013
Mar 24 19:30:35 rockpro64 kernel: [  134.970996] Buffer I/O error on device sda2, logical block 619014
Mar 24 19:30:35 rockpro64 kernel: [  134.971694] Buffer I/O error on device sda2, logical block 619015
Mar 24 19:30:35 rockpro64 kernel: [  134.972392] Buffer I/O error on device sda2, logical block 619016
Mar 24 19:30:35 rockpro64 kernel: [  134.973092] Buffer I/O error on device sda2, logical block 619017
Mar 24 19:30:35 rockpro64 kernel: [  134.974679] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9008384)
Mar 24 19:30:35 rockpro64 kernel: [  134.975603] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9008640)
Mar 24 19:30:35 rockpro64 kernel: [  134.976498] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9008896)
Mar 24 19:30:35 rockpro64 kernel: [  134.977412] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9009152)
Mar 24 19:30:35 rockpro64 kernel: [  134.978329] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 75497472 size 8388608 starting block 9009408)
Mar 24 19:30:35 rockpro64 kernel: [  134.979223] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 83886080 size 8388608 starting block 9009664)
Mar 24 19:30:35 rockpro64 kernel: [  134.980106] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 83886080 size 8388608 starting block 9009920)
Mar 24 19:30:35 rockpro64 kernel: [  134.981027] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 83886080 size 8388608 starting block 9010176)
Mar 24 19:30:35 rockpro64 kernel: [  134.981939] EXT4-fs warning (device sda2): ext4_end_bio:330: I/O error -5 writing to inode 12 (offset 83886080 size 8388608 starting block 9010432)
Mar 24 19:30:35 rockpro64 kernel: [  134.986542] sd 0:0:0:0: [sda] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x01 driverbyte=0x00
Mar 24 19:30:35 rockpro64 kernel: [  134.986593] sd 0:0:0:0: [sda] tag#0 CDB: opcode=0x2a 2a 00 04 4b 95 a0 00 00 f0 00
Mar 24 19:30:35 rockpro64 kernel: [  134.986634] blk_update_request: I/O error, dev sda, sector 72062368
Mar 24 19:30:36 rockpro64 kernel: [  135.628719] JBD2: Detected IO errors while flushing file data on sda2-8
Mar 24 19:30:36 rockpro64 kernel: [  135.628754] Aborting journal on device sda2-8.
Mar 24 19:30:36 rockpro64 kernel: [  135.629148] EXT4-fs (sda2): ext4_writepages: jbd2_start:<PHONE_NUMBER>854775807 pages, ino 12; err -30
Mar 24 19:30:36 rockpro64 kernel: [  135.630113] JBD2: Error -5 detected when updating journal superblock for sda2-8.
Mar 24 19:30:36 rockpro64 kernel: [  135.630255] EXT4-fs error (device sda2): ext4_journal_check_start:56: Detected aborted journal
Mar 24 19:30:36 rockpro64 kernel: [  135.630258] EXT4-fs (sda2): Remounting filesystem read-only
Mar 24 19:30:36 rockpro64 kernel: [  135.630260] EXT4-fs (sda2): previous I/O error to superblock detected
Mar 24 19:30:36 rockpro64 kernel: [  135.630271] EXT4-fs error (device sda2) in ext4_da_write_end:2927: IO failure
Mar 24 19:30:36 rockpro64 kernel: [  135.630273] EXT4-fs (sda2): previous I/O error to superblock detected
Mar 24 19:30:36 rockpro64 kernel: [  135.646393] JBD2: Detected IO errors while flushing file data on sda2-8
Mar 24 19:31:01 rockpro64 CRON[946]: (root) CMD (for i in pgrep "ftpd|nfsiod|smbd|afpd|cnid" ; do ionice -c1 -p $i ${XU4_HMP_Fix}; done &>/dev/null)
anyone go any suggestions, if you want me to run any tests please let me know.

USB 3.0 and USB-C is still borked. Use the latest mainline Kernel or - probably a better solution - a PCIE USB card.

No problem with the test.
`rock64@rockpro64:~$ time dd if=/dev/zero of=swap2g bs=1024 count=2097152
2097152+0 records in
2097152+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 13.889 s, 155 MB/s
real	0m13.900s
user	0m0.900s
sys	0m12.368s
`
Using
rock64@rockpro64:~$ uname -a Linux rockpro64 4.4.167-1161-rockchip-ayufan-g6f1664023387 #1 SMP Fri Mar 22 23:03:38 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
RP64v2.1, SSD on usb3.

I'm not 100% the cause of my problem is the same, but my rock64 USB3 is somewhat unreliable. System crashes unexpectedly during USB3 usage (5 hours into a large rsync for example).
Ubuntu: 18.04
Kernel: 4.4.167-1169-rockchip-ayufan-g3cde5c624c9c
Suspicious syslog entries: https://gist.github.com/curiousercreative/f2d62e434c2c23d664514de47d1f88e2

I'm getting instability and low speeds on USB3 with stretch-openmediavault-rock64-0.8.0rc10-1125-arm64.img
Kernel:
root@rock64:~# uname -a
Linux rock64 4.4.167-1181-rockchip-ayufan-gd20421e03128 #1 SMP Tue Apr 9 17:44:02 UTC 2019 aarch64 GNU/Linux

The errors I see:
[ 1558.961816] rockchip-vop ff370000.vop: [drm:vop_crtc_enable] Update mode to 3840x2160p60, type: 11
[ 1561.882330] rockchip-vop ff370000.vop: [drm:vop_crtc_enable] Update mode to 3840x2160p60, type: 11
[ 1624.903684] usb 5-1: new SuperSpeed USB device number 2 using xhci-hcd
[ 1624.972541] usb 5-1: New USB device found, idVendor=0781, idProduct=558c
[ 1624.972547] usb 5-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 1624.972552] usb 5-1: Product: Extreme SSD
[ 1624.972556] usb 5-1: Manufacturer: SanDisk
[ 1624.972560] usb 5-1: SerialNumber:<PHONE_NUMBER>33343030353134
[ 1625.011522] dwmmc_rockchip ff500000.dwmmc: Unexpected interrupt latency
[ 1625.043522] dwmmc_rockchip ff500000.dwmmc: Unexpected interrupt latency
[ 1625.063519] dwmmc_rockchip ff500000.dwmmc: Unexpected interrupt latency
[ 1625.079519] dwmmc_rockchip ff500000.dwmmc: Unexpected interrupt latency
[ 1625.084889] usbcore: registered new interface driver usb-storage
[ 1625.099521] dwmmc_rockchip ff500000.dwmmc: Unexpected interrupt latency
[ 1625.104215] scsi host0: uas
[ 1625.104648] usbcore: registered new interface driver uas
[ 1625.105475] scsi 0:0:0:0: Direct-Access     SanDisk  Extreme SSD      1012 PQ: 0 ANSI: 6
[ 1625.106957] scsi 0:0:0:1: Enclosure         SanDisk  SES Device       1012 PQ: 0 ANSI: 6
[ 1625.108630] sd 0:0:0:0: [sda] Spinning up disk...
[ 1626.111555] .ready
[ 1626.127831] sd 0:0:0:0: [sda] 488396800 512-byte logical blocks: (250 GB/233 GiB)
[ 1626.127838] sd 0:0:0:0: [sda] 4096-byte physical blocks
[ 1626.128608] sd 0:0:0:0: [sda] Write Protect is off
[ 1626.128615] sd 0:0:0:0: [sda] Mode Sense: 67 00 10 08
[ 1626.128880] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, supports DPO and FUA
[ 1626.129026] xhci-hcd xhci-hcd.9.auto: ERROR Transfer event for disabled endpoint slot 1 ep 2 or incorrect stream ring
[ 1626.129033] xhci-hcd xhci-hcd.9.auto: @00000000f4cf55c0 00000000 00000000 1b000000 01038001
[ 1626.146348] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, supports DPO and FUA
[ 1626.146454] sd 0:0:0:0: [sda] Attached SCSI disk
[ 1703.567919] systemd[1]: apt-daily.timer: Adding 59min 7.762977s random time.
[ 1704.015011] systemd[1]: apt-daily.timer: Adding 5h 49min 22.785356s random time.
[ 1704.313660] systemd[1]: apt-daily.timer: Adding 11h 11min 23.493945s random time.
[ 1704.689408] systemd[1]: apt-daily.timer: Adding 6h 13min 38.243589s random time.
[ 1705.989820] systemd[1]: apt-daily.timer: Adding 3h 41min 31.588168s random time.
[ 1706.418237] systemd[1]: apt-daily.timer: Adding 1h 29min 22.719973s random time.
[ 1706.718957] systemd[1]: apt-daily.timer: Adding 3h 48min 8.743877s random time.
[ 1707.293635] systemd[1]: apt-daily.timer: Adding 9h 23min 31.712494s random time.
[ 1731.619569] EXT4-fs (sda): recovery complete
[ 1731.636883] EXT4-fs (sda): mounted filesystem with ordered data mode. Opts: (null)
[ 1735.031742] xhci-hcd xhci-hcd.9.auto: ERROR Transfer event for disabled endpoint slot 1 ep 3 or incorrect stream ring
[ 1735.049441] xhci-hcd xhci-hcd.9.auto: @00000000f4cf5450 00000000 00000000 1b000000 01048000

[ 1735.031742] xhci-hcd xhci-hcd.9.auto: ERROR Transfer event for disabled endpoint slot 1 ep 3 or incorrect stream ring

I have the same issues with a WD backup plus slim self-powered external disk (using Asmedia ASM1153 controller).
With an externally powered 4 bay enclosure (JMicron JMS567 controller) everything is fine.

This seems to be duplicate of https://github.com/ayufan-rock64/linux-build/issues/112


prediction results

Can anyone tell me where to get the prediction priors box results during training?  Thanks!
I think it must be in some variable, but I fail to find it.

Now, I realize it's not impossible to see the results during training, sorry to ask so silly question. I closed it.


Update confluencemicrosoft-tutorial.md

document file updated

@dhivyagana - Can you review the proposed changes? Note that before we can merge, the exposed GUIDs must be removed from the image, and the image file name must be changed to all lowercase.
IMPORTANT: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

#sign-off

@v-ymundhe @dhivyagana  -

we can't use github links to images. i've changed the link to ./media/confluencemicrosoft-tutorial/sso-plugin-configuration-page.png which should work after the image file name is changed to match our criteria. (no uppercase characters allowed).

In addition, the image itself contains private information that must be removed or obscured (by masking it with the background color - no colored blocks or blurring) ... Every time there is all or part of the Entity ID ... it must be masked or replaced with obviously false fake ID.

The Certificate data must also be obscured.

After you've made these changes, tag @dhivyagana to review and sign-off and I will take another look. Thanks.
#hold-off

Hi @Jak-MS @dhivyagana
I have replaced image file and also file is visible in doc. Please check and let me know if any.

thanks @v-ymundhe - looks great!
@dhivyagana - merging this based on your previous approval. nothing has changed except to pass pr review. thanks!


Strict date parsing

Fixes #111

To ensure strict datetime parsing, I changed the format to use "uuuu" intead of "yyyy" however, this is less understandable for the average user when shown in an error message

Should we change this?


Debug server failed to initialized

VSCode Version:
OS Version:

Steps to Reproduce:

Does this issue occur when all extensions are disabled?: Yes/No

VSCode Version: 1.31.1

OS Version: MacOS Mojave 10.14.3

Hi there,
I am trying to setup the debug process for an ST NUCLEO board and a project downloaded from mbed. After trying several tools, I have finally come to use the ST-UTIL as debug server for ST-Link V2 device.
If I run it from a terminal window, the ST-Util finds my connected device and starts attending to port 4242. If I then run in another terminal window the arm-none-eabi-gdb, it connects immediately to the ST-Util and the debug process can start.
BUT, if I customize the launch.json file to use...
"MIMode": "gdb",
"MIDebuggerPath": "arm-none-eabi-gdb",
"debugServerPath": "st-util"
then, the launch process stops at the message...
1: (248) codeSign-stderr: /Users/Jorge/bin/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-gdb: code object is not signed at all
1: (255) Starting: "st-util"
1: (5269) <-logout
ERROR: Unable to start debugging. Debug server process failed to initialize.
and that's it. Debugging is aborted.
However, I've noticed that if I remove the line "debugServerPath": "st-util" and starts manually the st-util tool in a terminal window, the launch process is successful and debugging can be done.
I really don't know what else can I do.
Regards.

Hi @weinand ... can you clarify which extension do you think to be the responsible for this behavior?
Thanks.

Since you did not include any useful information about the extensions you are using (e.g. by filing the issue via VS Code's "Report Issue" command), I can only speculate that you are using some "gdb" debugger which hints towards the C/C++ debugger (https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools).

Ok, thanks. I did not know the right way to open an issue from VS Code. Sorry for that.


hotfix:修复django4.0后因文本转换编码函数force_text被重命名为force_str引起的报错问题

修复django4.0后因文本转换编码函数force_text被重命名为force_str引起的报错问题

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

@alibaba-oss


Mention structural typing in Quick Start

TypeScript Version:  2.0.3 / nightly (2.1.0-dev.201xxxxx)
Code
// A self-contained demonstration of the problem follows...
In your Quick start documentation (https://www.typescriptlang.org/docs/tutorial.html), could you please fix or make more clear on the bottom of the page in the Classes section that Interface and Class in the example ARE NOT RELATED, and that the nature of TypeScript is that it can be even an empty object without instantiating any class at all like so:
greeter({     firstname: "John",     lastname: "White" });
Since coming from a partially OOP background, it confused me a lot how come we instantiate a Student class object, but the function expets a Person interface object, and there is no connection between them except for same property names. Cheers
Expected behavior:
Actual behavior:

I'm stuck on this Quick Start example as well. The progression towards the final bit of code:
class Student {
    fullName: string;
    constructor(public firstName, public middleInitial, public lastName) {
        this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
}

interface Person {
    firstName: string;
    lastName: string;
}

function greeter(person : Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}

var user = new Student("Jane", "M.", "User");

document.body.innerHTML = greeter(user);

makes it seem like the Person interface is actually going to throw errors if var user = new Student("Jane", "M.", "User"); is modified to something like var user = new Student(1, "M.", 2);, but in reality the code compiles and runs just fine on both the command line and in Visual Studio Code.
So the obvious questions would be:

Why isn't TypeScript throwing errors? (Why isn't the interface connected when greeter explicitly uses it?), and
How should this be rewritten so that greeter(), Student, and Person are connected?

I don't understand what's being requested.

make more clear on the bottom of the page in the Classes section ... that it can be even an empty object without instantiating any class at all like so: greeter({ firstname: "John", lastname: "White" });

This is literally an example on the page already, with the minor variation of storing that object in an unannotated var first
var user = { firstName: "Jane", lastName: "User" };

document.body.innerHTML = greeter(user);

I think the request is just to assert the structural nature of the type system earlier in the introductory material on classes. I'm not sure what the OP has in mind but this seems to trip up people who come in with preconceived notions of what class or an interface is from nominally typed languages.

@jtulk the issue with this class, which is by no means broken,
class Student {
    fullName: string;
    constructor(public firstName, public middleInitial, public lastName) {
        this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
}

is that arguments (here parameter properties) of the constructor are not given an explicit type and there is no inference context.
You might want to write this:
class Student {
    fullName: string;
    constructor(public firstName: string, public middleInitial: string, public lastName: string) {
        this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
}

@RyanCavanaugh
It's not intuitive. Follow along will you please:
We have 3 declarations: class Student, interface Person and function greeter which expects it's argument to be (at least in my mind coming from PHP, and what I've seen in other languages) an instance of a Person.
Then user is a new object instance of class Student*.
In the last line we are giving the function greeter a user parameter, which in fact is an instance of a Student class. But it's not an instance of Person class. Person and Student are not at all related.
It could be as:
class Student extends Person {
but it's not, and it confused me quite a lot how come that script works, and how are Student at all related to Person if it's not explicitly in the code above. It's confusing!
Later on I've read that there's no such thing as looking up if the object is an instance at all, and you can do:
document.body.innerHTML = greeter({ firstname: "John", lastname: "White" });
Which is an object that is not instantiated from any class or Interface.
That is why I highly suggest you mention everything I said in a way, because it might cause confusion for other people coming from OOP environments

@Arnoku It is only confusing if one has preconceptions they are not aware of. I agree it can be confusing to newcomers but I think you have no logical basis for saying:

We have 3 declarations: class Student, interface Person and function greeter which expects it's argument to be (at least in my mind coming from PHP, and what I've seen in other languages) an instance of a Person. So in this case, I'm expecting that the argument passed in the function is an instance of that Interface/Class, which it is not in the example.

@aluanhaddad it expects Person, it receives Student. Student and Person are not related, am I the only one who thinks it's very confusing? I don't know how else can I explain this
And it took me personally some time to research how those too could be related.
Just add:
While the function expects an argument to be a Person interface, you may pass any object that contains properties, defined in the interface.
greeter({ firstname: "John", lastname: "White" });
How fucking more clear could I be

@Arnoku Firstly, I am not a member of the TypeScript team and cannot "fix" the manual. Secondly, I upvoted your OP, I agree this can be confusing.
The point I was trying to make was that people should not assume a language behaves a certain way because other languages behave that way.
Anyway, the types are related, because the type system is structural and they describe compatible shapes.
While this might not be intuitive for someone coming from Java, it might well be intuitive for someone coming from Python or say JavaScript.

@Arnoku this is your one and only warning to follow the Code of Conduct: https://opensource.microsoft.com/codeofconduct/

@RyanCavanaugh sorry, I've edited the answer, heat of the moment thing
It just truly bugged me, hope you guys understand why it bugged me and people in the future will understand it better than I did
Cheers and thank you for taking your time to actually read it and care about this :)

@aluanhaddad I'm not meaning to imply that the class is broken- what I'm trying to imply is that the flow of the tutorial is confusing.
The first thing you do in the tutorial is use type annotations to throw errors if the parameters do not match the contract:
function greeter(person: string) {
    return "Hello, " + person;
}

Then you create an interface to make sure the shape of the object passed to greeter matches:
function greeter(person: string) {
    return "Hello, " + person;
}

Then finally a class is added alongside, but the greeter function is still left associated with the interface.
class Student {
    fullName: string;
    constructor(public firstName, public middleInitial, public lastName) {
        this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
}

interface Person {
    firstName: string;
    lastName: string;
}

function greeter(person : Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}

var user = new Student("Jane", "M.", "User");

document.body.innerHTML = greeter(user);

Am I completely wrong in thinking that the structure of the tutorial (and the syntax) leads me to believe that greeter(person: Person) will try to apply the interface to the argument it's given? Even if that argument is an instance of class Student?  The way the tutorial is the class doesn't require any specific data types, but the interface (which is still left in the greeter function definition) still does. So why doesn't calling greeter(Student) throw errors when Student doesn't match the interface?

Student does match the interface. But it uses parameter properties, which are easy to miss. Overall we should just rewrite the entire Quick Start; it's too class-focused and doesn't directly explain many core concepts in a good way.

@RyanCavanaugh Sorry, in the example you're correct. What I mean is that if you change var user = new Student('Jane', 'M.', 'User'); to var user = new Student(1, 2, 3); the code will run w/out any TypeScript errors. So it seems like the interface restrictions get completely dropped somehow.

That's because the firstName / etc fields are of type any because they don't have type annotations

@RyanCavanaugh - right, but the interface stipulated in the greeter function is just completely ignored then? If so, WHY?
function greeter(person : Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}

Why does the fact that we made a separate class and passed it into greeter mean the interface no longer does any shape-checking? Do you really not understand at all what I'm asking here? I feel like I'm taking crazy pills.

I understood what @jtulk is trying to say and now that confuses me as well.
You're asking why the interface has a type set to string, yet when you pass arguments that are int they still get compiled? If this is true I don't get that point as well
Maybe that means that it just checks for the properties being present?

@Arnoku Exactly. It seems to me that the whole point of defining an interface is to enforce a contract for the data that gets supplied into the function. Is this functionality supposed to break as soon as you stop passing in an object literal?

At the risk of rewriting the entire Handbook or spec in this thread...
The type Student has the shape
{ fullName: string; firstName: any middleInitial: any; lastName: any }

Those three fields have the type any because the constructor parameter properties don't have type annotations:
    constructor(public firstName, public middleInitial, public lastName) {

The implements clause says "Make sure this class is an acceptable substitute for this interface. The Student type fulfills the requirement because its fields, which are of type any, are acceptable substitutes for the string fields defined in the interface.
Because the parameters are of type any, you can pass in any value.
So in closing, if you don't want surprising-ish things to happen, avoid fields of type any.

@RyanCavanaugh I'm not sure how you keep missing the question here. No one is asking about the any types on Student. We're asking specifically about the

"Make sure this class is an acceptable substitute for this interface"

part you mentioned. If the interface specified requires firstName and lastName to be of type string, and we pass class Student of which firstName and lastName are numbers (which is fine according to the Student shape w/ type any), HOW DOES THIS NOT FAIL THE INTERFACE SPECIFICATION?
Shouldn't var student = new Student(1, 2, 3); fail because firstName: 1 and lastName: 3 fail the interface specification which requires them to be of type string?

No, firstName and lastName are not numbers, but any, and any can be substituted for string (in particular).

Here's an analogy.
Your accountant says that she needs your forms on 8x11" paper.
Your courier says he can transfer paper of any size to any person.
You give your courier A4 size paper and an address, and he delivers it to your accountant, who is surprised.

Well, your courier said he can deliver any size paper. Your accountant had a specific requirement, but using the non-caring intermediate caused her constraint to be violated. What you wanted was a typed courier that would only accept 8x11" paper. Then your courier would have rejected your A4 forms.

@RyanCavanaugh Thanks - I think this helps. In your analogy the accountant is surprised because the paper is the wrong size. Obviously the courier didn't know, but the account 'throws an error' right? In this code, run either through the command line tsc compiler, or the Visual Studio Code build, the accountant is never surprised. That's what I'm driving at. I'm not blaming the courier, I'm saying, "Why does the accountant stop caring about her initial requirement?"

The any type is compatible with all types. It is the static formalization of JavaScript dynamic

Good Lord. If you guys are trolling me you're doing brilliantly.
 See: https://github.com/Microsoft/TypeScript/issues/11954#issuecomment-258557806
What I am asking is WHY THE INTERFACE CONTRACT IS NOT ENFORCED FOR THE GREETER FUNCTION. It says, "give me an object of shape {firstName: string, lastName: string}, but when supplied with a Student-Class object where {firstName: number, lastName: number} it ignores the interface contract and compiles without errors. WHY?????
@RyanCavanaugh gives the analogy of an accountant (the interface) who wants paper a certain size, but the courier (the Class) agrees to carry paper of any size. But what is happening in this tutorial is that the courier's preference (paper size: any) clobbers the accountant (paper size 8" x 11").
So again, WHY?

supplied with a Student-Class object where {firstName: number, lastName: number}

As have been said already, this is not true. The type of Student class is {firstName: any, lastName: any, middleName: any, fullName: string}, it just so happens that you instantiated Student with numbers. To illustrate:
var x = 1;
x; // number
var s = new Student(x, 2, 3):
s.firstName; // any

@roganov That is not what he is talking about. I feel like me and @jtulk have used OOP before or something.
interface Person {     firstName: string;     lastName: string; }
The interface has strict types of string
`function greeter(person : Person) {
return "Hello, " + person.firstName + " " + person.lastName;
}
var user = new Student(1, 2, 3);
document.body.innerHTML = greeter(user);`
I want you to pay close attention to this piece of code. We send the allegedly instance of a Student object, it can have any type of firstName, lastName like you mentioned
Now pay attention to greeter function. It expects an object that would match the declaration of the interface Person. The Person interface expects 2 parameters to be string. That's the whole point!
We instantiate the object as Student, no strict parameters, but greeter function expects those 2 parameters to be strictly string. That is what @jtulk is trying to say I think, and I haven't done this myself, but the logic holds here for me, and if you can pass integer arguments to the greeter function, then that's quite a weird behaviour if you ask me.

greeter function expects those 2 parameters to be strictly string

This is not quite correct, greeter function expects an argument that implmenets the Person interface, and Student does implement the Person interface because any is substitutable for string.

@Arnoku Exactly.
It seems like the code is analogous to something like:
const allowedData = 'string'

const greeter = data => {
  if (typeof data !== allowedData) {
    throw `Datatype must be a ${allowedData}`
  } else {
    console.log(data)
  }
}

const dataInstance1 = 'Hello'
const dataInstance2 = 3
const dataInstance3 = []

greeter(dataInstance1) // 'Hello'
greeter(dataInstance2) // error
greeter(dataInstance3) // error

But @roganov is saying that

This is not quite correct, greeter function expects an argument that implements the Person interface, and Student does implement the Person interface because any is substitutable for string.

Can you explain this in more detail? This seems really, really counter-intuitive based on the semantics of the code itself, and I can't find much of anything in the documentation about 'implementing interfaces'...

From the docs:
interface LabelledValue {
    label: string;
}

function printLabel(labelledObj: LabelledValue) {
    console.log(labelledObj.label);
}

let myObj = {size: 10, label: "Size 10 Object"};
printLabel(myObj);

The interface LabelledValue is a name we can now use to describe the requirement in the previous example. It still represents having a single property called label that is of type string. Notice we didn’t have to explicitly say that the object we pass to printLabel implements this interface like we might have to in other languages. Here, it’s only the shape that matters. If the object we pass to the function meets the requirements listed, then it’s allowed.

It’s worth pointing out that the type-checker does not require that these properties come in any sort of order, only that the properties the interface requires are present and have the required type.

The docs say "only the shape matters" and in the example above, the shape is pretty much wholly ignored.

public and private parameter modifiers are shortcuts that automatically declare and set class properties. So that
class A {
  constructor(public x) {}
}

is a shortcut for
class A {
  public x: any;
  constructor(x) { this.x = x };
}

This is actually explained in the tutorial:

Also of note, the use of public on arguments to the constructor is a shorthand that allows us to automatically create properties with that name.

@roganov Oh nice-  I missed that part. Thanks. Still doesn't explain why the Person interface isn't enforced though.

I'm not sure what you mean by "Person interface isn't enforced", but as have already been said, instances of Student are valid arguments to greeter function because { firstName: any; lastName: any; middleInitial: any; fullName: string } (shape of Student) is substitutable for { firstName: string; lastName: string} (shape of Person).

@roganov Okay - I think I'm getting what you're saying, let me try to rephrase to make sure.
This:
interface Person {
    firstName: string;
    lastName: string;
}

function greeter(person : Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}

creates a contract where greeter() expects an argument that matches the shape of Person. However, if you supply an argument that matches the shape of Person (i.e. has a firstName and lastName property) but has its own datatype contract for those properties (here the data being of type any) then THAT contract is enforced on the data typing?
This still seems really counter-intuitive to me, but if that rephrasing is correct I can sort of grok what's going on here.

has its own datatype contract for those properties (here the data being of type any) then THAT contract is enforced on the data typing

I'm not sure what is "THAT contract", but there is just one "contract": that argument to greeter is of type Person, which means that the argument needs to have firstName and lastName properties and their type needs to be substitutable for string. The key is to understand that any is substitutable for any type (to strint in particular), which makes Student substitutable for Person.

Useful discussion - after completing the Quickstart I literally had the same question. For future TS/JS newbies (like myself) it's helpful to look at the compiled output of greeter.js to see that the function greeter simply expects an Object literal containing the keys: firstName and lastName. The compiled output for Person satisfies this.
This discussion actually makes the Quickstart examples a pretty good lesson in JavaScript's weak and dynamically typed nature for those coming from strongly typed and especially statically typed languages like Java.

We've rewritten the handbook and, frankly, this thread is a mess.


Pull request workflow for regression testing

Make sure ColorInterpolator and TreeRendering tests are part of the Faze.Rendering build. Create a workflow action for pull requests to make sure these tests pass before merging

This is now being achieved by the test coverage workflow


Error: Import AWS Lambda ends w/ an error

I'm trying to import AWS Lambda and get an error related to GetPolicy.
There is an open question reg. it in StackOverflow that was opened a week ago.
My feeling that it is related to Line 104 @
https://github.com/GoogleCloudPlatform/terraformer/blob/master/providers/aws/lambda.go
sudo ./terraformer import aws --resources=lambda --regions=eu-west-1
2023/01/04 23:01:50 aws importing region eu-west-1
2023/01/04 23:01:50 aws importing... lambda
2023/01/04 23:01:51 aws error initializing resources in service lambda, err: operation error Lambda: GetPolicy, https response error StatusCode: 404, RequestID: 67d8e12c-adf2-405f-9d65-5045981e0cb7, ResourceNotFoundException: The resource you requested does not exist.
2023/01/04 23:01:51 aws Connecting....

i have same issue.. @mosheka can you add link to related stackoverflow please?

@mosheka - i have been looking at cloudtrail logs and it appears that it fails on finding the first lambda with no resource policy (inline policy doesn't cut it apparently). so, if you can put resource policy on all your lambdas you should (theoretically because im still going through my lambdas to add missing policy) get it to work

Nice, but it is still a bug (especially when you want this export for audit needs).

This is still an issue that wasn't fixed. I'm having the same problem.

Same problem. I have a lot of lambda without policy and cant add policy right now. How I can import all of them

Same issue here also. Any workaround?

Can we re-open this? It's still an issue.

This still an issue on version v0.8.24

Same issue here also.

This is still an issue. Please re-open the issue

Still relevant. Please reopen this issue.

Almost a year has passed, and this issue is still relevant.  Is it me, or is terraformer not keeping up since terraform introduced  the -generate-config-out option in plan for resources listed in import blocks?
This bug basically makes importing lambdas completely broken.

This is still an issue. Please re-open the issue

It would be awesome to have this fixed as soon as possible!

Need the fix as well - terracognita also has a bug with lambda - but more-so on the templating front

How are we supposed to get this resolved in macOS? I tried to install terraformer using homebrew with the following command:
brew install --HEAD --force terraformer
But it failed with:
==> go build -ldflags=-s -w
Last 15 lines from /Users/xxx/Library/Logs/Homebrew/terraformer/01.go:
        __const          addr=0x10a184530, size=0x00000670, fileOffset=0x0a184530
        __rodata         addr=0x10a184ba0, size=0x028be4a0, fileOffset=0x0a184ba0
        __typelink       addr=0x10ca43040, size=0x0007ee20, fileOffset=0x0ca43040
        __itablink       addr=0x10cac1e60, size=0x00036db0, fileOffset=0x0cac1e60
        __gopclntab      addr=0x10caf8c20, size=0x06a6e038, fileOffset=0x0caf8c20
    __DATA               addr=0x113568000, size=0x002b8000, fileOffset=0x13568000
        __data           addr=0x113568000, size=0x0005af00, fileOffset=0x13568000
        __go_buildinfo   addr=0x1135c2f00, size=0x00008e50, fileOffset=0x135c2f00
        __noptrdata      addr=0x1135cbd60, size=0x001e4b73, fileOffset=0x135cbd60
        __bss            addr=0x1137b08e0, size=0x000578a4, fileOffset=0x00000000
        __noptrbss       addr=0x1138081a0, size=0x00015b90, fileOffset=0x00000000
        __common         addr=0x11381dd30, size=0x00000018, fileOffset=0x00000000
    __LINKEDIT           addr=0x113820000, size=0x03e08000, fileOffset=0x137b4000
clang: error: linker command failed with exit code 1 (use -v to see invocation)

@sergeylanzman is there any new release containing this fix coming soon?

@sergeylanzman apparently this is NOT really fixed.  We are still getting this error.

@sergeylanzman I'm seeing this issue as well

Same problem here

Hello, I have the same problem

same problem

Hi guys, I forked and changed the lambda code to fix that issue. Just tested successfully!

Not a big deal, but hope it can help
https://github.com/eazevedo-cloud/terraformer/commit/ba6271cfae33d5157d4f0f637e19b1317c5d2a74
Cheers!

using the forked git provided by eazevedo-cloud. git clone it and run it. it really worked well.

Here provided the way to install and run it:

Clone the repo with the following command
git clone https://github.com/eazevedo-cloud/terraformer.git

It will install into a directory called terraformer. You may rename into terraformer-forked so that you could allow both official terraform and terraformer exist in your machine
mv terraformer terrafomer-forked

You may install Go in your machine.

Build the forked code with Go
go build -o terraformer-forked

Move the file to the user program file (In case you are using windows, you may move the installed item to Program files, and add the program files to Environment Variables)
sudo mv terraformer-forked /usr/local/bin/

(Optional) Verify the installation
terraformer-forked version

Now you may run the command of import instead of terraformer, change to terraformer-forked

provided a sample:
terraformer-forked import aws --resources="lambda" --regions="ap-southeast-1"
Hope it helps.
Cheers!!!

Excellent instructions of the forked terraformer build
Just a note that the Go version must be 1.18. I used 1.18.10

Minor thing. mv terraformer terrafomer-forked should be mv terraformer terraformer-forked

Excellent instructions of the forked terraformer build
Just a note that the Go version must be 1.18. I used 1.18.10

For those less GoLang inclined, navigate into the terraformer-forked directory and open go.mod file, at the top, update version to 1.18.0.

@sergeylanzman can we re-open this? It still isn't resolved.


Doesn't work under FreeBSD.

There's no such command "infocmp" - which is hardcoded into rb-readline code.

https://github.com/ConnorAtherton/rb-readline/blob/40500f6d4e37073452e4d7c74b6c31912ed57f5e/lib/rbreadline.rb#L1815
https://github.com/ConnorAtherton/rb-readline/blob/40500f6d4e37073452e4d7c74b6c31912ed57f5e/lib/rbreadline.rb#L1902

I suggest looking on other commands built into FreeBSD - termcap, terminfo.


docs: add debug information

Original PR: #119
This is maintained PR.

PTAL @electron/wg-ecosystem

Probably would be good if it linked to the debug module in the npm registry, since folks may want to combine debugging this and other modules.


feat(ide): added support for fleet ide

Pull Request Title
Description
Added support for the Fleet IDE support

[x] This change requires a documentation update
[x] I have made corresponding changes to the documentation

Related Issue(s)
This PR addresses issue #1001
Screenshots
If relevant, please add screenshots.
Notes
Please add any relevant notes if necessary.

 Thanks for the effort! There are other bounties that you can still explore.


GUI

Is your feature request related to a problem? Please describe.
I'd love to replace ES / Kibana with quickwit, but I don't know how I could quickly and efficiently search through applications to resolve a production incident.
Describe the solution you'd like
Ideally, I'd like a minimal kibana replacement: a search box and time picker with results shown below. Result items could be expanded.
Describe alternatives you've considered

Just trying to use a cli to craft queries in the terminal
Making an "adapter" so kibana could be pointed at a quickwit instance for a subset of functionality (even to search documents and examine documents, but probably not admin indices etc)

Additional context
I think that y'all have the opportunity to disrupt application logs space with your model of S3 as the data store, especially for small scale hobby projects.

See also the zinc project which has similar goals but no S3 storage and does include a UI: https://github.com/prabhatsharma/zinc/issues/2

Thanks, @brycefisher for your detailed issue.
A few months ago, we made a UI for our POC and it has the search box and a date picker :)
For us, it's too early to embed such a UI into this repository but I think we can open-source it as a separate project. Would it be useful for your needs?

Very!! So excited to hear this.

@brycefisher FYI This feature is scheduled for quickwit 0.3.

Closing as this is a duplicate of #155


Trying to load BetterDiscord dosen't work and serves as a Discord web iFrame instead

After updating the Discord client and betterdiscordctl, I can no longer see BandagedBD settings, and a download button now appears for Discord too.
https://i.imgur.com/JQ2Olsl.png
https://i.imgur.com/LuZ0xve.png

Also this if that helps
https://i.imgur.com/aIlUw48.png

Duplicate of #96.


Error log is polluted with interface messages

Link to reproduction
No response
Payload Version
3.0.0-beta.68
Node Version
20 LTS latest
Next.js Version
15.0.0-canary.57
Describe the Bug
After running 3.0 on prod for some days I checked the container logs to reproduce some issues authors reported. This is very hard as the logs are full of interface messages which are not application errors like:

[13:28:24] ERROR: u: The email or password provided is incorrect.
[13:16:15] ERROR: l: The following field is invalid: alt
[14:08:19] ERROR: l: The following field is invalid: content.4.video

IMHO this should only be notices / info in the logs but not application errors.
Reproduction Steps
Check error logs in the container after trying to save an invalid field collection entry.
Adapters and Plugins
db-postgres

This is because the way errors are passed to the front end are via error messages. I wouldn't necessarily consider this an issue. We could look into possibly adding a flag that would make it so public errors are not logged.

In 3.0 we shipped this feature https://github.com/payloadcms/payload/pull/9156 that allows you to customize logs


Make sure Squiggle CSS is loaded in Relative Values application

This app will likely be removed soon, so this fix won't be needed for long.


Redirect stderr to /dev/null when listing tmux sessions

Hopefully this fixes #414.
This will prevent the "failed to connect to server: Connection refused" error message from being displayed and a non-zero exit status from being returned when no tmux sessions exist.

Coverage increased (+0.09%) to 99.166% when pulling 6ee58d3d9a3d8786c8a4bca33e5eebf71d85da48 on ethagnawl:fix-no-server-running-message into 025f4e4a782c48f98be61d4ecda2e712542c8835 on tmuxinator:master.

This looks good, @ethagnawl! I'd never given that message much thought. I've tried this out on my machine and it works as expected. :+1:

@J3RN Great! Even if this fix doesn't solve all the issues people are seeing in #401, it's still forward progress. :grinning:

Coverage increased (+0.09%) to 99.166% when pulling 29efb5de12ca2b6c9e63bced4c7c79066617c25d on ethagnawl:fix-no-server-running-message into 025f4e4a782c48f98be61d4ecda2e712542c8835 on tmuxinator:master.

Does anyone have additional thoughts on this PR or shall we merge it?

I'm all for merging!


feat(track-id-prop): add trackById and trackByProp directives #33

I've implemented the trackById and trackByProp directives as discussed in #33

added some tests (but don't found a way to verify the real implementation detail of trackBy)
added docs to astro + updated the main README to add the missing link to utilities: call-apply and this new ones

So for testing, we can leverage a symptom of missing trackBy: all children DOM nodes are re-drawn (re-rendered). IIRC, we can use MutationObserver API to test this behavior. Use the test-app + Cypress to test this on a real browser would be my suggestion.

I read all the tests of trackBy in Angular and honestly I don’t get what they assert no warning message is tracked and the output text in the feature will be the same even if trackBy doesn’t exists or will not work - or I’m blind and miss understanding their test
For e2e test sorry @nartc  I’m not able to write and instrument it so if you know how to get there please help me to write - or simply accept that this is the correct implementation it’s a one liner directive that simple set the trackBy function
I don’t mind testing internal behavior that even Angular tests don’t cover/verify (if my first sentence is correct)

@dmorosinotto I added a new page for track-by and a simple e2e test.
The page renders 3 ul off of the same people list:

without track by
with trackById
with trackByProp

The page tracks the mutations of each ul using mutationsLength object. The page renders all 3 properties of mutationsLength.
The test asserts that the number of mutations match the behavior of without trackBy vs with trackBy (for both trackById and trackByProp)

WOW @nartc I'll carefully read it and definitely has to learn something today🤓!
Thanks for taking care of it, and invest so many times to show me this 🙏

Ok all refactor done and fixed docs + test + e2e pass 😉

🎉


Added french translation

French translation for some terms in the UI

psvs_msg_hud_off, psvs_msg_hud_full and psvs_msg_hud_pos are too long and will not display correctly.

Corrected, shouldn't be an issue anymore.
Thanks


What use in place of no_gaps_when_only

Description
Hi,
At this commit you "nuked" no_gaps_when_only that was used to remove gaps and borders to fill the screen when there was only one Window. This was even at the default version of hyprland.conf file. What do we would use in place?
Suggestion, Instead of suddenly discontinuing configurations, would be nice if some notification warning should be issued to alert when some instruction in use at the config file is to be discontinued.
Also, if you agree with this notification warning idea, would be very nice if a drop-in replacement for the instruction to be discontinued would be presented at this notification allowing users to update the configuration file beforehand and with no pain.

https://wiki.hyprland.org/Configuring/Workspace-Rules/#smart-gaps

link above relevant

Suggestion, Instead of suddenly discontinuing configurations, would be nice if some notification warning should be issued to alert when some instruction in use at the config file is to be discontinued.

No point, I mention removed features in release notes. If you use -git, it's your responsibility to catch up and update when you have some spare time.

link above relevant

Suggestion, Instead of suddenly discontinuing configurations, would be nice if some notification warning should be issued to alert when some instruction in use at the config file is to be discontinued.

No point, I mention removed features in release notes. If you use -git, it's your responsibility to catch up and update when you have some spare time.

People, in general, do not have time to read the changelog for the compositor they are using regularly. People work and have other duties than fiddling with their desktop environment every day.
Deprecating instructions and configuration it's a common thing and helps to keep the base code clear, but PEOPLE NEEDS TO KNOW WHAT IS GOING ON.
With Hyprland, every update is a surprise, like the support for mirroring virtual screens with Sunshine that you suddenly dropped the support days ago, which has impacted the lives of many users. From time to time, some instruction is discontinued from your compositor with no notification for the users beforehand and for anyone who uses your compositor, the excuse is always to "Read the changelog".
I think Hyprland is an amazing product, but things like that are very frustrating.

Huum, let's see:
pacman -Su
User: Wow! 312 updates. Let's read the changelog one by one before updating.
After spending two days reading all of them, pacman -Su now has 442 updates. "On sh#t, there are more than 130 changelogs to read now..."
Your project is not only a DIY project but a great one. One of the best I have seen in years. I'm a real enthusiast of Hyprland. With Ublue project I even created my own Immutable version of Hyprland. You can check it out by following here. I believe that your goal is to have Hyprland on a daily basis for many users all over the place, which is a great thing and is turning into a reality. Hyprland is stable and you are very committed to resolving the issues as fast as possible. I thank you for that.
I just made a suggestion. Would be easier for people to know beforehand from the compositor itself that SOON, the user would need to change some settings beforehand.

...you can also just read the changelog when you notice something broke?
Again, breaking changes are mentioned at the top of the changelog of a release.
Read the last paragraph of what I said in my last message.

I wasn't talking necessarily about me. Some people look at my computer, see Hyprland, and ask me, how to install that, I don't have the confidence to incentivize them because many of them just want to use the computer without the need to customize many things. If you have a look at the immutable version I created, after installing, the user has a basic but complete experience with Hyprland.
Explaining to people, who want just to use the computer, that they will NEED to regularly read the changelog for things they are using because their setup will break from time to time is discouraging.
I know that many users of a TWM love fiddling with their setup to take a snapshot (with a hyprshot) and post their printscreen on Reddit, but there are people who see the great big value of a TWM which is productivity.
Hyprland's documentation is great, but making a life of people easier, could help Hyprland get traction with a broader group of people, which would be great.

Again, I don't see a better alternative other than "never remove options" which is not what we want to do.

Have a separate pinned and locked issue (so people could subscribe to it, and receive notifications) for replaced / phased out options / other breaking changes.
E.g. like this
https://github.com/hrsh7th/nvim-cmp/issues/231

So, what changed and will no longer work, and what to use instead (if applicable).
@cjuniorfox Barring that, from the user side - diff-ing wiki's repo between releases (or approximate dates of offending hyprland commits) works great to track changes and possible/suggested replacements too.

@MahouShoujoMivutilde's solution aint bad.

One solution could be:
feature x is deprecated, use y instead. ( in the error message)

Read my message https://github.com/hyprwm/Hyprland/issues/8114#issuecomment-2411147184

@MahouShoujoMivutilde's solution aint bad.

One solution could be:
feature x is deprecated, use y instead. ( in the error message)

Read my message

I may be different than many, but in NixOS their implementation of this is well done. It still builds for <seems to depend on package/option> and then breaks.
That said, it's easier to implement in that situation and less so in Hyprland's. Not sure of a way to implement, but perhaps having an option to xdg-open https://hyprland-version-release-notes when first running a new version? I think other suggestions here are maybe more realistic though.


Adds builder method when using innerBuilder

This PR updates the code to add a public static method called builder to all the classes that are created with the generateBuilders and useInnerClassBuilders.
This is a sample of how the builder method looks like:
public static Child.ChildBuilderBase builder() {
    return new Child.ChildBuilder();
}

Fixes #1396

Just closing/opening to trigger checks.


Tagging datasets with reference genomes

I pulled down the 1000G genotypes for an analysis today, and lost an hour on the typical fun times  that come from mixing a GRCh37 dataset with a hg19 dataset (specifically, the 1 vs. chr1 naming mismatch). Perhaps we should "tag" input datasets with the specific reference they're aligned against, where relevant? Even further, would it be make sense to ensure that all datasets in eggo are aligned against a specific reference genome? I wouldn't want to be as restrictive as saying everything must be lifted on to hg19, but I think it might make sense to ensure that everything is aligned against a CRCh genome build instead of a UCSC build.

What do you think would be the best way to tag the data sets?  Put in an extra field in the json descriptor?  Also, for some reason, I was under the impression that ADAM normalizes the 1 vs chr1 issue, but I guess not.  Otherwise, I agree that doing the liftover would be insane, but I'm definitely down to prefer data sets that are all built against a GRC reference, for example.

What do you think would be the best way to tag the data sets? Put in an extra field in the json descriptor?

That's what I was going to suggest. Best bang for the buck, IMO.

Also, for some reason, I was under the impression that ADAM normalizes the 1 vs chr1 issue, but I guess not.

We used to have code for that in ADAM, but it was really brittle so we pulled away from that. I think that referring to the MD5 for the assemblies is probably the best way, but! most file formats don't include that critical information, which is sheer insanity.

Otherwise, I agree that doing the liftover would be insane, but I'm definitely down to prefer data sets that are all built against a GRC reference, for example.

Yeah. I think that's the best way to proceed, but I expect that there's enough inconsistency between projects to render this all moot. Specifically, I think 1000G, ENCODE, and TCGA use subtly different reference builds.

Analyze at your own risk, then?

Analyze at your own risk, then?

Exactly.
I don't think there's a tractable way to make this "foolproof" (besides the whole keying contigs to their MD5 thing), but in a happy, future world, I'm hoping to have a provenance/workflow metadata management system that warns you "hey, you've got subtly different genome builds, are you sure you want to run several hundred hours of compute before you run into really difficult to debug issues, or do you want to fix that up front?"

Obviously you just go for it

@laserson The GATK agrees with you.

Closing for cleanup/refactor.  This is something we'll really have to deal with later if (when) eggo becomes useful/popular.


Add rad track/untrack commands

TBD:

only as VS Code commands in the Command Palette?
also in the UI? Where?
what if the RID isn't doesn't resolve via the connected seeds/nodes?

should we offer to resolve e.g. ask the user for a node URL and connect to it and replay? Maybe make that a new ticket to work on before this one?

only as VS Code commands in the Command Palette?

yes.

also in the UI? Where?

Tracking is a top-level action, so it would probably be the start of a new interaction path. For the time being, I don't think it's worth exposing this to the UI through a separate button, but I can see a future version where - as heartwood evolves - we have a richer interface around "exploring" and finding new nodes to track (e.g. "friends of friends"). We should probably wait for more developments on that front to understand how we should approach this.
For now, the single command should be enough.

what if the RID isn't doesn't resolve via the connected seeds/nodes?

under the scope of this issue, we should only show the output / error message from the rad CLI command.

should we offer to resolve e.g. ask the user for a node URL and connect to it and replay? Maybe make that a new ticket to work on before this one?

this does sound like a new ticket, yes, but, no, we shouldn't work on it before this one. Tracking is a necessary action that we want to have soon - so we can move to Radicle - whereas the experience improvement will be necessary when we want to start attracting users.


Copy remote resources (css, js) files for bootstrap and external resources into repo

This is because with the last scoring engine, these updated and we had to fix a bunch of the links, so this will help in the long term to solidify the look :\

Fixed in https://github.com/pwnbus/scoring_engine/pull/157


(NVIDIA Arch) After downgrading gpu drivers to 525, Hyprland does not launch without wlr try errors

The reason that I downgraded my drivers in the first place was because I was having an issue where refresh rates above 144 just broke everything. I saw that it was a common issue, and that the fix was to downgrade to 525, so that’s what I did.
I downgraded both nvidia-open-dkms and nvidia-utils to 525, and everything seemed like it was working. DKMS said I was on 525, and no errors came out of it.
When I tried launching Hyprland, the console showed no apparent errors, and looked like the same thing I usually get when launching, just this time it did not work. I got the log and I got the error “m_sWLRRenderer was null”. I tried several things to fix this.
First I saw the gentoo thread on here where someone had the same problem and used a forked commit and it worked for them. I did the same thing but nothing changed.
Then I tried setting the environmental variable $WLR_RENDERER. While it indeed was set, nothing changed, and I am still getting the same error.
I also tried re-installing hyprland, both the normal and git versions through yay, but no luck.
I am not quite sure what to do, since no one replied in the discord, and I have been searching for several hours at this point.
I have a feeling this is a simple solution but I was not able to find anything about the swlrrenderr variable, and I don’t really know what to do.
All my logs were the same, it was all the same as before, but it just abruptly stopped when I got the error that it was not set.
What should I do?

Got no solution but just so you know; Hyprland doesn't support NVIDIA officially and you're often recommended to join the Discord and ask for help in the nvidia channel.

I did but no one seems to reply to me. I am very lost.

Nvidia is not supported and I am unable to give you any support.

I did but no one seems to reply to me.

Maybe nobody else has this issue.

I used journalctl and found some potentially useful information.

I have fixed it. I am quite embarrassed to say this, but the solution was just to update arch with pacman -Syyu.
I completely forgot to do that.


Improved URL parsing

Hi,
I made some changes to the way URLs are handled so that leading whitespace and trailing HTML tag aren't included into the "href" attribute. The previous version created issues when using nl2br() before or after processing by tweetParser.
(my first pull request, hope I got this right ^^)

Hey thanks patheticcockroach :)

Well instead you can use a non-capturing group like (?:^|\s)((f|ht)tps?:\/\/([^ \t\r\n<]*[^ \t\r\n\<)*_,\.])) which I believe removes the need for the p1/p2 hack

My bad, I mistook that for lookbehinds, which are not supported in JS.

Indeed my first try was to use a non-capturing group but it didn't help ;)


No reads mapping despite the fact that they were used to assemble the genome

Hi, software is working for first two steps, but when I use the ratio command I get no reads mapping. All dependencies are installed.
To clarify, I use paired end reads to assemble a genome which was used in the locate and create commands. I then used the ratio command with those same paired end reads against the .fasta output of create and get no reads mapping.
reads with at least one reported alignment: 0 (0.00%)
reads that failed to align: 767218 (100.00%)
I don't see how this is possible, as I used these reads to assemble this genome. These reads have no issue mapping in other software.
Code used to run this (using python 2.7 env on ubuntu 18.04):
python PhaseFinder.py ratio -i create.fasta -1 R1.fastq -2 R2.fastq -p 4 -o ratio_output
Could you please tell me what I am doing wrong?

I've been playing with this script as well and noticed a couple of things. First, you probably saw that it was written in Python 2.7, so I used anaconda to create a python 2 environment and then used conda and pip to install all the dependencies from within that environment (i.e. using versions of packages compatible with python 2). Second, it looks like the awk commands are breaking -- probably some kind of versioning issue? Anyway, if I replace 'awk' with 'gawk' in the PhaseFinder.py script, then everything runs fine (at least with the tutorial data -- I haven't tried running on real data yet).

First, you probably saw that it was written in Python 2.7, so I used anaconda to create a python 2 environment and then used conda and pip to install all the dependencies from within that environment (i.e. using versions of packages compatible with python 2). Second, it looks like the awk commands are breaking -- probably some kind of versioning issue? Anyway, if I replace 'awk' with 'gawk' in the PhaseFinder.py script, then everything runs fine (at least with the tutorial data -- I haven't tried running on real data yet).

Hi Sean, thanks for the repsonse and sorry for the late reply! I did what you mentioned, replacing 'awk' with 'gawk' in the script, however still 0% of reads mapped. I was already using a py2 env as well with dependencies installed.
Do you have any other ideas? Given this is just measure of essentially forward and reverse read mapping, I wonder if I could just use any other mapping tool and then just do auto counting for forward and reverse reads?

Having the same issue here - consistently no reads mapping.

I'm guessing that the no read mapping is a real result...the script is using bowtie, which is a pretty reliable mapper. I believe the pipeline only tries to map reads to inverton regions (and flanking sequences) -- i.e. it's not mapping reads to the entire reference. Do you see any inverton regions in your reference?

Thanks for your response Sean.
Yes I understand what you mean, I have had previous success with bowtie in other projects. I was only mapping reads to the created fasta file which contains the invertron regions. In the intertron file, there are a total of 1522 contigs produced, half being F and the other half R.
It seems unlikely to have no reads hitting 1522 sequences, all >2kb in length, when using 300 bp reads.
But maybe you're right and this is just the result - that there is no invertrons within the genome.

I am having a similar issue.  I built a genome from paired end reads, found IR regions and had a successful step 2, and had no reads map in step 3.  Using Py2.7 with correct dependencies in Ubunutu 20. Running the test data works fine for me (without changing any code).
I understand that I may not have invertible regions (no mix of forward and reverse reads at any IR regions found in steps 1/2) but there should still be reads that map in 100% of aeither F or R orientation in step 3 for each one, right?

I suspect it cannot process compressed .gz  fastq files. Try uncompress and see if it maps @alexcrofts. Seem like something worth correcting as large projects aren't likely.


Try, but fail, to reorder structs

So this doesn't actually work, but I wanted to open this to see what you think.
I noticed that the order of structs didn't depend on the order the properties were defined, rather the order of the initializer.
cstr = "hi".cstr
struct A
  property c :: UInt8
  property p :: UInt8*
  property x :: Int2
  def initialize(@c, @p, @x) end
end
a = A.new(1,cstr,1)
puts sizeof(A)

struct AA
  property c :: UInt8
  property p :: UInt8*
  property x :: Int2
  def initialize(@p, @c, @x) end
end
aa = AA.new(cstr,1,1)
puts sizeof(AA)

struct B
  property p :: UInt8*
  property c :: UInt8
  property x :: Int2
  def initialize(@p, @c, @x) end
end
b = B.new(cstr,1,1)
puts sizeof(B)

gives
24
16
16

I tracked down where, I think, this is happening, and tried to do a simple resort by putting all the types that are multiples of a word up front. It's not perfect bin packing, but that'd probably be too slow.
Unfortunately something else is missing and I run into this error when trying to run the above program
Assertion failed: (S1->getType() == S2->getType() && "Cannot create binary operator with two operands of differing type!"), function Create, file Instructions.cpp, line 1848.
[1]    88096 abort      bin/crystal /tmp/pid/test2.cr

I'm at the end of my knowledge here, but I figured this might be somewhat interesting.

Reordering struct fields is something we will definitely do in time.

Cool thanks!


[CRD Upgrade Safety] Add a change validation for handling field type changes

User story
When upgrading a CRD,
A new default value is added to a field that did not previously have a default value
The default value of a field is changed
An existing default value of a field is removed
List if issues
This looks like it is behaving properly but the exact message output seems pretty unhelpful since it seems to be giving the exact bytes instead of a human readable value.
we get an output similar to:
message: 'validating upgrade for CRD "nginxolm75124s.cache.example.com" failed:       CustomResourceDefinition nginxolm75124s.cache.example.com failed upgrade safety       validation. "ChangeValidator" validation failed: version "v1alpha1", field "^.spec.field":       new value added as default when previously no default value existed: &JSON{Raw:*[34       100 101 102 97 117 108 116 45 115 116 114 105 110 103 45 106 105 116 108 105       34],}'
message: 'validating upgrade for CRD "nginxolm75124s.cache.example.com" failed:       CustomResourceDefinition nginxolm75124s.cache.example.com failed upgrade safety       validation. "ChangeValidator" validation failed: version "v1alpha1", field "^.spec.defaultenum":       default value has been changed from [34 118 97 108 117 101 49 34] to [34 118       97 108 117 101 51 34]'
message: 'validating upgrade for CRD "nginxolm75124s.cache.example.com" failed:       CustomResourceDefinition nginxolm75124s.cache.example.com failed upgrade safety       validation. "ChangeValidator" validation failed: version "v1alpha1", field "^.spec.defaultint":       default value has been removed when previously a default value existed: [57]'

/unlabel kind/documentation

Hi @everettraven , I create a issue to trace it, How can I remove the label [kind/documentation]

Hi @everettraven , I create a issue to trace it, How can I remove the label [kind/documentation]

Removed and added kind/bug instead - thanks for filing the issue @KeenonLee !


Extension prevents me from launching games in Roll20

When the FediAct extension is enabled, I am unable to launch my tabletop games in Roll20. Doing so sends me to a Cloudflare "checking to make sure you're not a bot" page, then back to the login screen. After I log in it drops me back to the page I was at where I tried to launch the game. Repeating this skips the Cloudflare page, but sends me back to the login screen.
This is much like the behavior reported in #29. I'm experiencing this on Firefox 108.0.1.

I suggest adding the site to the blacklist in the FediAct settings. Please reopen if that doesn't fix it. It's probably caused by the initial API call to check if it's a mastodon instance. This will be improved in the future.


Do new record being added at the end of file?

I wanted to confirm the update strategy. Do new records being added at the end of the file?
For example I downloaded a file and inserted it into my database. Now after some time, I want to update my database. I download the file again but want to add the latest records instead of dumping all the data from DB and insert again.

The current client does not have an abstraction for querying using anything other than the API, so I’m not sure what you are asking for help with?
Thanks,
Sean.
From: Zohab Hassan @.>
Sent: Monday, June 5, 2023 5:29 PM
To: andrewlock/PwnedPasswords @.>
Cc: Subscribed @.***>
Subject: [andrewlock/PwnedPasswords] Do new record being added at the end of file? (Issue #25)
I wanted to confirm the update strategy. Do new records being added at the end of the file?
For example I downloaded a file and inserted it into my database. Now after some time, I want to update my database. I download the file again but want to add the latest records instead of dumping all the data from DB and insert again.
—
Reply to this email directly, view it on GitHubhttps://github.com/andrewlock/PwnedPasswords/issues/25, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AALDK7X65SBSWFCLXWRHR7LXJYCMNANCNFSM6AAAAAAY3GX4MA.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

I got it resolved. Thanks for help


Numbers.sqrt & co. are slow

While playing with IGV to analyze performance of sieve.enso I realized that calling sqrt slows the program by 20%. Simple fix was able to speed the execution from 550ms to 450ms.
The slow down seems to be caused by Java interop. Calling java.lang.Math.sqrt requires a lot of nodes and is far from a simple Math.sqrt invocation. To gain the speed we could rewrite sqrt (and other operations on Numbers) to invoke a builtin.

I remember that FastR faced the very same dilemma some time ago, when the developers realized that calling native functions (many math and statics related, like sqrt), from Truffle was too slow, so they ended up reimplementing a lot of these functions in Java. I guess that the overhead of calling a host method as opposed to a native function (via NFI) is different, but comparable.

It'd be ideal to have this support working without much of boilerplate code. Something like:
diff --git distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
index fa6c46b4dd..9fc7478457 100644
--- distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
+++ distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
@@ -246,7 +246,8 @@ type Number

              8.sqrt
     sqrt : Decimal
-    sqrt self = Math.sqrt self.to_decimal
+    # sqrt self = Math.sqrt self.to_decimal
+    sqrt self = @Builtin_Method "Integer.sqrt"

     ## ALIAS Logarithm

diff --git engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
index 54fabd914b..58a01cf77b 100644
--- engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
+++ engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
@@ -14,4 +14,10 @@ public class Integer extends Builtin {
   protected boolean containsValues() {
     return true;
   }
+
+
+    @org.enso.interpreter.dsl.Builtin.Method(name = "sqrt")
+    public static double sqrt(double d) {
+        return Math.sqrt(d);
+    }
 }

would be great - but it is not working right now - Methodsqrt of 3 (Integer) could not be found. - I must be doing something wrongly.  Can you comment on the approach, @hubertp (feel free to replace my diff with better one)? Btw. the original code was doing .to_decimal - e.g. manual conversion to double. It'd be great to get such a conversion with @Builtin.Method automatically as well.

Not sure how relevant this issue still is. Maybe a new measurement and closing the issue is all we need.

I have modified a benchmark to measure sqrt speed with following diff:
diff --git distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
index be15943666..35e8d600bb 100644
--- distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
+++ distribution/lib/Standard/Base/0.0.0-dev/src/Data/Numbers.enso
@@ -289,7 +289,8 @@ type Number

              8.sqrt
     sqrt : Float
-    sqrt self = Math.sqrt self.to_float
+    sqrt self = @Builtin_Method "Integer.sqrt"
+    #sqrt self = Math.sqrt self.to_float

     ## ALIAS logarithm
        GROUP Math
diff --git engine/runtime-benchmarks/src/main/java/org/enso/interpreter/bench/benchmarks/semantic/ArrayProxyBenchmarks.java engine/runtime-benchmarks/src/main/java/org/enso/interpreter/bench/benchmarks/semantic/ArrayProxyBenchmarks.java
index 1327a37cee..4c922c97e5 100644
--- engine/runtime-benchmarks/src/main/java/org/enso/interpreter/bench/benchmarks/semantic/ArrayProxyBenchmarks.java
+++ engine/runtime-benchmarks/src/main/java/org/enso/interpreter/bench/benchmarks/semantic/ArrayProxyBenchmarks.java
@@ -2,6 +2,7 @@ package org.enso.interpreter.bench.benchmarks.semantic;

 import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
+
 import org.enso.compiler.benchmarks.Utils;
 import org.graalvm.polyglot.Value;
 import org.openjdk.jmh.annotations.Benchmark;
@@ -44,7 +45,7 @@ public class ArrayProxyBenchmarks {
         import Standard.Base.Data.Array_Proxy.Array_Proxy
         sum arr =
             go acc i = if i >= arr.length then acc else
-                @Tail_Call go (acc + arr.at i) i+1
+                @Tail_Call go (acc + (arr.at i . sqrt)) i+1
             go 0 0

         make_vector n =
@@ -116,15 +117,18 @@ public class ArrayProxyBenchmarks {

   private void performBenchmark(Blackhole matter) throws AssertionError {
     var resultValue = sum.execute(self, arrayOfNumbers);
-    if (!resultValue.fitsInLong()) {
-      throw new AssertionError("Shall be a long: " + resultValue);
+    if (!resultValue.fitsInDouble()) {
+      throw new AssertionError("Shall be a double: " + resultValue);
     }
+    double result = resultValue.asDouble();
+    /*
     long result = resultValue.asLong();
     long expectedResult = length * 3L + (5L * (length * (length - 1L) / 2L));
     boolean isResultCorrect = result == expectedResult;
     if (!isResultCorrect) {
       throw new AssertionError("Expecting " + expectedResult + " but was " + result);
     }
+    */
     matter.consume(result);
   }
 }
diff --git engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
index 296f7521dc..7afce687bc 100644
--- engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
+++ engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/number/Integer.java
@@ -2,6 +2,7 @@ package org.enso.interpreter.node.expression.builtin.number;

 import org.enso.interpreter.dsl.BuiltinType;
 import org.enso.interpreter.node.expression.builtin.Builtin;
+import org.enso.interpreter.node.expression.builtin.number.Number;

 @BuiltinType(name = "Standard.Base.Data.Numbers.Integer")
 public class Integer extends Builtin {
@@ -14,4 +15,10 @@ public class Integer extends Builtin {
   public boolean containsValues() {
     return true;
   }
+
+
+    @org.enso.interpreter.dsl.Builtin.Method(name = "sqrt")
+    public static double self(Object self) {
+        return Math.sqrt(((java.lang.Number)self).doubleValue());
+    }
 }

There is no difference between builtin version and polyglot java version of sqrt. Both run in  0.211 ms/op.


Updated images for Sapor pod,oesui,platform

Below issues are fixed

Spinnaker connectivity is lost & Audit data is not displayed whenever SAPOR pod is restarted
Error in refreshing user groups message after logging into ISD .

Other PR created to fix this changes hence closing this.


[open_sockraw] socket(): Protocol  not supported.

whenever i use hping3 i get the following error
[open_sockraw] socket(): Protocol  not supported.
[main] can’t open raw socket
please Help me

Raw sockets are currently only limited to the ICMP protocol. If you can share the strace (strace -o <cmd> -ff <trace_file>, we can identify what exactly is missing/going on. Thanks for trying out WSL!

Also, do identify which Windows build you are on.

I have the same error when running
$ tcptraceroute host 1883
libnet_init() failed: libnet_open_raw4(): SOCK_RAW allocation failed: Protocol not supported
 $ sudo traceroute -T -p port host
socket: Protocol not supported
Version 1607 (OS Build 14393.953)

@madisonleavo - Thanks for your feedback. Yes, tracepath/traceroute currently does not work on WSL. See #717. I am marking this duplicate. Here is the user voice page for the same, please upvote if you would like us to prioritize this.
Also, we have made significant updates to WSL since the 14393 build (Anniversary Update). You will definitely have a better experience with WSL if you can upgrade.

[open_pcap] pcap_open_live: eth1: socket: Invalid argument
[main] open_pcap failed

On 1709 (16299.248)

Creators update still same error

this still doesnt work

[open_pcap] pcap_open_live: socket for SIOCETHTOOL(ETHTOOL_GET_TS_INFO): Socket type not supported
[main] open_pcap failed
This is my problem need some help

This one was deemed /dupe #717 but not closed.


fix: Fix Skia Frame Processor transformation matrix

What
Fixes the rotation/orientation of the Frame in a Skia Frame Processor.
When we rotate the frame, the original origin (0, 0) is no longer at the top left corner, so we also need to post-translate by the width- and height-difference (normalized to the new aspect ratio)

Before
After

Changes

Tested on

Samsung S21

Related issues

Fixes https://github.com/mrousavy/react-native-vision-camera/issues/2762

This still doesn't work. In locked Portrait mode, the preview is 90° and zoomed.

@pke create an issue with exact phone an OS, and logs.


Function for the Project type which return an array of filenames

Hello guys. I didn't find any function for the Project type, which return an array of filenames. I want to use this function for the incremental compilation. Is it possible to add this?

You could do that with an event listener on the stream:
tsProject.src()
  .on('data', (file) => console.log(file.path))
  .pipe(tsProject())
  .pipe(...)

This code will log all file paths to the console. Instead you could push them to an array.
As you plan to use this for incremental compilation, I want to warn you that you could get strange behavior, as the TypeScript compiler needs all files for type information. isolatedModules might be a simpler and better alternative.

Thank you for the information


The calculator doesn't contain Forest's Curse

as title.
emm... and also Trick-or-Treat.

adding onto this, we don't have any of the moves that change the opponents type


Uncaught TypeError: Cannot read property 'datepickerLocale' of undefined

Uncaught TypeError: Cannot read property 'datepickerLocale' of undefined

How can I reproduce this issue?


repokitteh: use randint() for random assignment.

Since the original API shepherd assignment development, RK added a randint() method. Switching to
this to avoid time-of-day hackery and possibly assignment skews.
Signed-off-by: Harvey Tuch<EMAIL_ADDRESS>

/rk-bless

@itayd this is now ready for review.

+1 (don't see how i can +1 from github?)

@envoyproxy/api-shepherds can someone with maintainers privileges merge this? It should be trivial.


[code-style] unify shell scripts style

Is your feature request related to a problem? Please describe.
Styles of shell scripts differs.
Describe the solution you'd like
Use google's shell style guide.
Describe alternatives you've considered
None.
Additional context
I found the style guide is very helpful to write robust and easy understanding scripts.

Hi Yakun Xu,
Good Day!
I am interested to work on this issue.
Could you please let me know whether this issue is applicable to the below script files in openthread code-base or not?
  ./.travis/after_success.sh
  ./.travis/script.sh
  ./.travis/before_install.sh
  ./script/clang-format.sh
  ./script/clang-format-check.sh
  ./tools/harness-automation/start.sh
  ./tools/gerrit/git-squash-merge.sh
  ./tests/toranj/build.sh
  ./tests/toranj/start.sh

Thanks in advance,
Praneeth Panasala.


feat: Proposal for validating RPC inputs

What was wrong with our way of exposing our APIs over JSON RPC? First of all, the JsonRpcServer defaulted to exporting every method on the underlying handler, including those flagged as private in ts (though js-private like #method were safe). While we had a blacklist, it's safer to be explicit on what to expose.
Then, argument deserialization was handled based on client inputs exclusively, allowing to target any class registered in the RPC interface. This means a method expecting an instance of class A as an argument, could just be fed an instance of B by its caller.
Deserialization itself was also unchecked. Most fromJSON methods did not validate any of their inputs, just assuming the any input object matched the expected shape. Primitive arguments to functions were also unchecked, so a caller could eg pass a number where a string was expected.
Other unrelated issues included often forgetting to register a class for (de)serialization in the rpc server, or forgetting to type all API return types as async (if they are over an RPC interface, calling any method should be async!).
To address these issues, we propose introducing a layer of ApiHandler classes, with the sole responsibility of exposing just the methods that belong to the interface. This allows to safely include other methods in the implementation without the risk of them being open in the API. We also use this layer to validate all inputs to a function using zod schemas, both for primitive types and for our structs:
export class ProverNodeApiHandler implements ApiHandlerFor<ProverNodeApi> {
  constructor(public readonly implementation: ProverNodeApi) {}

  // prove(epochNumber: number): Promise<void>;
  prove(): Promise<void> {
    return this.implementation.prove(...parse(arguments, schemas.Integer));
  }

  // sendEpochProofQuote(quote: EpochProofQuote): Promise<void>;
  sendEpochProofQuote(): Promise<void> {
    return this.implementation.sendEpochProofQuote(...parse(arguments, EpochProofQuote.schema));
  }
}

In the snippet above, ts complains if the result of calling parse on the given zod schema does not match the expected signature of the function called on the underlying implementation. This ensures that if we change the Api, ts will alert us to update the schemas accordingly.
Note that the ApiHandlerFor utility type removes all arguments from the functions declared in the interface. This is done on purpose to highlight that we cannot rely on the types (or even count) of those arguments before validation. Alternatively, we could pass them as ...args: any[], but I found this approach less verbose. As a bonus, ApiHandlerFor also alerts if we defined a method in the interface that does not return a Promise.
Also, since we are bundling the hydration of each struct along with its schema, we no longer have need for ClassConverters for our inputs. Each struct creates itself after validating its inputs as part of calling parse on the schema.
class EpochProofPayload {
  static get schema() {
    return z
      .object({
        epochToProve: z.coerce.bigint(),
        validUntilSlot: z.coerce.bigint(),
        bondAmount: z.coerce.bigint(),
        prover: schemas.EthAddress,
        basisPointFee: z.number(),
      })
      .transform(EpochProofQuotePayload.from);
  }

  static fromJSON(obj: any): EpochProofQuotePayload {
    return EpochProofQuotePayload.schema.parse(obj);
  }
}

Since we are removing the class converters for inputs, we may as well do the same for outputs. Since the server controls what is returned, we can just convert everything to JSON, and defer to each struct' toJSON or toString if implemented (see toJSON in this PR).
Next steps, if we agree on this approach:

Implementing the ApiHandler for everything we are currently exposing
Migrate all servers to SafeJsonRpcServer and SafeJsonProxy
Delete the old JsonRpcServer and JsonProxy (and remove Safe from the name of the new ones)
Design and implement a similar approach for the json rpc client
Delete the class converters

Related to #9455

Closing in favor of https://github.com/AztecProtocol/aztec-packages/pull/9656


Apply the Java derivation strategy to the Java Platform plugin

This commit makes sure that the Java Platform plugin also applies the
Java derivation strategy, as it, as it names indicates, also belongs
to the Java ecosystem. Not doing so triggers some weird ordering issues
if another project, which is a Java library, tries to resolve the same
dependencies as the Java platform, but after the platform has resolved
them.
Because of component metadata caching, the first project to resolve
a dependency will be the "source of truth" for dependency metadata for
the module for the whole build. It means that if it was a Java library,
then the derivation strategy was applied and the project could resolve
everything properly. However, if the first project to trigger resolution
of a module was a Java Platform, then we would cache component metadata
without derivation. This means, in particular, that platforms wouldn't
be derived for external Maven modules.
This explains why in #12728, order of execution of tasks matters: if
the subproject was resolved first (gradle sub:compileJava resolve)
then everything was fine, but if the platform was resolved first, then
the rest of the build would fail.
The fix is to apply the derivation strategy to the Java platform plugin
too. However, in an ideal world, we should refactor the Java plugins so
that they consist of several layers:

a "schema" layer, configuring the ecosystem schema, the derivation strategy, ...
a "base" layer, consisting of what the Java Base plugin does today
a "platform", directly on top of "schema"
an application, and a "library", on top of "base"

Fixes #12728

@bot-gradle test RFM please

OK, I've already triggered ReadyForMerge build for you.


Release  yml test

This was a test release but didn't work because the version number is an essential part of the release processes


Forseti firewall_rule.yaml issues

Hello - I'm new to forseti and having issues getting basic firewall rules to match. for example. I'm simply trying to send a notification if the following policy exists:
Firewall rule in GCP
{
"allowed": [
{
"IPProtocol": "tcp",
"ports": [
"22"
]
}
],
"creationTimestamp": "2018-11-16T11:30:16.216-08:00",
"description": "safdsf",
"direction": "INGRESS",
"disabled": false,
"enableLogging": false,
"id": "xxxxx",
"kind": "compute#firewall",
"name": "adsf",
"network": "projects/jg-build1/global/networks/default",
"priority": 1000,
"selfLink": "projects/jg-build1/global/firewalls/adsf",
"sourceRanges": [
"<IP_ADDRESS>/32"
]
}
my rule in firewall_rules.yaml:

rule_id: 'golden_policy'
description: Instances with internal tag must have a specific policy
mode: matches
match_policies:
- name: 'firewall1'
network: 'default'
direction: ingress
targetTags: 'internal'
allowed:
- IPProtocol: 'TCP'
ports:
- '22'
sourceRanges:
- '<IP_ADDRESS>/0'

Once the gcp policy was configured along with the rule in firewall_rules.yaml (edited /home/ubuntu/forseti-security/rules/firewall_rules.yaml, I ran the following commands to pull a new inventory, create a new model, run the scanner, and then run the notifier:
forseti inventory create --import_as testinv004
forseti model use testinv004
forseti scanner run
forseti notifier run
I've tried several other example policies but have been unsuccessful getting them to trigger a violation. I'm currently running the latest version 2.7.0. Any help would be sincerely appreciated.

@hshin-g will follow up with you to help with configuration.

@jgearheart Are you still experiencing issues with this?


Missing argument 1 for Ps_EmailGenerator::getTemplatesToBuild()

I'm getting this error from the BO when trying to configure it:
Warning: Missing argument 1 for Ps_EmailGenerator::getTemplatesToBuild(), called in
/var/data/jds_shop/dev/modules/ps_emailgenerator/controllers/admin/AdminEmailGeneratorController.
php on line 42 and defined

Locales should actually be automatically set from the enabled languages.

Fixed in #16


Fix No such file or directory exception in bks logs

The exception occurred because the bks service did not have write privileges over the cache table directories and consequently was not able to create metadata files in the case of Non local reads.

Making the cached table directories writable recursively from Cache util

Codecov Report

Merging #295 into master will decrease coverage by 0.04%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #295      +/-   ##
==========================================
- Coverage   50.39%   50.34%   -0.05%
==========================================
  Files          60       60
  Lines        3028     3031       +3
  Branches      331      332       +1
==========================================
  Hits         1526     1526
- Misses       1413     1417       +4
+ Partials       89       88       -1

Impacted Files
Coverage Δ

.../src/main/java/com/qubole/rubix/spi/CacheUtil.java
87.37% <100%> (+0.37%)
:arrow_up:

.../qubole/rubix/hadoop2/Hadoop2ClusterManagerV2.java
49.12% <0%> (-5.27%)
:arrow_down:


implement polyline feature

[ ] add the ability to add line points to the map
[ ] add the ability to remove line points on the map
[ ] add the ability to edit line points on the map
[ ] add the ability to change shading color

This will not be implemented unless there is time after required task are completed for the final sprint.


Strip https:// from model in ollama run <model>

Users may prefix the model name with https:// and we should accept it and strip it out.
For example:
ollama run https://ollama.ai/m/wb

Should be equivalent to
ollama run ollama.ai/m/wb

Closed by #377 (thanks for the PR @rlbaker!)


Added ObjectCut as background removal API

Thank you for taking the time to work on a Pull Request for this project!
To ensure your PR is dealt with swiftly please check the following:

[x] Your submissions are formatted according to the guidelines in the contributing guide
[x] Your additions are ordered alphabetically
[x] Your submission has a useful description
[x] The description does not end with punctuation
[x] Each table column should be padded with one space on either side
[x] You have searched the repository for any relevant issues or pull requests
[x] Any category you are creating has the minimum requirement of 3 items
[x] All changes have been squashed into a single commit

@davemachado Do you have a moment to take a look at this? 😄

@davemachado Sorry to bother you again, but did you have time to look at this one? Thanks! 😄

@yannbertrand Do you have a moment to take a look at this? Any modification, feel free to tell me 👍

Thanks


Weird stripe api version behaviour

It is not clear why, but regardless of what I do on my VPS or my Railway deployed version, I'm pointing to some Stripe Go version 0.76 despite upgrde to 0.80. I'm unsure if secrets.txt or even stripe listen are still necessary. The path seems to be /stripe rather than /api/webhooks.
The API versions appear to be incorrect like It was using a Stripe Go I have no control on

My bad, coming from a Javascript background, I failed to understand I have to compile the Go file to a new executable with CGO_ENABLED=0 go build


create card-grid block

Please always provide the GitHub issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Fix #36
Test URLs:

Before: https://main--24life--hlxsites.hlx.page/drafts/rrusher/large-card
After: https://3-card-large--24life--hlxsites.hlx.page/drafts/rrusher/large-card

Pulling everything for a card from just the url was not performing well enough to keep it.
With this many articles, it was just too slow.
Abandoning this block.

@rrusher maybe the magazine-issue page can fetch all the articles for that issue at once. having a filter option in spreadsheets would be very useful for this


ImportError: dynamic module does not define module export function (PyInit_cv2)

I'm running a code on deep learning on the server of our lab, which uses the opencv module, by running python main.py (contains import cv2 statement), but always get the error ImportError: dynamic module does not define module export function (PyInit_cv2).
I've tried to reinstall my anaconda and create new virtual environments, but all got the same result. This problem really confuses me a lot and I've googled for many related problems, none of them works. I think the problem is something related to the environment and has nothing to do with the code, because I got the same result by simply run import cv2 in python prompt. The more confusing thing is that, even after I remove the opencv module, I also get the same problem, but not a ModuleNotFoundError.
I've tried several ways to install this package, includes conda install opencv, pip install opencv-python, pip install opencv-python-headless
Does anyone can give me some advice? Thanks a lot!

First of all, conda install opencv does not install this package. It installs the conda package: https://github.com/conda-forge/opencv-feedstock
The error suggests that your environment is badly broken. My recommendation is to remove all OpenCV installations. This means also global installations obtained via some package manager or by manual compilation. I guess that there is some old cv2.so somewhere in the system (probably in the root of site-packages) which conflicts with all other installations. This conflicting shared library is probably also being copied to your virtual environments whenever you create one.
After cleaning the system you should run pip install opencv-python preferably in a new Python virtual environment.

Closing as this is not related to this package.

Sorry for replying you so late, but thank you very much for your help!