Bluetooth: audio: HCI command timeout on LE Setup Isochronous Data Path

Describe the bug
Zephyr is the Unicast Server.
The host fails to receive HCI Command Complete on LE Setup Isochronous Data Path command.
As the result of HCI timeout the assert fails in bt_hci_cmd_send_sync:
BT_ASSERT_MSG(err == 0, "k_sem_take failed with err %d", err);
The last debug message that is processed is ISO Data. The HCI Command Complete even if sent by controller is not processed by host stack.
Impact
Cannot establish stream
Logs and console output
[00:04:06.296,000] <dbg> bt_ascs: ascs_ep_get_status_enable: dir 0x01 cig 0x01 c                                                                                is 0x01
[00:04:06.296,000] <dbg> bt_hci_core: process_events: count 3
[00:04:06.296,000] <dbg> bt_hci_core: process_events: ev->state 0
[00:04:06.296,000] <dbg> bt_hci_core: process_events: ev->state 0
[00:04:06.296,000] <dbg> bt_hci_core: process_events: ev->state 4
[00:04:06.296,000] <dbg> bt_hci_core: bt_send: buf 0x817ea50 len 20 type 2
[00:04:06.296,000] <dbg> bt_hci_core: hci_tx_thread: Calling k_poll with 3 event                                                                                s
[00:04:06.360,000] <dbg> bt_hci_core: bt_recv: buf 0x817ce34 len 7 type 1
[00:04:06.360,000] <dbg> bt_hci_core: bt_recv: evt 0x13, len 5, evt_flags 0x01
[00:04:06.360,000] <dbg> bt_hci_core: hci_num_completed_packets: num_handles 1
[00:04:06.360,000] <dbg> bt_hci_core: hci_num_completed_packets: handle 64 count                                                                                2
[00:04:06.456,000] <dbg> bt_hci_core: bt_recv: buf 0x817f664 len 12 type 5
[00:04:06.456,000] <dbg> bt_hci_core: bt_recv: buf 0x817d1e0 len 31 type 1
[00:04:06.456,000] <dbg> bt_hci_core: bt_recv: evt 0x3e, len 29, evt_flags 0x02
[00:04:06.456,000] <dbg> bt_hci_core: hci_rx_thread: buf 0x817f664 type 5 len 12
[00:04:06.456,000] <dbg> bt_ascs: ascs_iso_recv: stream 0x8187968 ep 0x81878d0 l                                                                                en 0
Incoming audio on stream 0x8186460 len 0

[00:04:06.456,000] <dbg> bt_hci_core: hci_rx_thread: calling fifo_get_wait
[00:04:06.456,000] <dbg> bt_hci_core: hci_rx_thread: buf 0x817d1e0 type 1 len 31
[00:04:06.456,000] <dbg> bt_hci_core: hci_event: event 0x3e
[00:04:06.456,000] <dbg> bt_hci_core: hci_le_meta_event: subevent 0x19
[00:04:06.456,000] <dbg> bt_hci_core: bt_hci_cmd_create: opcode 0x206e param_len                                                                                13
[00:04:06.456,000] <dbg> bt_hci_core: bt_hci_cmd_create: buf 0x817e7c0
[00:04:06.456,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: buf 0x817e7c0 opcode                                                                                0x206e len 16
[00:04:06.456,000] <dbg> bt_hci_core: process_events: count 3
[00:04:06.456,000] <dbg> bt_hci_core: process_events: ev->state 4
[00:04:06.456,000] <dbg> bt_hci_core: send_cmd: calling net_buf_get
[00:04:06.456,000] <dbg> bt_hci_core: send_cmd: calling sem_take_wait
[00:04:06.456,000] <dbg> bt_hci_core: send_cmd: Sending command 0x206e (buf 0x81                                                                                7e7c0) to driver
[00:04:06.456,000] <dbg> bt_hci_core: bt_send: buf 0x817e7c0 len 16 type 0
[00:04:06.456,000] <dbg> bt_hci_core: process_events: ev->state 1
[00:04:06.456,000] <dbg> bt_hci_core: process_events: ev->state 0
[00:04:06.456,000] <dbg> bt_hci_core: hci_tx_thread: Calling k_poll with 4 event                                                                                s
[00:04:06.472,000] <dbg> bt_hci_core: bt_recv: buf 0x817f664 len 12 type 5

< ACL Data TX: Handle 64 flags 0x00 dlen 16                                                                                #14702 [hci1] 94131.446182
      ATT: Handle Value Notification (0x1b) len 11
        Handle: 0x0016
          Data:<PHONE_NUMBER>03020200
        ASCS: Audio Stream Sink Endpoint (Handle: 0x0016)
        ASE ID: 1
        Enabling
          CIG: 1
          CIS: 1
          Metadata: 0x03020200
> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                #14703 [hci1] 94131.498789
        Num handles: 1
        Handle: 64
        Count: 2
> ISO Data RX: Handle 96 plen 12                                                                                #14704 [hci1] 94131.594853
        Packet boundary flag: 0x02
        Timestamp flag: 1
        ISO data length: 8
          Timestamp:<PHONE_NUMBER>
          Packet seq. nb.: 0
          SDU length: 0
          Packet status flags: 0x00
> HCI Event: LE Meta Event (0x3e) plen 29                                                                                #14705 [hci1] 94131.594864
      LE Connected Isochronous Stream Established (0x19)
        Status: Success (0x00)
        Connection Handle: 96
        CIG Synchronization Delay: 2310 us (0x000906)
        CIS Synchronization Delay: 2310 us (0x000906)
        Master to Slave Latency: 2310 us (0x000906)
        Slave to Master Latency: 22310 us (0x005726)
        Master to Slave PHY: 0x02
          LE 2M
        Slave to Master PHY: 0x02
          LE 2M
        Number of Subevents: 3
        Master to Slave Burst Number: 1
        Slave to Master Burst Number: 1
        Master to Slave Flush Timeout: 1
        Slave to Master Flush Timeout: 3
        Master to Slave MTU: 40
        Slave to Master MTU: 10
        ISO Interval: 8
< HCI Command: LE Setup Isochronous Data Path (0x08|0x006e) plen 13                                                                              #14706 [hci1] 94131.604310
        Handle: 96
        Data Path Direction: Input (Host to Controller) (0x00)
        Data Path: HCI (0x00)
        Coding Format: u-law log (0x00)
        Company Codec ID: Ericsson Technology Licensing (0)
        Vendor Codec ID: 0
        Controller Delay: 0 us (0x000000)
        Codec Configuration Length: 0
        Codec Configuration:
> ISO Data RX: Handle 96 plen 12                                                                                #14707 [hci1] 94131.610777
        Packet boundary flag: 0x02
        Timestamp flag: 1
        ISO data length: 8
          Timestamp: 794016175
> ISO Data RX: Handle 96 plen 12                                                                                #14707 [hci1] 94131.610777
        Packet boundary flag: 0x02
        Timestamp flag: 1
        ISO data length: 8
          Timestamp: 794016175
          Packet seq. nb.: 1
          SDU length: 0
          Packet status flags: 0x00
> ISO Data RX: Handle 96 plen 12                                                                                #14708 [hci1] 94131.610784
        Packet boundary flag: 0x02
        Timestamp flag: 1
        ISO data length: 8
          Timestamp:<PHONE_NUMBER>
          Packet seq. nb.: 2
          SDU length: 0
          Packet status flags: 0x00
> HCI Event: Command Complete (0x0e) plen 6                                                                                #14709 [hci1] 94131.610785
      LE Setup Isochronous Data Path (0x08|0x006e) ncmd 1
        Status: Success (0x00)
        Connection handle: 96

Not sure what's causing it. The command complete event comes in a timely manner, so there shouldn't be any timeout.
The controller used is clearly not working as intended, as

It sends HCI ISO data packets before the command complete
The first 2 ISO SDUs seems to come at the same time with the same timestamp (this could be a bug in the monitor though).
The timestamp between the first SDU (794016175) and the second SDU<PHONE_NUMBER>) does not make sense.
We receive HCI ISO (#14704) before the CIS has been established (#14705)

Can you try to enable CONFIG_BT_DEBUG_ISO as well?
The topmost debug log seems to be cut off in the length (i.e. we never see the command complete event in it). Can you please provide the full log?

@MariuszSkamra Can you provide more information?

@Thalley Looks like the data path setup was done improperly. Check the referenced patches. However, this not solves the issue still as Rx & Tx QoS parameters are not NULL even if the CIS was not configured in given direction. This will lead to situation that Host will try to configure the Data Path in direction that is not enabled for a given CIS.
The API description says:
/** @brief ISO Channel QoS structure. */
struct bt_iso_chan_qos {
	/** @brief Channel Receiving QoS.
	 *
	 *  Setting NULL disables data path BT_HCI_DATAPATH_DIR_CTLR_TO_HOST.
	 *
	 *  Can only be set for a connected isochronous channel, or a broadcast
	 *  isochronous receiver.
	 */
	struct bt_iso_chan_io_qos	*rx;
	/** @brief Channel Transmission QoS
	 *
	 *  Setting NULL disables data path BT_HCI_DATAPATH_DIR_HOST_TO_CTRL.
	 *
	 *  Can only be set for a connected isochronous channel, or a broadcast
	 *  isochronous transmitter.
	 */
	struct bt_iso_chan_io_qos	*tx;
};

But those are non-NULL always, because are initialized in broadcast_sink_ep_init, broadcast_source_ep_init and unicast_client_ep_init

@Thalley Looks like the data path setup was done improperly. Check the referenced patches. However, this not solves the issue still as Rx & Tx QoS parameters are not NULL even if the CIS was not configured in given direction. This will lead to situation that Host will try to configure the Data Path in direction that is not enabled for a given CIS. The API description says:
/** @brief ISO Channel QoS structure. */
struct bt_iso_chan_qos {
	/** @brief Channel Receiving QoS.
	 *
	 *  Setting NULL disables data path BT_HCI_DATAPATH_DIR_CTLR_TO_HOST.
	 *
	 *  Can only be set for a connected isochronous channel, or a broadcast
	 *  isochronous receiver.
	 */
	struct bt_iso_chan_io_qos	*rx;
	/** @brief Channel Transmission QoS
	 *
	 *  Setting NULL disables data path BT_HCI_DATAPATH_DIR_HOST_TO_CTRL.
	 *
	 *  Can only be set for a connected isochronous channel, or a broadcast
	 *  isochronous transmitter.
	 */
	struct bt_iso_chan_io_qos	*tx;
};

But those are non-NULL always, because are initialized in broadcast_sink_ep_init, broadcast_source_ep_init and unicast_client_ep_init
So it requires further fixes.
@Thalley BTW. Would it be rationale to assign the QoS pointer during ASCS QoS configuration in case of Unicast Client/Server?

I agree, there are some issue there.
I think they have all been solved by https://github.com/zephyrproject-rtos/zephyr/pull/42964 including not setting the QoS pointers until the BAP QoS operation.


github actions Job status check functions - apply to jobs with needs as well as steps

What is the current behavior?
Job status check functions is not clear enough that these functions are equally valid for dependent jobs as well as steps.
What changes are you suggesting?
( equally for failure )
change
success
Returns true when none of the previous steps have failed or been canceled.

to
success
Returns true when none of the previous steps have failed or been canceled. Also returns true when a dependent job or all dependent jobs are successful.

There should be an example of using in steps as well as withing a job with needs.

Thanks so much for opening an issue @tonyhallett! I'll triage this for the team to take a look 👀

@tonyhallett I think what you are saying is technically true, but I am having trouble envisioning a situation where this is relevant. (i.e. if a dependent job fails, then the depending job is skipped, so it doesn't matter if success() evaluates.) Can you share an example?

The example was just an example of changes.
Perhaps success is not as important as failure as it is the default behaviour.  Nevertheless, it is true that the definition of success and the behaviour of it is the same for steps and dependent jobs.

if a dependent job fails, then the depending job is skipped, so it doesn't matter if success() evaluates.

I would say that when a dependent job fails the depending job is skipped because of an implicit sucess is evaluated.
Of course this is not what you would do but this job can choose to do the following
...
not-success:
    runs-on: windows-2019
    needs: job-that-fails
    if: ${{!success()}}
    steps:
      - name: dependent job failed
        run: echo "dependent job failed"

The point is these functions do apply to jobs as well as steps and that is apparent with always and cancelled but not for success and failure.
Please can you re-open this issue
https://github.com/github/docs/issues/4823#issuecomment-809610241

Looking at the example in the issue that you linked, it seems that job_c was skipped because it needs job_b, which was skipped. I am going to close this issue, but feel free to re-open it if you disagree.

I understand the reason why the job was skipped but this is not due to the documentation being clear in this regard.  By looking at the workflow output you can see the implicit success() being ANDed with your condition.
The behaviour mentioned in https://github.com/actions/runner/issues/491#issuecomment-660122693
The op thinks that the documentation could be improved upon and I agree and that is why have linked to that issue.

It sounds to me like you're looking for us to document that success() and failure() apply to dependent jobs as well as steps.
For failure, it seems reasonable to change the text to:

Returns true when any previous step or dependent job of a job fails.

For success, I have trouble envisioning an example where this is useful to our users. If you can provide an example where using success in a dependent job is useful for more than simply documenting the inner workings of the machinery.

For success, I have trouble envisioning an example where this is useful to our users. If you can provide an example where using success in a dependent job is useful for more than simply documenting the inner workings of the machinery, that will help justify the same addition to the success() function.

It is useful in the same way that it is useful currently.  It is the definition of success that is used in the absence of another job status check function to determine if the job runs.
I have already given you an example that demonstrates that it can be used for jobs.
${{!success()}} but if you would like another if: ${{success() && someothercondition}}.  If I wanted to be explicit that someothercondition being true does not guarantee that job runs.
Documenting the success function for dependent jobs is no different from documenting for steps - in both cases it is implicitly considered and using the success function is unnecessary aside from being explicit.
Please can you re-open this issue
#4823 (comment)

Looking at the example in the issue that you linked, it seems that job_c was skipped because it needs job_b, which was skipped. I am going to close this issue, but feel free to re-open it if you disagree.
I understand the reason why the job was skipped but this is not due to the documentation being clear in this regard. By looking at the workflow output you can see the implicit success() being ANDed with your condition.
The behaviour mentioned in actions/runner#491 (comment)
The op thinks that the documentation could be improved upon and I agree and that is why have linked to that issue.

Thanks for the feedback.
First, let me state that the place to discuss https://github.com/github/docs/issues/4823 is in that issue.
With regard to this issue, as a general rule we don't document bugs. Since the behavior in https://github.com/actions/runner/issues/491 has been marked by the team maintaining actions/runner as a bug, we feel that creating official documentation of that behavior would unduly increase our maintenance burden. For this reason, I'm going to go ahead and close this issue.
Thanks for taking the time to explain the problem in detail and working with us to make the GitHub documentation better!


Feature request: copy paste support

Sometimes it is helpful to copy some text from the viddy main view, but text selection does not work (konsole on linux).
Would it be possible to make text selectable?

Duplicate of https://github.com/sachaos/viddy/issues/65


How to finetune for image inpainting and outpainting ?

You can refer to https://github.com/VectorSpaceLab/OmniGen/blob/main/docs/fine-tuning.md
When preparing the data for training, you can add a mask (a black area) to the original image as the input image and use the original image as the output. During inference, input an image with the mask.

You can refer to https://github.com/VectorSpaceLab/OmniGen/blob/main/docs/fine-tuning.md When preparing the data for training, you can add a mask (a black area) to the original image as the input image and use the original image as the output. During inference, input an image with the mask.
@staoxiao Please fix the bug on windows!

Traceback (most recent call last):
  File "E:\OmniGen\train.py", line 371, in <module>
    main(args)
  File "E:\OmniGen\train.py", line 197, in main
    for data in loader:
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\site-packages\accelerate\data_loader.py", line 448, in __iter__
    dataloader_iter = super().__iter__()
                      ^^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\utils\data\dataloader.py", line 440, in __iter__
    return self._get_iterator()
           ^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\utils\data\dataloader.py", line 388, in _get_iterator
    return _MultiProcessingDataLoaderIter(self)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\utils\data\dataloader.py", line 1038, in __init__
    w.start()
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\process.py", line 121, in start
    self._popen = self._Popen(self)
                  ^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\context.py", line 336, in _Popen
    return Popen(process_obj)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\popen_spawn_win32.py", line 95, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\Users\jmes1\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
AttributeError: Can't pickle local object 'main.<locals>.<lambda>'


Segfault when deserializing invalid BTreeMap<u8, Box>

Unlike #298 this segfaults, so it's definitely not a false positive :) Unless it's a stack overflow, but it doesn't look like one.
use std::collections::BTreeMap;

fn main() {
    let data = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0x30, 0, 0x00, 0x00, 0x00, 0x0c, 0xa5, 0xf0, 0xff, 0xff, 0xff];
    rkyv::from_bytes::<BTreeMap<u8, Box<u8>>>(&data);
}

Valgrind says
==414394== Memcheck, a memory error detector
==414394== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==414394== Using Valgrind-3.19.0 and LibVEX; rerun with -h for copyright info
==414394== Command: /home/jess/.cache/cargo/target/debug/scratchJIYRP3Fsu
==414394==
==414394== Invalid read of size 4
==414394==    at 0x12F735: <<i32 as rkyv::Archive>::Archived as rkyv::rel_ptr::Offset>::to_isize (mod.rs:112)
==414394==    by 0x12F6AD: rkyv::rel_ptr::RawRelPtr<O>::offset (mod.rs:201)
==414394==    by 0x11DE1E: rkyv::rel_ptr::RelPtr<T,O>::offset (mod.rs:401)
==414394==    by 0x126E26: rkyv::validation::ArchiveContext::check_rel_ptr (mod.rs:138)
==414394==    by 0x1272AF: rkyv::validation::ArchiveContext::check_subtree_rel_ptr (mod.rs:195)
==414394==    by 0x116CE3: rkyv::boxed::_::<impl bytecheck::CheckBytes<C> for rkyv::boxed::ArchivedBox<T>>::check_bytes (boxed.rs:223)
==414394==    by 0x12876A: rkyv::collections::btree_map::validation::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::LeafNodeEntry<K,V>>::check_bytes (validation.rs:90)
==414394==    by 0x1291CE: rkyv::collections::btree_map::validation::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::Node<[rkyv::collections::btree_map::LeafNodeEntry<K,V>]>>::check_bytes (validation.rs:442)
==414394==    by 0x12B826: rkyv::collections::btree_map::validation::<impl rkyv::collections::btree_map::NodeHeader>::manual_check_contents (validation.rs:346)
==414394==    by 0x1298C6: rkyv::collections::btree_map::validation::_::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::ArchivedBTreeMap<K,V>>::check_bytes (validation.rs:506)
==414394==    by 0x110501: rkyv::validation::internal_check_archived_value_with_context (mod.rs:324)
==414394==    by 0x1102EC: rkyv::validation::check_archived_root_with_context (mod.rs:364)
==414394==  Address 0x1fff017f00 is not stack'd, malloc'd or (recently) free'd
==414394==
==414394==
==414394== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==414394==  Access not within mapped region at address 0x1FFF017F00
==414394==    at 0x12F735: <<i32 as rkyv::Archive>::Archived as rkyv::rel_ptr::Offset>::to_isize (mod.rs:112)
==414394==    by 0x12F6AD: rkyv::rel_ptr::RawRelPtr<O>::offset (mod.rs:201)
==414394==    by 0x11DE1E: rkyv::rel_ptr::RelPtr<T,O>::offset (mod.rs:401)
==414394==    by 0x126E26: rkyv::validation::ArchiveContext::check_rel_ptr (mod.rs:138)
==414394==    by 0x1272AF: rkyv::validation::ArchiveContext::check_subtree_rel_ptr (mod.rs:195)
==414394==    by 0x116CE3: rkyv::boxed::_::<impl bytecheck::CheckBytes<C> for rkyv::boxed::ArchivedBox<T>>::check_bytes (boxed.rs:223)
==414394==    by 0x12876A: rkyv::collections::btree_map::validation::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::LeafNodeEntry<K,V>>::check_bytes (validation.rs:90)
==414394==    by 0x1291CE: rkyv::collections::btree_map::validation::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::Node<[rkyv::collections::btree_map::LeafNodeEntry<K,V>]>>::check_bytes (validation.rs:442)
==414394==    by 0x12B826: rkyv::collections::btree_map::validation::<impl rkyv::collections::btree_map::NodeHeader>::manual_check_contents (validation.rs:346)
==414394==    by 0x1298C6: rkyv::collections::btree_map::validation::_::<impl bytecheck::CheckBytes<C> for rkyv::collections::btree_map::ArchivedBTreeMap<K,V>>::check_bytes (validation.rs:506)
==414394==    by 0x110501: rkyv::validation::internal_check_archived_value_with_context (mod.rs:324)
==414394==    by 0x1102EC: rkyv::validation::check_archived_root_with_context (mod.rs:364)
==414394==  If you believe this happened as a result of a stack
==414394==  overflow in your program's main thread (unlikely but
==414394==  possible), you can try to increase the size of the
==414394==  main thread stack using the --main-stacksize= flag.
==414394==  The main thread stack size used in this run was 8388608.
==414394==
==414394== HEAP SUMMARY:
==414394==     in use at exit: 213 bytes in 4 blocks
==414394==   total heap usage: 11 allocs, 7 frees, 2,285 bytes allocated
==414394==
==414394== LEAK SUMMARY:
==414394==    definitely lost: 0 bytes in 0 blocks
==414394==    indirectly lost: 0 bytes in 0 blocks
==414394==      possibly lost: 0 bytes in 0 blocks
==414394==    still reachable: 213 bytes in 4 blocks
==414394==         suppressed: 0 bytes in 0 blocks
==414394== Rerun with --leak-check=full to see details of leaked memory
==414394==
==414394== For lists of detected and suppressed errors, rerun with: -s
==414394== ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)

Address sanitizer doesn't seem to complain on that for whatever reason, but a fuzzing run with address sanitizer enabled for a similar input gives
==432429==ERROR: AddressSanitizer: SEGV on unknown address 0x60300003916c (pc 0x5643fe01e81b bp 0x7ffcafa62fb0 sp 0x7ffcafa62ec0 T0)
==432429==The signal is caused by a READ memory access.
    #0 0x5643fe01e81b in rkyv::collections::btree_map::validation::_$LT$impl$u20$rkyv..collections..btree_map..NodeHeader$GT$::manual_check_contents::h886d370ec082c52f (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1f381b)
    #1 0x5643fe01a624 in rkyv::collections::btree_map::validation::_::_$LT$impl$u20$bytecheck..CheckBytes$LT$C$GT$$u20$for$u20$rkyv..collections..btree_map..ArchivedBTreeMap$LT$K$C$V$GT$$GT$::check_bytes::hc02c9a81b456b14b (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1ef624)
    #2 0x5643fe01734e in rkyv::validation::internal_check_archived_value_with_context::h8444b3226392ed9a (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1ec34e)
    #3 0x5643fe0122ce in rkyv::validation::validators::check_archived_root::hcc1fec5d65934ea7 (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1e72ce)
    #4 0x5643fe0127d9 in rkyv::validation::validators::util::from_bytes::h696741c873f8c243 (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1e77d9)
    #5 0x5643fe04e7c2 in rust_fuzzer_test_input (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x2237c2)
    #6 0x5643fe117c37 in __rust_try libfuzzer_sys.959562cc-cgu.0
    #7 0x5643fe1170c3 in LLVMFuzzerTestOneInput (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x2ec0c3)
    #8 0x5643fe12cb69 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x301b69)
    #9 0x5643fe121085 in fuzzer::RunOneTest(fuzzer::Fuzzer*, char const*, unsigned long) (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x2f6085)
    #10 0x5643fe125042 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x2fa042)
    #11 0x5643fdf13e32 in main (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0xe8e32)
    #12 0x7fd8b93e32cf  (/usr/lib/libc.so.6+0x232cf) (BuildId: 9c28cfc869012ebbd43cdb0f1eebcd14e1b8bdd8)
    #13 0x7fd8b93e3389 in __libc_start_main (/usr/lib/libc.so.6+0x23389) (BuildId: 9c28cfc869012ebbd43cdb0f1eebcd14e1b8bdd8)
    #14 0x5643fdf13fd4 in _start /build/glibc/src/glibc/csu/../sysdeps/x86_64/start.S:115

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/home/jess/.cache/cargo/target/x86_64-unknown-linux-gnu/release/fuzz_target_1+0x1f381b) in rkyv::collections::btree_map::validation::_$LT$impl$u20$rkyv..collections..btree_map..NodeHeader$GT$::manual_check_contents::h886d370ec082c52f
==432429==ABORTING

Fixed by 4feead59fb7e0a27e4942a42fea264a674acdd26


Repo README is not properly formatted

Problems

Check boxes are used instead of pointers
the badges are not following the same design (combination of plastic and for the badge)
also adding an open-source label would be nice

Can I work on this issue under GSSoC'21? Kindly assign it to me.

If no one is working, may I take up this issue? @cmulay?

I'm not a maintainer of this project @smaranjitghose and @anushbhatia are, they can assign one of you on this issue.

@AshuKV @hardikshah197 any one of you send PR for this change


feature/MIL-24

Completed following sections in the documentation:

My summary of work.
My individual report
Annotations - backend subsection
Standards with respect to annotations

Also added django_extensions to annotations in order to be able to generate class diagram from Django.
A very brief review of standards may be required. Upon your approval, I'll immediately merge the PR.

Checked your commits. As it clearly can be seen you've done so much for this project.  Thank you for everything, it was really fun working with you.

Thank you for your kind words, the feeling is mutual.


Rearrange the vectorizated weights layer by layer

Hello! I would like to make some layer-by-layer analysis on your dataset. I attempt to rearrange the vectorization weights layer by layer, but I found that the length of vectorizated weight mismatchs what I computated accorroding the architecture. So it is possible to rearrange the vectorizated weights layer by layer? And what's the correct way to do this?
Thanks a lot.

Hi! Sorry for the late reply. I have a function that I use for this purpose. Perhaps you will find it useful:
def weight_split(x, fsize, ldepth, lwidth, bn=True):
  B = 3
  ind = np.array([0,0])

  mlt = 1
  if bn:
    mlt = 5

  sout_conv = np.empty((ldepth[0],mlt+1), dtype=object)
  sout_fc = np.empty((ldepth[1]+1,mlt+1), dtype=object)

  blockc = (np.floor(ldepth[0]/B)*np.ones(B)).astype('int64')
  for c in range(B-1,0,-1):
    if sum(blockc) < ldepth[0]:
      blockc[c] += 1

  assert(sum(blockc) == ldepth[0])

  cc = 0
  sz = np.array([32,32,3], dtype='int64')
  for c in range(B):
    w = lwidth[0]*np.power(2,c)

    # Unpack convolutional filters
    ind[1] += fsize*fsize*sz[2]*w
    sout_conv[cc,0] = np.transpose(np.reshape(x[ind[0]:ind[1]],[w,sz[2],fsize,fsize]), [2,3,1,0])
    ind[0] = ind[1]

    # bias and BN weights
    for mm in range(mlt):
      ind[1] += w
      sout_conv[cc,mm+1] = x[ind[0]:ind[1]]
      ind[0] = ind[1]

    sz[2] = w
    cc += 1

    for b in range(blockc[c]-1):
      # Unpack convolutional filters
      ind[1] += fsize*fsize*w*w
      sout_conv[cc,0] = np.transpose(np.reshape(x[ind[0]:ind[1]],[w,w,fsize,fsize]), [2,3,1,0])
      ind[0] = ind[1]

      # bias and BN weights
      for mm in range(mlt):
        ind[1] += w
        sout_conv[cc,mm+1] = x[ind[0]:ind[1]]
        ind[0] = ind[1]

      sz[2] = w
      cc += 1

    sz[:2] = sz[:2]/2

  #print('%d conv layers splitted (%d in total)'%(cc,ldepth[0]))

  sz = np.prod(sz)

  cc = 0
  for c in range(ldepth[1]):
    w = (lwidth[1]*np.power(2.0,-c)).astype('int64')

    # multiplicative weights
    ind[1] += sz*w;
    sout_fc[cc,0] = np.transpose(np.reshape(x[ind[0]:ind[1]],[w,sz]),[1,0])
    ind[0] = ind[1]

    # bias and BN weights
    for mm in range(mlt):
      ind[1] += w
      sout_fc[cc,mm+1] = x[ind[0]:ind[1]]
      ind[0] = ind[1]

    sz = w
    cc += 1

  w = 20
  ind[1] += sz*w
  sout_fc[cc,0] = np.transpose(np.reshape(x[ind[0]:ind[1]],[w,sz]),[1,0])
  ind[0] = ind[1]

  ind[1] += w
  sout_fc[cc,1] = x[ind[0]:ind[1]]
  ind[0] = ind[1]

  cc += 1

  #print('%d FC layers splitted (%d in total)'%(cc,ldepth[1]))

  assert(ind[0] == len(x))

  return (sout_conv, sout_fc)

This function works correctly. Thank you for your nice reply~


Removed try! macro and replaced with ?

Got it to build without warnings.

I'm impressed somebody still uses this project, it's pretty much abandoned (although I don't mind merging pull requests). Do you have any serious plans for it?

I was just poking about to see if there was a rust impl of DHT and came
across this.  Tried to build it and saw a way I could tweak
it....easiest way to learn it.
I might have a use for it.  I am working on a rust-based provisioning
service and need to figure out how to do multi-instance consistency.  A
DHT seems to make the most sense.
On 9/19/20 3:15 PM, Dmitry Tantsur wrote:

I'm impressed somebody still uses this project, it's pretty much
abandoned (although I don't mind merging pull requests). Do you have
any serious plans for it?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dtantsur/rust-dht/pull/11#issuecomment-695346364,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABC2O2YXE7GUXYNWMRT2Z3SGT7OLANCNFSM4RTBY2TQ.

I am working on a rust-based provisioning service

Oh, good luck, you have a lot of "fun" ahead :)

I might have a use for it

If you decide to, I can transfer the project to you.


How to compile this module with cmake-gui in win10?

After reading your paper, I am very interested in the software library.  However, I am sorry that I have never used ITK.
I want to compile ITK and ITKMontage in cmake-gui in win10. I have downloaded ITK and Montage, but Montage is not available after compiling. I don't know how to set Module_Montage:BOOL=ON.
Can you give me some help and advice? Thank you very much.

You need to enable the Advanced options. When doing that, it is also advisable to enable option grouping. If that is not enough, you should reduce ITK_MINIMUM_COMPLIANCE_LEVEL to show more remote modules.

It's so kind of you. Thanks for your help, I have successfully compiled it. Thank you.


fix(core): make em.create strictly typed for relations too

When using em.create(), we can create the entity graph in one step, including relations. This commit makes the typing strict for the relations too, requiring their mandatory props to be present
There is one common issue with this - the em.create automatically propagates things to inverse sides, in other words, doing this is completely fine, as the author will be propagated to the new books:
em.create(Author, {
  name: '...',
  books: [{ title: 'foo' }], // Book.author is required, but will be propagated from the upper scope
});

To get around it, the child properties matching their parent type are automatically considered as optional - in other words, since we are processing contents of Author.books, we will make all properties of type Author in the Author.books as optional. It's not perfect, as it will mark every Author property as optional, not just the one that is an inverse of Author.books, but I feel like it's the tradeoff we need to make.
Closes #4748

Wow, such a quick solution! I've tried it and it works correctly.


[4.x] - Add @RequestScoped support for testing

Resolves #7564 for 4.x

Wrong base, should be for Helidon 3.x

Would like to see this backported to 2.x

Would like to see this backported to 2.x

In progress

Considering we always add the dependency, there is no service loader to load extensions, and that we want to keep this bacwkard compatible, I do not think this design is what we want. The simplest solution here would be to just add the @AddJaxRs annotation directly to the list of annotation in the existing testing module (so we do not introduce a set of new Common annotations. As long as we keept the dependency on MP Server optional, this should be sufficient.

This was my first version of the PR  :)


Merge Without Extra Space

💥 Proposal
Here I merge two sorted arrays without extra space. I would write code in C++.
please assign it me as part of GSSOC'21.
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign


USX 2 TEI: indentation leads to bad spaces

<xsl:output indent="yes"/> leads to bad spaces.
Example:

It should be
diligentiam]diligere S2c
or
diligentiam]diligere S2c
Add spaces, where it makes sense. But, turn of indent="yes"!

mentioned in commit 2be331a44b93cf86c01f0055b5968e7a32df782e


Issues running test from fresh repo clone

I am looking to address a couple issues but I cannot even get the test suite to run after a fresh install. After installing requirements.dev.txt and requirements-test.txt, I get:
ImportError while loading conftest '/home/isaac/PycharmProjects/pyproj/test/conftest.py'.
conftest.py:8: in <module>
    import pyproj
../pyproj/__init__.py:49: in <module>
    import pyproj.network
../pyproj/network.py:8: in <module>
    import certifi
E   ModuleNotFoundError: No module named 'certifi'

After running pip install certifi and trying again, I get:
ImportError while loading conftest '/home/isaac/PycharmProjects/pyproj/test/conftest.py'.
conftest.py:8: in <module>
    import pyproj
../pyproj/__init__.py:49: in <module>
    import pyproj.network
../pyproj/network.py:10: in <module>
    from pyproj._network import (  # noqa: F401 pylint: disable=unused-import
E   ModuleNotFoundError: No module named 'pyproj._network'

I am on this Ubuntu distro:
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.4 LTS
Release:	20.04
Codename:	focal

And using a virtual environment of this Python 3.8.6.
I also tried changing the work directory from ./test to the repository root but that also generates the 2nd error above.
Any ideas? Have I missed an install step?

Did you read this?
https://github.com/pyproj4/pyproj/blob/main/CONTRIBUTING.md

It was my fault, it turns out it failed when doing pip install -e . and I just didn't notice, it was because I was missing build dependencies.


chimera-chroot: default to /bin/sh if no shell specifed

All Chimera Linux default installations come with /bin/sh but not necessarily $SHELL (e.g. /bin/bash); just default to it when no shell is specified as a QoL improvement allowing one to simply:
# chimera-chroot /media/root

No matter which shell the host may be using.

As was discussed in #chimera-linux IRC @q66 wants to keep this as a chroot wrapper without modifying stuff like this even if it would make it more convenient to use for a Chimera Linux rootfs specifically.
For bash the following wrapper function could be used to get the same functionality proposed here:
chimera-chroot() { doas SHELL=/bin/sh $(type -P chimera-chroot) "$@"; }


ci: Add job to update index.yaml

Automate updating helm repository index.

We will also need someone to tweak the settings there too, right?

It is already done. Since I created this repository I have the admin rights.

We should maybe create a team and use that we give permission to different repository we have.

We should maybe create a team and use that we give permission to different repository we have.

This seems a good idea, please share the information with people who have the proper rights.

Cool. I will do that. For now I added you as admin for this project in case you need to verify the settings and all!

Am I missing something?

The probably means the charts used to generate index were same as the one used to generate the index previously i.e for v0.18.0. Also, helm repo index isn't idempotent. By any chance did you rename them gadget-0.17.0.tgz to test ? Perphas we can try with v0.18.1

and it works, thanks for the suggestion and reviews!


Manual dom changing (based on events)

I just looked at Todo-App and noticed one kind of bug.
If you create 2 todo items, then select "Completed", then uncheck first one, you will see that second todo item is check but checkbox is not. That is because we change dom manually, while clicking on first todo item(should disappear from "Completed" view). The diff cannot find any difference between old and new item, because we changed dom, not virtual dom. I suspect that this is global problem in this framework.  It would be really cool to handle that kind of problem automatically.

Which TodoMVC are you talking about? Can you link to some code?
The official TodoMVC doesn't have the problem you mention.

The official TodoMVC does indeed have the problem he mentioned.
I actually found 3 problems with it. The first problem is what @RostyslavKhanas is referring to.

task elements are not given key attributes, so if you go to the active tab and start checking tasks off, the UI bugs out a bit.
when editing a todo title, the input always forces your cursor to be at the end (try moving cursor with arrow keys)
when deleting a task, you delete from the TOTAL list of items based on the index of the FILTERED list of items. So it deletes the wrong tasks (what looks like task 2 on the completed list isn't necessarily task 2 on the full list)

not sure about one what you mean, if you check things off from active tab, they go to Completed
it depends what your expectations are, my automatic reaction when editing is to delete not move with the cursor
ok, just saw that error, not sure it's a problem with the framework, but with how the example has been modelled

@Bondifrench , just use your link. Add 2 list items, go to "completed" and check first item. And you will see that bug.
To see 3rd bug that @farzher mentioned, we can create 2 items, check first one, go to "active" and try to remove the only item there.
However these issues are not just about correctness of TodoApp, especially problem 1. It is also about the performance. After fixing this issue, Mithril will probably be the faster framework, but the performance will be a little bit worse while running some "todomvc-perf-comparison" task.

@Bondifrench, please, watch this screencast: https://docs.google.com/file/d/0B-9NAZKjNSDycW1oSkgtalRFRDg/

ok got it

Regarding the original issue, I'm not sure it's possible to automatically solve.
When re-ordering, adding, or removing similar elements it's apparently hard/impossible to do without keys.
My idea is to allow the key attr to accept the value true (currently not a valid key). In which case Mithril generates a unique key automatically for me.

I wouldn't call this a "global problem"; Mithril does not do dirty-checking on the DOM by design. If it did, it would be immensely slower.
The solution is not the key attribute, but two-way data binding. I cover this in the Two-Way Data Binding section of my blog post.
In general you should not be modifying the DOM yourself; you should instead update data, and let Mithril handle the DOM manipulation for you.

Just a minor note. true is technically a valid key by virtue of javascript to-string-auto-casting behavior. However, the docs don't explicitly say true is an acceptable value, so consider it undefined behavior.

@mindeavor idk what you're talking about. I read your thing. That's not the problem.
@lhorie yeah I know, I tried true, it treats them all as the same key. But that's not mentioned in the docs so I think it's fine to change behavior.
You can't fix reordering / adding / deleting similar items without using a key, right?

Also, what do you guys mean by "Manual dom changing"?
The todo app isn't manually changing the dom, it's all mithril rendering.
Maybe I'm missing something.

@farzher My comment was directed at OP, sorry for not being clear

You can't fix reordering / adding / deleting similar items without using a key, right?

No, ordering of elements requires keys. This is a requirement of the diffing algorithm, it's not performance related

@farzher , "Manual dom changing" means that we change "checked" property of checkbox directly while clicking on it, instead of changing virtual object and only after that dom element(using diff+patch).

FWIW, the algorithmic limitation that causes the original issue is documented here: http://lhorie.github.io/mithril/mithril.html#dealing-with-focus (and the section after that one).
The 2nd issue @farzher brought up was fixed a while ago, and I think TodoMVC is using an old version of Mithril
The 3rd issue @farzher brought up looks like an app bug, not a Mithril core bug.

@lhorie
My 2nd issue is also just an app bug. But why are you saying it's fixed? The todomvc still has that issue
Is this what you're referring to?

when editing a todo title, the input always forces your cursor to be at the end (try moving cursor with arrow keys)

3rd issue is definitely an app bug, not mithril


ubuntu and ncurses

I'm not sure if this is your issue or if I should really pass this on to FFI. Ubuntu packages ncurses in a way that ruby is not loading:
$ ruby test.rb
...
/home/robbiemu/bin/lib/ruby/gems/1.9.1/gems/ffi-1.0.10/lib/ffi/library.rb:121:in `block in ffi_lib': Could not open library 'ncursesw': ncursesw: cannot open shared object file: No such file or directory. (LoadError)
...
Could not open library 'libncurses.so': /usr/lib/libncurses.so: file too short.
Could not open library 'libcurses': libcurses: cannot open shared object file: No such file or directory.
Could not open library 'libcurses.so': /usr/lib/libcurses.so: file too short
...
$ cat /usr/lib/libncurses.so
INPUT(libncurses.so.5 -ltinfo)

after carefully reading the error log (and the obvious reference to "ffi_lib"), I realized this is certainly a problem with FFI and not your implementation. closing my own issue.

Hi,
That doesn't look like an ffi-ncurses or an ffi error. /usr/lib/libncurses.so should be a binary file - you shouldn't see anything like that when you cat it. It looks like your libncurses has been corrupted or overwritten by something. The "file too short" error message is the clue.
Regards,
Sean

Facing the same issue with ubuntu 11.10.
Did anyone get a workaround or solution for this?
I am trying to fix this since 2 days and it still exists?
Thanks for the help in advance,
Keshav

Could you post the exact error message you get?
In the meantime, you could try:
$ sudo apt-get install libncursesw5
to ensure that you have ncursesw installed on your system.

run warbler
warble aborted!
Could not open library 'ncursesw' : ncursesw: cannot open shared object file: No such file or directory. Could not open library 'libncursesw.so' : /usr/lib/i386-linux-gnu/libncursesw.so: file too short. Could not open library 'ncurses' : ncurses: cannot open shared object file: No such file or directory. Could not open library 'libncurses.so' : /usr/lib/i386-linux-gnu/libncurses.so: file too short
The above error message is the one I am seeing when I trying to deploy my application.
Thanks for the help Sean.
Keshav.

Hi,
This looks to me like your ncurses installation is borked, possibly that the target of your libncurses.so symlinks have been moved or deleted. Try this - you should get similar results (this is on Ubuntu):
$ ls -la /usr/lib/libncurses*
-rw-r--r-- 1 root root<PHONE_NUMBER>-08-24 09:21 /usr/lib/libncurses.a
-rw-r--r-- 1 root root<PHONE_NUMBER>-08-24 09:21 /usr/lib/libncurses++.a
lrwxrwxrwx 1 root root     20 2010-08-30 23:30 /usr/lib/libncurses.so -> /lib/libncurses.so.5
lrwxrwxrwx 1 root root     13 2010-01-17 14:25 /usr/lib/libncurses.so.5 -> libtermcap.so
-rw-r--r-- 1 root root<PHONE_NUMBER>-08-24 09:21 /usr/lib/libncurses++w.a
-rw-r--r-- 1 root root<PHONE_NUMBER>-08-24 09:21 /usr/lib/libncursesw.a
lrwxrwxrwx 1 root root     21 2010-08-30 23:30 /usr/lib/libncursesw.so -> /lib/libncursesw.so.5
Also, try this:
$ file /usr/lib/libncursesw.so
You should get something like this:
/usr/lib/libncursesw.so: symbolic link to `/lib/libncursesw.so.5'
If the target is missing, you'll get something like this:
/usr/lib/libncursesw.so: broken symbolic link to `/lib/libncursesw.so.5'
Also, what OS/distro are you on? If you're on RedHat/Centos then you may be the victim of this bug: https://bugzilla.redhat.com/show_bug.cgi?id=228891
Their suggestion is:
"Please remove the /usr/lib64/libncurses.so.5 symlink and everything will work
again."
Adjusting for whether you're on a 32 or 64 bit platform.
Regards,
Sean

this is what I am getting when I tried locating libncursesw
keshav@keshav-laptop:/$ locate libncursesw
/lib/i386-linux-gnu/libncursesw.so.5
/lib/i386-linux-gnu/libncursesw.so.5.9
/usr/lib/i386-linux-gnu/libncursesw.a
/usr/lib/i386-linux-gnu/libncursesw.so
/usr/share/doc/libncursesw5
/usr/share/doc/libncursesw5-dev
/usr/share/doc/libncursesw5/changelog.Debian.gz
/usr/share/doc/libncursesw5/copyright
/usr/share/doc/libncursesw5-dev/changelog.Debian.gz
/usr/share/doc/libncursesw5-dev/copyright
/var/cache/apt/archives/libncursesw5-dev_5.9-4_i386.deb
/var/cache/apt/archives/libncursesw5_5.9-4_i386.deb
/var/lib/dpkg/info/libncursesw5-dev.list
/var/lib/dpkg/info/libncursesw5-dev.md5sums
/var/lib/dpkg/info/libncursesw5:i386.list
/var/lib/dpkg/info/libncursesw5:i386.md5sums
/var/lib/dpkg/info/libncursesw5:i386.postinst
/var/lib/dpkg/info/libncursesw5:i386.postrm
/var/lib/dpkg/info/libncursesw5:i386.shlibs
/var/lib/dpkg/info/libncursesw5:i386.symbols
keshav@keshav-laptop:/$ sudo apt-get install libncursesw5
Reading package lists... Done
Building dependency tree
Reading state information... Done
libncursesw5 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
and this is what results when I try below:
keshav@keshav-laptop:/$ file /usr/lib/libncursesw.so
/usr/lib/libncursesw.so: ERROR: cannot open `/usr/lib/libncursesw.so' (No such file or directory)
It says it is installed but it is not under /usr/lib/?
Keshav.

keshav@keshav-laptop:/lib/i386-linux-gnu$ ls -al /lib/i386-linux-gnu/libncursesw.so.5
lrwxrwxrwx 1 root root 18 Nov 18 18:46 /lib/i386-linux-gnu/libncursesw.so.5 -> libncursesw.so.5.9

Looks like ffi is not searching in /usr/lib/i386-linux. As a workaround, you could try explicitly setting the library that ffi-ncurses looks for:
export RUBY_FFI_NCURSES_LIB=/usr/lib/i386-linux-gnu/libncursesw.so
before calling your program.

Did the same as you told  before running my program and the new error is :
warble aborted!
Could not open library '/usr/lib/i386-linux-gnu/libncursesw.so' : /usr/lib/i386-linux-gnu/libncursesw.so: file too short
Keshav.

Try reinstalling the library:

sudo apt-get install --reinstall -f libncursesw5
Reinstall ruby also if it still shows error

Let me know the results so that I can put the error and the solution on my blog for future use :)

keshav@keshav-laptop:~/ehr_bellagio$ sudo apt-get install --reinstall -f libncursesw5
[sudo] password for keshav:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libgnatvsn4.6 gnat-4.6-base libgnatprj4.6 libgnat-4.6
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 1 not upgraded.
Need to get 0 B/145 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 252680 files and directories currently installed.)
Preparing to replace libncursesw5 5.9-4 (using .../libncursesw5_5.9-4_i386.deb) ...
Unpacking replacement libncursesw5 ...
Setting up libncursesw5 (5.9-4) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Error org.freedesktop.DBus.Error.TimedOut: Activation of org.freedesktop.PackageKit timed out
Getting this error when trying to reinstall libncursesw5
Keshav.

creating the symlink worked for me: sudo ln -s /lib/libncurses.so.5 /usr/lib/libncurses.so  this is duplicated with the https://github.com/ffi/ffi/issues/168

tried the above .. didn't help either...
warble aborted!
Could not open library 'ncursesw' : ncursesw: cannot open shared object file: No such file or directory. Could not open library 'libncursesw.so' : /usr/lib/i386-linux-gnu/libncursesw.so: file too short. Could not open library 'ncurses' : ncurses: cannot open shared object file: No such file or directory. Could not open library 'libncurses.so' : /usr/lib/i386-linux-gnu/libncurses.so: file too short
Keshav.

keshav@keshav-laptop:~/myapp$ warble war --trace
rake/rdoctask is deprecated.  Use rdoc/task instead (in RDoc 2.4.2+)
warble aborted!
Could not open library 'ncursesw' : ncursesw: cannot open shared object file: No such file or directory. Could not open library 'libncursesw.so' : /usr/lib/i386-linux-gnu/libncursesw.so: file too short. Could not open library 'ncurses' : ncurses: cannot open shared object file: No such file or directory. Could not open library 'libncurses.so' : /usr/lib/i386-linux-gnu/libncurses.so: file too short
/home/keshav/.rvm/rubies/jruby-1.5.6/lib/ruby/site_ruby/shared/ffi/library.rb:28:in ffi_lib' /home/keshav/.rvm/rubies/jruby-1.5.6/lib/ruby/site_ruby/shared/ffi/library.rb:10:in map'
/home/keshav/.rvm/rubies/jruby-1.5.6/lib/ruby/site_ruby/shared/ffi/library.rb:10:in ffi_lib' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/ffi-ncurses-0.3.3/lib/ffi-ncurses.rb:32 /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/ffi-ncurses-0.3.3/lib/ffi-ncurses.rb:68:in require'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/runtime.rb:68:in require' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/runtime.rb:66:in each'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/runtime.rb:66:in require' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/runtime.rb:55:in each'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/runtime.rb:55:in require' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler.rb:120:in require'
./config/boot.rb:117:in load_gems' ./config/../vendor/rails/railties/lib/initializer.rb:164:in process'
./config/../vendor/rails/railties/lib/initializer.rb:113:in run' /home/keshav/myapp/config/environment.rb:16 /home/keshav/myapp/config/environment.rb:182:in require'
/home/keshav/myapp/vendor/rails/activesupport/lib/active_support/dependencies.rb:182:in require' /home/keshav/myapp/vendor/rails/activesupport/lib/active_support/dependencies.rb:547:in new_constants_in'
/home/keshav/myapp/vendor/rails/activesupport/lib/active_support/dependencies.rb:182:in require' /home/keshav/myapp/vendor/rails/railties/lib/tasks/misc.rake:4 /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:205:in call'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:205:in execute' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:200:in each'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:200:in execute' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:158:in invoke_with_call_chain'
/home/keshav/.rvm/rubies/jruby-1.5.6/lib/ruby/1.8/monitor.rb:191:in mon_synchronize' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:151:in invoke_with_call_chain'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/rake-0.9.2/lib/rake/task.rb:144:in invoke' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/warbler-1.3.2/lib/warbler/traits/rails.rb:29:in before_configure'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/warbler-1.3.2/lib/warbler/traits.rb:28:in each' /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/warbler-1.3.2/lib/warbler/traits.rb:28:in before_configure'
/home/keshav/.rvm/gems/jruby-1.5.6@global/gems/warbler-1.3.2/lib/warbler/config.rb:170:in initialize' (eval):5:in new'
(eval):5:in `initialize'
Tasks: TOP => environment

config.war_name deprecated; replace with config.jar_name
warble aborted!
undefined method gems' for #<Rails::VendorGemSourceIndex:0x6c58d3> /home/keshav/.rvm/gems/jruby-1.5.6@global/gems/bundler-1.0.18/lib/bundler/rubygems_integration.rb:270:in all_specs'

I can't reproduce your problem on my systems. What version of Ubuntu are you running?
Please try this and let me know if it works:
export RUBY_FFI_NCURSES_LIB=/lib/i386-linux-gnu/libncursesw.so.5.9
then run your program. If that doesn't work, then please find where the real binary of ncurses (not the softlinks) is on your system and set RUBY_FFI_NCURSES_LIB to point to it then try again. And please let me know the outcome.

sean,
I was using Ubuntu 12.10, but I have downgraded my ubuntu back to 10.10 and reinstalled jruby via rvm. Now when I do a bundle install... this is the error I am seeing.
keshav@keshav-laptop-1015:~/ehr_bellagio$ bundle install
Fetching source index for http://gems.github.com/
Fetching source index for http://gemcutter.org/
Using rake (0.9.2)
Using abstract (1.0.0)
Using activesupport (2.3.10)
Using rack (1.1.0)
Using actionpack (2.3.10)
Using actionmailer (2.3.10)
Using activerecord (2.3.10)
Using activerecord-oracle_enhanced-adapter (1.3.2) from source at vendor/gems/activerecord-oracle_enhanced-adapter-1.3.2
Using activeresource (2.3.10)
Using alchemist (0.1.2)
Using annotate (2.4.0)
Using authlogic (2.1.5)
Using awesome_print (1.0.1)
Using builder (3.0.0)
Using mime-types (1.17.2)
Using xml-simple (1.1.1)
Using aws-s3 (0.6.2)
Using bouncy-castle-java (1.5.0146.1)
Using browser (0.1.2)
Using cancan (1.6.5)
Using closure-compiler (0.3.3)
Using columnize (0.3.6)
Using haml (3.0.24)
Using compass (0.10.6)
Using erubis (2.6.6)
Using factory_girl (1.2.4)
Using faker (0.3.1)
Using fastercsv (1.5.3)
Java::JavaLang::ArrayIndexOutOfBoundsException: An error occured while installing ffi (1.0.11), and Bundler cannot continue.
Make sure that gem install ffi -v '1.0.11' succeeds before bundling.
And running the gem install ffi -v 1.0.11 command is throwing back the  ArrayOutofIndex System.lang.java exception ..
This was working before with ubuntu 10.10, jruby 1.5.6  .. but now it;s not
Keshav.

On Ubuntu 11.10 (64-bit), the libncurses5-dev package installs /usr/lib/libncurses.so, which is a text file with the contents "INPUT(libncurses.so.5 -ltinfo)".

Likewise, the libncursesw5-dev package installs /usr/lib/libncursesw.so, which is a text file with the contents "INPUT(libncursesw.so.5 -ltinfo)".

I want to thank everyone for pitching in, I have to confess I dont have administrative access on my box and oculd not do a lot fo the work that viking, et al, have done.
That said I have the ncursesw lib installed and if you look at the default so it gives the filename of the actual file: that file does exist and aught to work just fine.


Improve autoscaler e2e tests

Codecov Report

Merging #4424 into master will decrease coverage by 1.63%.
The diff coverage is 57.28%.

@@            Coverage Diff             @@
##           master    #4424      +/-   ##
==========================================
- Coverage   57.86%   56.23%   -1.64%
==========================================
  Files         901      891      -10
  Lines       28912    29151     +239
  Branches     4090     4216     +126
==========================================
- Hits        16731    16394     -337
- Misses      12181    12757     +576


Select-Object: -ExpandProperty, unlike -Property, enforces the existence of the targeted property

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
This is an inconsistency that has always existed, from what I can tell.
Resolving it would amount to a breaking change,
so the answer may be just to document it.
Either way, it would be good to know if there is a by-design element to this inconsistency.
# For the object without a .Prop property, returns a [pscustomobject] with a .Prop property that contains $null
[pscustomobject] @{ Prop=1 }, [pscustomobject] @{  } | Select-Object -Property Prop

'---'

# !! For the object without a .Prop property, emits a (non-terminating) ERROR, complaining that the
# !! property doesn't exist.
[pscustomobject] @{ Prop=1 }, [pscustomobject] @{  } | Select-Object -ExpandProperty Prop

Expected behavior
Prop
----
   1
       # $null value
---
1
       # $null value

Actual behavior
Prop
----
   1

---
1
Select-Object:
Line |
   8 |  … Prop=1 }, [pscustomobject] @{  } | Select-Object -ExpandProperty Prop
     |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Property "Prop" cannot be found.

Error details
No response
Environment data
PowerShell Core 7.3.0-rc.1

Visuals
No response

I think I think this is by-design.  In the first case, it's no different than $a.foo where foo doesn't exist so $null is returned.  In the latter case -ExpandProperty means to expand an existing property so it fails if it doesn't exist.  I realize that it may not be intuitive, but as you noted it would also be a breaking change.  Maybe @JamesWTruher knows the history.

@SteveL-MSFT, to me there is no more implied intent with respect to the existence of a targeted property with -ExpandProperty than with -Property.
You can think of $a | Select-Object -ExpandProperty Prop  as $a | % { $_.Prop }, whereas $a | Select-Object -Property Prop is equivalent to $a | % { [pscustomobject] @{ Prop = $_.Prop } }.
In real-world scenarios only some of the input objects may have the targeted property, and returning only their (enumerated) property values (potentially none)  to me seems preferable than reporting an error for each input object that doesn't have that property.

If the decision ends up in favor of keeping the existing behavior, the thing to document is:

With -ExpandProperty, if you want to ignore those input objects that do not have the requested property, add -ErrorAction Ignore;  by contrast, if you want to silence error messages and later examine which specific input objects didn't have the requested property, combine -ErrorAction SilentlyContinue with -ErrorVariable, and examine the .TargetObject property of the [ErrorRecord] instances stored in the target variable.

This is queued for WG discussion

The cmdlet working group reviewed this, and agreed the best path is to clarify this behaviour under the parameters in the Select-Object documentation.


Add email subscription form to / and /newsletters

Note that this is based on #18 which should be tested and merged first.

requires rebase on rebased #18.

rebase plz :pray:

Rebased and addressed @harding's good feedback. The form is now above the list of newsletters, and I've added a newsletter layout that contains a signup form at the bottom of the page.

Tested ACK 41dead2c4d1214d1fbf19a39e656deaa9d940c70, a rather unfortunate commit id, with the caveat that a test of signup doesn't do double opt-in, so I think the list is in test mode or Mailchimp doesn't follow best practices.

Tested ACK 41dead2, a rather unfortunate commit id

I think Satoshi is trying to communicate with us.

@jamesob is out of office today, so I've gone ahead and pushed a new branch. Changes:

squashed commits down to two
changed the CSS slightly so the subscribe area doesn't have a white box surrounding it.
changed the mailchimp list that the subscribe form adds the subscriber to. Dave - this should fix your comment about double opt-in. Feel free to retest.
changed the wording from Get newsletter to Subscribe to our newsletter

Fully tested ACK 258bdbfe665e2f8ee97a26c2d107e88510c4e20a  Thanks!

Thanks @jamesob for code and @harding for review 🌠


Style the Forum Page

Description: Add styling to the forum page, including formatting posts, replies, and the overall layout. Ensure that the page is visually appealing and user-friendly.
Assignee: Daniel
Labels: UI, forum, styling
Due Date: [Week 11]

Just fixed the threads styling, need to now style the textboxes and buttons


'ng serve' could be used as a build task

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

LGTM, thanks @acristu !


[FEATURE] Improved error reporting when bridge does not exist

Required information

Distribution: ubuntu
Distribution version: 16.04
The output of "lxc info"

apicompat: 0
auth: trusted
environment:
  addresses: []
  architectures:
  - x86_64
  - i686
  certificate: <<snip>>
  driver: lxc
  driverversion: 2.0.1
  kernel: Linux
  kernelarchitecture: x86_64
  kernelversion: 4.4.0-28-generic
  server: lxd
  serverpid: 2178
  serverversion: 2.0.2
  storage: zfs
  storageversion: "5"
config:
  images.auto_update_cached: "false"
  images.auto_update_interval: "0"
  storage.zfs_pool_name: lxd
public: false

Issue description
If you assign an instance to a bridge which does not exist, then it fails to start. However the error message returned is not helpful: Error calling 'lxd forkstart ...': err='exit status 1'
Steps to reproduce

Create a profile which points to a non-existent bridge
Launch an instance which uses this profile. It fails.

# lxc start nagios1
error: Error calling 'lxd forkstart nagios1 /var/lib/lxd/containers /var/log/lxd/nagios1/lxc.conf': err='exit status 1'
Try `lxc info --show-log nagios1` for more info

The --show-log output is very verbose. If you filter it down to just ERROR lines then the error does appear:
# lxc info --show-log nagios1 | grep ERROR
            lxc<PHONE_NUMBER>2038.108 ERROR    lxc_conf - conf.c:instantiate_veth:2595 - failed to attach 'veth0XL36W' to the bridge 'br-int1': Operation not permitted
            lxc<PHONE_NUMBER>2038.131 ERROR    lxc_conf - conf.c:lxc_create_network:2872 - failed to create netdev
            lxc<PHONE_NUMBER>2038.131 ERROR    lxc_start - start.c:lxc_spawn:1080 - failed to create the network
            lxc<PHONE_NUMBER>2038.131 ERROR    lxc_start - start.c:__lxc_start:1353 - failed to spawn 'nagios1'

...although to be 100% accurate, the error is not that permission is denied, but that the bridge does not exist at all.
Ideas:

For this particular error, lxc start could test for the existence of the necessary bridge(s) before trying to start the instance, and then return a better error via the API. This would also help cases when starting instances via the API (in particular, the ansible lxd_container module)
More generally, logs of ERROR and above could be displayed to stderr automatically - although that's mainly of help for CLI users

In addition, the "failed to attach ... to the bridge" error could be more specific than "Operation not permitted". I thought this could simply be the return code from SIOCBRADDIF
However, brctl is able to make the distinction:
# brctl addif foo eth0
bridge foo does not exist!

and strace on this command shows ENODEV as the result:
socket(PF_LOCAL, SOCK_STREAM, 0)        = 3
access("/proc/net", R_OK)               = 0
access("/proc/net/unix", R_OK)          = 0
socket(PF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 4
ioctl(4, SIOCGIFINDEX, {ifr_name="eth0", }) = 0
close(4)                                = 0
ioctl(3, SIOCBRADDIF)                   = -1 ENODEV (No such device)
ioctl(3, SIOCDEVPRIVATE, 0x7ffde2c1e040) = -1 ENODEV (No such device)
socket(PF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 4
ioctl(4, SIOCGIFINDEX, {ifr_name="eth0", }) = 0
close(4)                                = 0
write(2, "bridge foo does not exist!\n", 27bridge foo does not exist!
) = 27
exit_group(1)                           = ?
+++ exited with 1 +++

brctl uses the old kernel API, LXC talks directly over netlink, so I suspect the netlink error is a bit different.

I grepped for the message "failed to attach" in the lxd and lxc trees, and I could only find it in instantiate_veth which in turn calls lxc_bridge_attach and that appears to use ioctl() rather than netlink - although there's a lot of other netlink code in that file.
But maybe I have missed something?


results flicker when typing fast

Describe the bug
the results list flickers when typing too fast
Version
0.7.6
Minimal Config
Provide a minimal config to reproduce the bug.
{
  "activation_mode": {
    "labels": "jkl;asdf",
    "use_alt": true
  },
  "as_window": false,
  "theme": "catppuccin"
}

To Reproduce

run walker
type fast

Expected behavior
results list should not flicker
Screenshots
https://github.com/user-attachments/assets/02d27f4a-f18e-47d2-a822-4be747797b7a
Desktop

OS: Linux 6.6.47, NixOS, 24.11 (Vicuna), 24.11.20240821.c374d94
DE: Hyprland v0.42.0

Additional context
Add any other context about the problem here.

If you want to avoid flickering you have different options:

set search.delay in your config, see https://docs.gtk.org/gtk4/property.SearchEntry.search-delay.html
put a background color around the whole box

Like... it's not a bug. You type => you get new search entries.

i'v added the delay to search but the flicker still happens
flicker at search.delay = 1s
https://github.com/user-attachments/assets/cb7119bb-0215-4ffe-952d-8b94a251c1e9
contrasted to anyrun where only the individual search items sort of flicker, not the whole box
https://github.com/user-attachments/assets/861432dd-18a1-48c5-af6e-1774cf0cdc09

Ah, i see now. The videos weren't playing for me.
Should be fixed.. will create a release.


Initial setup

Initial repo setup as per showcased in the demo repo

@acolombier let's get this in soon.

Sounds good to me! Apologies I haven't addressed this sooner. I just sorted the major bits (pre-commit and CI) so hopefully we are in good state now to get this in.

@ywwg Done!

Thank your for putting in the effort to set this up @acolombier


Can't connect

This doesn't seem to work. I have admin access to our Project Online tenant and when I try and connect (after signing into my organisational O365 account), I just get an error saying "We couldn't authenticate with the credentials provided"

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

ID: aa7de3f7-737b-cbbd-0911-e5535b198795
Version Independent ID: 26615fdb-93ac-8d7f-f7cc-f7ebc436aa04
Content: Project Online: connect to data through Power BI Desktop - Power BI
Content Source: powerbi-docs/desktop-project-online-connect-to-data.md
Service: powerbi
GitHub Login: @davidiseminger
Microsoft Alias: davidi

HI @ajobbins and thanks for your question. This looks like a support request rather than documentation feedback. You might find a solution in the Power BI Community, found at https://community.powerbi.com. If not, you can get support by going to https://support.powerbi.com.


Notification tray icons not working in QubesOS

I'm running QubesOS 3.2 and have Keybase installed/activated in a number of my running AppVMs. However, GUI integration doesn't seem to be working quite as it should. In my tray, I have a number of empty spaces but hovering over them shows "Show Keybase". The number of empty spaces corresponds to the number of running AppVMs that have the Keybase client installed in them. In this case I have 3 running AppVMs:

When I click on any them, a small (empty) window flashes on the screen and disappears again. The only way I can get the Keybase UI to actually launch is by opening a terminal in the AppVM I want and typing "run_keybase".

I'm running into this too.  Is there any way to tell the Keybase UI to not push itself into the system tray?


Use randomized fingerprint by default

Enable utls fingerprint -> randomized for general sub
btw: utls on clash meta can be configured through custom clash conf

Which app supports this feature, and will there be any issues with backward compatibility?


Change namespace to "Ramsey"

I've received a fair amount of feedback from people about the "Rhumsaa" namespace. Apparently, it causes confusion and makes it difficult to find my packages. On more than one occasion, I've received reports that I have misspelled my namespace (the assumption is that the vendor name of the namespace should be "Ramsey" and I have misspelled it as "Rhumsaa").
In the 3.0 release, I am considering changing the package name to "ramsey/uuid" and the root namespace to "Ramsey."
I'm opening this up for comments to get feedback from those who are using this package. I want to make the upgrade transition as smooth as possible, and I'd like to hear whether this will significantly impact people using "rhumsaa/uuid."

using generic namespace is usually even more confusing for beginner to mid level developers ..
try to make it easier pal :dancer:

I don't believe that changing the package name on a major version bump will impact anybody currently using the old package name. There might be things to consider on the Packagist front, though? You probably won't want or need rhumsaa/uuid to pull updates from your repository. Not entirely sure how that will work. But from the perspective of a user, if I'm relying on rhumsaa/uuid I think everything will continue to work; they just won't receive new updates.

I'm all for it. All I ever remember is that it starts with "rhum" (or is it rum ? one or two a's ?), but always end up looking it up on Packagist.
As for the BC break, well, it's a major bump, and honestly, I don't think it'll take anyone more than a global find/replace to fix it when upgrading a project. Pretty much every one of my projects with database entities uses Uuid, yet changing the namespace doesn't scare me the very least...

I like Rhumsaa as a vendor name for a few reasons.

it's unique, and easy to search for (both on google and in github, but also when grepping through code).
it gives you an easy possibility for moving the repo into an organization, because it's not identified with your username. (This latter is why I have used "Phly" as "my" namespace; I now have an organization separately, which allows me to add contributors and attribution.)

Every time I've found your library, it's because I searched for UUID, not your actual name. Those who are looking for UUID implementations (nothing specific), will do the same. I see it as a moot point, to be frank.

I think it's not that much of an issue but if you think changing it will cause less support requests than by all means go for it. Do consider implications regarding Composer and please ensure that the old packages will be available under the known names and URLs. Nothing is as annoying as your builds suddenly failing because someone decided to rename their package or to move a package to a different URL.

Even that's a minor issue though - easy fix :)

I have decided to make this change. Thanks for the input and feedback.

:+1:

@ramsey When are you planning on making this change?

I'm hoping to get some time over the next week or so to make the change in the 3.0 branch. Soon after, I think I'll be ready to do a 3.0.0-alpha1 tag so that people can start testing it early with their stuff.

@ramsey Sounds good! I'm not in a rush but wondered if new projects I spin up should be using the new package name. :) Looked like nothing had changed yet and I wanted to make sure I hadn't missed something!

To sustain backwards-compatibility, you could use http://php.net/manual/de/function.class-alias.php.

That's interesting. However, it might be best to do that in the 2.x series (2.9.0 maybe) as a way of deprecating Rhumsaa\Uuid and providing an upgrade path to Ramsey\Uuid. Then, in 3.0, remove the class alias.
Thoughts?

Sounds decent. I'll throw my two cents by suggesting that you use class_alias to map to a subclass of Uuid that's able to trigger a deprecation warning. Otherwise, the change will most likely go unnoticed...

I'd just as soon you pull the bandaid off and make the switch. New namespace? New package name? It is a new package. In theory people will be able to install both packages still so if they need to install the old one because of a package dep, Composer will just do that.

@aztech-dev I think what you're saying makes most sense to do in v3. It would not be easy to do in v2, without switching everything over to the new namespace. In order for it to work, I would use class_alias() to map Rhumsaa\Uuid to the subclass, which would look something like this:
class UuidDeprecated extends Uuid
{
    public static function uuid1()
    {
        trigger_error('This is deprecated. Use Ramsey\Uuid.', E_USER_DEPRECATED);
        return parent::uuid();
    }
}

While kind of cool and elegant, I'm not sure it's worth it, as @simensen has suggested.

Yeah, I forgot about the new package when I suggested that. Don't know how Packagist will handle it though, considering the repo URL does not change.

I'm already aware of how Packagist will deal with this. For example, with rhumsaa/vnderror, I changed the package name to ramsey/vnderror. In Packagist, I submitted a new package with the same GitHub URL, and it picked up the new package name from composer.json. It asked me to confirm that I wanted to create a new package, and I said yes.
Then, I marked rhumsaa/vnderror as abandoned (see here) and told it to recommend ramsey/vnderror as the new package. This seems to have worked fine, and since they're the same URL, both packages keep getting updated in Packagist (an unintended but okay side-effect).
When people run composer require and they have the abandoned package in their requirements, they'll see a message that looks like this:

The only problem is the total download counts will be screwed up, but not a big deal.


Question regarding the training time.

Hi, thanks for sharing the code.
I was wondering how long it generally will take to train a model from scratch? I understand it depends on computational power of servers. In this case, what kind of hardware configuration works the best for training SEAL on OGB tasks?
I'm using the default parameters to test the model on 'ogbl-citation'. Each training epoch takes around 4.5 hours on a server with E5-2660 (10 physical cores), 264GB memory and Tesla P100. Does the code perform normal under this setting? ?

Hi! On ogbl-citation, the default command is changed a bit after we support directed graphs. Sorry I just updated the repo. Basically now we only need 1-hop subgraphs instead of 2, because we can query neighbors in directed graphs from both directions. You may try the updated command, which should take around 1 to 2 hours per epoch with your configuration. The new command also results in 2 percent better performance, leading to a 87.65% final test MRR.


Codespace vitmal automatic space palm tree r7wrj49599jcw77g

Hi, thanks for contributing. There are some files that you removed (the example config files). but if you can re-add them back and commit that'll be best. :)

I don't speak English and I did some translations of the text into CZ for the files. Unfortunately I can't install this great project on my PC for old versions of the packages. I was working in a GitHub codespace where I'm not in my environment and I was doing something I didn't know.

@vitmal If you still need help to install this project please let me know so I can walk you through the installations :)

Thanks are no longer necessary.
pá 9. 6. 2023 v 10:56 odesílatel Earnest Angel @.***>
napsal:

@vitmal https://github.com/vitmal If you still need help to install
this project please let me know so I can walk you through the installations
:)
—
Reply to this email directly, view it on GitHub
https://github.com/RirikoAI/RirikoBot/pull/107#issuecomment-1584217420,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGJBFMITRNEM7ZIXIJHKJMLXKLQKJANCNFSM6AAAAAAW4IEO7A
.
You are receiving this because you were mentioned.Message ID:
@.***>


Added SUSE docker image support

Fixes: #513

       	Successfully built 48a8f621e6f6
Finished building molecule_local/opensuse:latest
Creating container group-vars-scenario with base image opensuse:latest ...
Container created.

@retr0h I do have some issues with testing my role with this fix. So I'm not sure if this is everything that has to be done for making it work with OpenSuse.

@dj-wasabi what issues are you having?  I am able to spin up a suse container with this change.  However, I need to update molecule.yml with a command.

@retr0h
Maybe not related to this change or maybe just my lack of experience/knowledge working with (open)Suse, but I got this error when executing a playbook:
- name: "Suse | Install basic repo file"
  zypper_repository: repo="http://download.opensuse.org/repositories/server:monitoring/openSUSE_{{ ansible_distribution_version }}/server:monitoring.repo"

And this is the error I get:
TASK [ansible-zabbix-agent : Suse | Install basic repo file] *******************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ImportError: No module named xml.dom.minidom
fatal: [zabbix-agent-suse]: FAILED! => {"changed": false, "failed": true, "module_stderr": "Traceback (most recent call last):\n  File \"/tmp/ansible_8QVxOQ/ansible_module_zypper_repository.py\", line 329, in <module>\n    main()\n  File \"/tmp/ansible_8QVxOQ/ansible_module_zypper_repository.py\", line 311, in main\n    exists, mod, old_repos = repo_exists(module, repodata, overwrite_multiple)\n  File \"/tmp/ansible_8QVxOQ/ansible_module_zypper_repository.py\", line 147, in repo_exists\n    existing_repos = _parse_repos(module)\n  File \"/tmp/ansible_8QVxOQ/ansible_module_zypper_repository.py\", line 106, in _parse_repos\n    from xml.dom.minidom import parseString as parseXML\nImportError: No module named xml.dom.minidom\n", "module_stdout": "", "msg": "MODULE FAILURE"}

Hey @dj-wasabi I checked out your role, and this is not a molecule issue.  Was able to get past the No module named xml.dom.minidom issue by tweaking a few things.
diff --git a/tasks/Suse.yml b/tasks/Suse.yml
index d680d9a..60e7c54 100644
--- a/tasks/Suse.yml
+++ b/tasks/Suse.yml
@@ -1,8 +1,11 @@
 ---
 # Tasks specific for OpenSuse Systems

+- name: "Install zypper repo dependency"
+  zypper: name=python-xml
+
 - name: "Suse | Install basic repo file"
-  zypper_repository: repo="http://download.opensuse.org/repositories/server:monitoring/openSUSE_{{ ansible_distribution_version }}/server:monitoring.repo"
+  zypper_repository: repo="http://download.opensuse.org/repositories/server:monitoring/openSUSE_Leap_{{ ansible_distribution_version }}/server:monitoring.repo"
   when: zabbix_repo == "zabbix"
   become: yes
   tags:
@@ -16,4 +19,4 @@
   become: yes
   tags:
     - zabbix-agent
-    - init
\ No newline at end of file
+    - init

@retr0h Thanks! So I was lacking of Suse knowledge. :-)
Then this PR looks good to me. 👍

@retr0h Thanks! So I was lacking of Suse knowledge. :-)

👍


Drag & Drop "Access Violation" when using Async Main

Describe the bug
Drag and drop does not work when using Async Main (C# feature). Instead of working correctly, the application hard crashes with an "Access Violation" or freezes, then resumes (but with drag & drop no longer working at all).
Steps to reproduce the bug

Create new blank app, packaged (winui 3 in desktop)
Set Windows App SDK version to 1.1.2
Add a list view to the main window (replacing existing content, remember to remove code behind)

 <ListView CanDragItems="True">
    <ListViewItem>
        <TextBlock Text="Test 1" />
    </ListViewItem>
    <ListViewItem>
        <TextBlock Text="Test 2" />
    </ListViewItem>
    <ListViewItem>
        <TextBlock Text="Test 3" />
    </ListViewItem>
    <ListViewItem>
        <TextBlock Text="Test 4" />
    </ListViewItem>
</ListView>

Add <DefineConstants>DISABLE_XAML_GENERATED_MAIN</DefineConstants> to the csproj file
Create a new Program class, paste in the following contents (this is inspired by the following Microsoft tutorial.

using Microsoft.UI.Dispatching;
using Microsoft.Windows.AppLifecycle;
using System;
using System.Threading;
using System.Threading.Tasks;

namespace AsyncDragDrop;

public static class Program
{
    [global::System.Runtime.InteropServices.DllImport("Microsoft.ui.xaml.dll")]
    private static extern void XamlCheckProcessRequirements();

    [STAThread]
    public static async Task Main(string[] args)
    {
        XamlCheckProcessRequirements();
        WinRT.ComWrappersSupport.InitializeComWrappers();

        var mainInstance = AppInstance.FindOrRegisterForKey("main");
        if (!mainInstance.IsCurrent)
        {
            // Redirect the activation (and args) to the "main" instance, and exit.
            var activatedEventArgs = AppInstance.GetCurrent().GetActivatedEventArgs();
            await mainInstance.RedirectActivationToAsync(activatedEventArgs);

            return;
        }

        Microsoft.UI.Xaml.Application.Start((p) =>
        {
            var context = new DispatcherQueueSynchronizationContext(DispatcherQueue.GetForCurrentThread());
            SynchronizationContext.SetSynchronizationContext(context);
            new App();
        });
    }
}

Run the application, attempt to drag a list view item, and observe the crash.

Expected behavior
The application works as expected, drag and drop works as expected
Screenshots
No response
NuGet package version
WinUI 3 - Windows App SDK 1.1.2
Windows app type

[ ] UWP
[X] Win32

Device form factor
Desktop
Windows version
Windows 11 (22H2): Build 22621
Additional context
A downloaded repro (made using the above steps): https://github.com/DominicMaas/AsyncDragDrop

Looks like this is talked about in https://github.com/microsoft/WindowsAppSDK/issues/1709
My initial work around was to run the async code within a sync context (see many RunSync helpers around the internet), but that doesn't work (the app no longer crashes, but redirecting does not work).
Going to try the code mentioned in the above issue
[STAThread]
public static int Main(string[] args)
{
  AppActivationArguments activationArgs =
    AppInstance.GetCurrent().GetActivatedEventArgs();
  AppInstance keyInstance = AppInstance.FindOrRegisterForKey("Foo");
  if (!keyInstance.IsCurrent)
  {
  	// Move the redirect call to another thread, set an event when
  	// it’s complete, and use a non-blocking function to wait on the
  	// event.
    redirectEventHandle = CreateEvent(
      IntPtr.Zero, true, false, null);
    if (redirectEventHandle != IntPtr.Zero)
    {
      Task.Run(() =>
      {
        keyInstance.RedirectActivationToAsync(activationArgs)
          .AsTask().Wait();
        SetEvent(redirectEventHandle);
      });

      uint CWMO_DEFAULT = 0;
      uint INFINITE = 0xFFFFFFFF;
      _ = CoWaitForMultipleObjects(
        CWMO_DEFAULT, INFINITE, 1,
        new IntPtr[] { redirectEventHandle }, out uint handleIndex);
    }
  }
  //...etc
}

C#/WinUI has the additional issue that you can declare main to be async, but
this actually prevents Narrator from reading the XAML elements, so this is an
accessibility concern.

Seems like this has broken since last time I was here. The current workaround just causes the app to crash (e.g. launching an app from protocol while it's already running).

Actually might be unrelated to this, and instead https://github.com/microsoft/WindowsAppSDK/issues/3439
Pretty sure the original issue mentioned here is still a problem though, which is why all these work-arounds are still needed.


className attribute of the <Link> component

From this article, under the "Summary" section, there's a note:

Obviously it stated that you should add it (the className attribute) to the a tag, NOT to the <Link> tag. But the cited example clearly shows otherwise:

Shouldn't it be rephrased as: "add it to the Link tag, not to the a tag." ?

Thanks, fixing this now!


"warning: GOPATH set to GOROOT (/usr/local/go) has no effect"

I get this error during my installs and updates, not sure what to do.

It is not an issue
On Fri, Mar 10, 2023 at 4:36 AM Manic137 @.***> wrote:

I get this error during my installs and updates, not sure what to do.
—
Reply to this email directly, view it on GitHub
https://github.com/fforchino/vectorx/issues/8, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4AIJCIRNKCYZL3NOXFGNTW3KOTVANCNFSM6AAAAAAVV5AFK4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Fuzzy search should prioritise exact file name matches

Describe the bug
Searching for a model e.g. f_my_model often returns results where the model in question is surprisingly far down the list.
We often have models with similar names with different underscores, for instance a_users and b_users or f_orders_current and h_orders_old (I have had to make up some names here).
Steps To Reproduce
Open the generated dbt documentation, and search for a model name in the top bar. Type the exact model name (minus extension), and observe that the model is not always the first hit.
Expected behavior
Exact model name should be listed at the top.
Screenshots and log output
I can't provide any screenshots due to it being a private dbt project, but just to provide explicit context, this is the search field I mean:

The output of dbt --version:
installed version: 0.20.2
   latest version: 0.21.0

Your version of dbt is out of date! You can find instructions for upgrading here:
https://docs.getdbt.com/docs/installation

Plugins:
  - bigquery: 0.20.2
  - snowflake: 0.20.2
  - redshift: 0.20.2
  - postgres: 0.20.2```

### Additional context
Add any other context about the problem here.

Agreed that this should not be labeled as "completed" -- thanks for flagging this @rightx2 👍

Re-categorizing this as a feature request and labeling as "help wanted".

Created a PR for this issue


core dump introduced in the last commit

hello,
I added "gdb backtrace" to travis-ci,
have a look
https://travis-ci.org/chipitsine/stream-lua-nginx-module/jobs/174301008#L1022

@chipitsine It was actually a bug in those tests. Those tests are testing C APIs of ngx_http_lua_module instead of the current ngx_stream_lua_module.

Already committed a fix to master.

@chipitsine Thanks for the report!
BTW, the backtrace of the crash site is usually not very helpful since it is often not the culprit. Using valgrind is much more reliable.


How can I use this themes with zim?

https://github.com/arialdomartini/oh-my-git-themes

3 steps:

Clone the repo to the prompt module external-themes directory (This just gives it a standard location and downloads the prompts)
git clone https://github.com/arialdomartini/oh-my-git-themes.git ${ZIM_HOME}/modules/prompt/external-themes/oh-my-git
Create the symlinks in the functions directory, this is where prompts are loaded from (symlinks are files that point to other files, this allows us to continually update the oh-my-git themes and not have to modify the files that point to them)
ln -s ${ZIM_HOME}/modules/prompt/external-themes/oh-my-git/arialdo-granzestyle.zsh-theme ${ZIM_HOME}/modules/prompt/functions/prompt_granzestyle_setup && ln -s ${ZIM_HOME}/modules/prompt/external-themes/oh-my-git/arialdo-pathinline.zsh-theme  ${ZIM_HOME}/modules/prompt/functions/prompt_pathinline_setup && ln -s ${ZIM_HOME}/modules/prompt/external-themes/oh-my-git/oppa-lana-style.zsh-theme ${ZIM_HOME}/modules/prompt/functions/prompt_oppa-lana_setup
To use them, simply modify the value of zprompt_theme in the zimrc, which is at ~/.zimrc. For example to use the granzestyle theme, it would look something like zprompt_theme='granzestyle' and a similar pattern for the others.

If you come across any more problems, feel free to ask for help!

@karambaq Can you run nano ${ZIM_HOME}/modules/prompt/external-themes/oh-my-git/arialdo-granzestyle.zsh-theme and press the down arrow until you get to where it says function custom_build_prompt { and modify it to function build_prompt {?
And if you get text that looks something like $(build_prompt)$fg_bold[green] then try running setopt PROMPT_SUBST, and if it still doesn't work, then try unsetopt PROMPT_PERCENT and if it still doesn't work, then it may be a problem with the prompt, not the settings set.

@AtomicCoding It is better to add a zmanage command that automatically does these things. I will write one.

any updates?


cross browser compatibility

Left
Middle
Right

In google chrome button have blue outline and box shadow but in Internet explorer no out line and button animate while clicking on it can we fix this issue in bootstrap we need same behavior of button in all browser visit here

Please read the contributing guidelines and provide an adequate amount of information for us to follow up, including the version of Internet Explorer and the operating system you are experiencing this on. However, note that support for v3 has mostly ceased. Please identify whether this issue effects v4.

Your version of IE likely doesn't support those styles that Chrome does. Plus, @bardiharborow's comment—v3 isn't being actively developed right now.


Ensure that dl-cdn.alpinelinux.org is replaced in Dockerfiles

🐞 Bug Report
Affected Services
Affects build
Is this a regression?
No
Description and Minimal Reproduction
The default Alpine CDN dl-cdn.alpinelinux.org is not always reachable through internet proxies that subscribe to threat intelligence feeds.  (The IPs that serve the domain can multiplex multiple domains and thus sometimes serve unwanted content, even if the domain itself is reputable.)
Suggested fix
Many existing Dockerfiles (e.g. https://github.com/edgexfoundry/edgex-go/blob/master/cmd/security-secretstore-setup/Dockerfile#L7) have a command in them:
RUN sed -e 's/dl-cdn[.]alpinelinux.org/nl.alpinelinux.org/g' -i~ /etc/apk/repositories

that replaces the default mirror location with a mirror that does not suffer the above issues.
However, this line is not universally applied to all Dockerfiles universally.
The existing Dockerfiles that run apk to fetch content should be audited for this boilerplate code and added if not found.

No longer observing the issue.  Will re-open if issue reappears.


Fix command line icons config option.

I've still got an old config on my dev VM, and realised I was getting externalised icons there, and not on my actual PC.
@Akin909, I'm assuming that we want this enabled by default? The default config option was updated at least, so I am assuming it should be!

@CrossR thanks for catching that yeah that was the plan 👍