misc: bug with APIC when booting ubutnu 24.04 using x86-linux-kernel-6.8.0-35-generic

Issue Description
Attempting to boot Ubuntu using the x86-linux-kernel-6.8.0-35-generic and x86-ubuntu-24.04-img for a full system simulation in gem5 results in the following kernel panic error:
[    0.000000] Processor #0 (Bootup-CPU)
[    0.000000] Kernel panic - not syncing: Boot CPU APIC not registered yet
[    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 6.8.0-35-generic #35-Ubuntu
[    0.000000] Hardware name:  , BIOS  06/08/2008

However, booting Ubuntu with the x86-linux-kernel-5.4.0-105-generic kernel works correctly. This suggests a potential issue in gem5 regarding the initialization of the APIC for the newer kernel.
Configuration Script for gem5 Simulation
from gem5.coherence_protocol import CoherenceProtocol
from gem5.components.boards.x86_board import X86Board
from gem5.components.memory.single_channel import SingleChannelDDR3_1600
from gem5.components.processors.cpu_types import CPUTypes
from gem5.components.processors.simple_switchable_processor import SimpleSwitchableProcessor
from gem5.isas import ISA
from gem5.resources.resource import obtain_resource
from gem5.simulate.exit_event import ExitEvent
from gem5.simulate.simulator import Simulator
from gem5.utils.requires import requires
from gem5.components.cachehierarchies.ruby.mesi_two_level_cache_hierarchy import MESITwoLevelCacheHierarchy

requires(
    isa_required=ISA.X86,
    coherence_protocol_required=CoherenceProtocol.MESI_TWO_LEVEL,
    kvm_required=True,
)

cache_hierarchy = MESITwoLevelCacheHierarchy(
    l1d_size="16kB", l1d_assoc=8,
    l1i_size="16kB", l1i_assoc=8,
    l2_size="256kB", l2_assoc=16,
    num_l2_banks=1
)

memory = SingleChannelDDR3_1600(size="3GB")

processor = SimpleSwitchableProcessor(
    starting_core_type=CPUTypes.KVM,
    switch_core_type=CPUTypes.TIMING,
    isa=ISA.X86,
    num_cores=2
)

board = X86Board(
    clk_freq="3GHz",
    processor=processor,
    memory=memory,
    cache_hierarchy=cache_hierarchy
)

board.set_kernel_disk_workload(
    kernel=obtain_resource("x86-linux-kernel-6.8.0-35-generic"),
    disk_image=obtain_resource("x86-ubuntu-24.04-img"),
    kernel_args=[
        "earlyprintk=ttyS0", "console=ttyS0", "lpj=7999923", "root=/dev/sda2"
    ]
)

def exit_event_handler():
    print("First exit: kernel booted")
    yield False
    print("Second exit: Started `after_boot.sh` script")
    processor.switch()
    yield False
    print("Third exit: Finished `after_boot.sh` script")
    yield True

simulator = Simulator(
    board=board,
    on_exit_event={ExitEvent.EXIT: exit_event_handler()}
)

simulator.run()

The PR #1574, when run with this kernel and the 24.04 image moves past this error but still fails with the panic:
src/arch/x86/interrupts.cc:530: hack: Assuming logical destinations are 1 << id.
src/dev/pci/host.cc:171: panic: panic condition !pci_dev occurred: 00:1f.1: Write to config space on non-existent PCI device
Memory Usage: 4458472 KBytes
Program aborted at tick<PHONE_NUMBER>44
--- BEGIN LIBC BACKTRACE ---
./build/ALL/gem5.opt(_ZN4gem515print_backtraceEv+0x30)[0x556d09c06c50]
./build/ALL/gem5.opt(_ZN4gem512abortHandlerEi+0x4c)[0x556d09c2c6bc]
/lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x712a25e42520]
/lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c)[0x712a25e969fc]
/lib/x86_64-linux-gnu/libc.so.6(raise+0x16)[0x712a25e42476]
/lib/x86_64-linux-gnu/libc.so.6(abort+0xd3)[0x712a25e287f3]
./build/ALL/gem5.opt(+0x1e897d5)[0x556d090d47d5]
./build/ALL/gem5.opt(_ZN4gem514GenericPciHost5writeEPNS_6PacketE+0x1c2)[0x556d09147a42]
./build/ALL/gem5.opt(_ZThn64_N4gem57PioPortINS_9PioDeviceEE10recvAtomicEPNS_6PacketE+0x76)[0x556d090d4606]
./build/ALL/gem5.opt(_ZN4gem515NoncoherentXBar18recvAtomicBackdoorEPNS_6PacketEsPPNS_11MemBackdoorE+0x39c)[0x556d09f0a2ac]
./build/ALL/gem5.opt(_ZN4gem54ruby8RubyPort15MemResponsePort10recvAtomicEPNS_6PacketE+0x26d)[0x556d0a2e402d]
./build/ALL/gem5.opt(_ZN4gem515AtomicSimpleCPU8writeMemEPhjmNS_5FlagsImEEPmRKSt6vectorIbSaIbEE+0x6c4)[0x556d09959734]
./build/ALL/gem5.opt(_ZN4gem517SimpleExecContext8writeMemEPhjmNS_5FlagsImEEPmRKSt6vectorIbSaIbEE+0x59)[0x556d09975a89]
./build/ALL/gem5.opt(+0x37f660f)[0x556d0aa4160f]
./build/ALL/gem5.opt(_ZNK4gem510X86ISAInst2St7executeEPNS_11ExecContextEPNS_5trace10InstRecordE+0x168)[0x556d0aa7ceb8]
./build/ALL/gem5.opt(_ZN4gem515AtomicSimpleCPU4tickEv+0x39d)[0x556d099573ad]
./build/ALL/gem5.opt(_ZN4gem510EventQueue10serviceOneEv+0xc2)[0x556d09c1c992]
./build/ALL/gem5.opt(_ZN4gem59doSimLoopEPNS_10EventQueueE+0x68)[0x556d09c46988]
./build/ALL/gem5.opt(_ZN4gem58simulateEm+0x283)[0x556d09c46f83]
./build/ALL/gem5.opt(+0x2b99660)[0x556d09de4660]
./build/ALL/gem5.opt(+0x1e6dd54)[0x556d090b8d54]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x128023)[0x712a26d28023]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyObject_Call+0x5c)[0x712a26ce1fec]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x4b16)[0x712a26c76776]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c23af)[0x712a26dc23af]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x9d68)[0x712a26c7b9c8]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c23af)[0x712a26dc23af]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x829e)[0x712a26c79efe]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c23af)[0x712a26dc23af]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(PyEval_EvalCode+0xbe)[0x712a26dbd3de]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1bd96d)[0x712a26dbd96d]
/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1287b3)[0x712a26d287b3]
--- END LIBC BACKTRACE ---
For more info on how to address this issue, please visit https://www.gem5.org/documentation/general_docs/common-errors/

Aborted (core dumped)

The terminal output of the boot looks like the following:
[    0.000000] Linux version 6.8.0-35-generic (buildd@lcy02-amd64-020) (x86_64-linux-gnu-gcc-13 (Ubuntu 13.2.0-23ubuntu4) 13.2.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #35-Ubuntu SMP PREEMPT_DYNAMIC Mon May 20 15:51:52 UTC 2024 (Ubuntu 6.8.0-35.35-generic 6.8.4)
[    0.000000] Command line: earlyprintk=ttyS0 console=ttyS0 lpj=7999923 root=/dev/sda2
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Hygon HygonGenuine
[    0.000000]   Centaur CentaurHauls
[    0.000000]   zhaoxin   Shanghai
[    0.000000] BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009fc00-0x00000000000fffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000bfffffff] usable
[    0.000000] BIOS-e820: [mem 0x00000000ffff0000-0x00000000ffffffff] reserved
[    0.000000] printk: legacy bootconsole [earlyser0] enabled
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] APIC: Static calls initialized
[    0.000000] SMBIOS 2.5 present.
[    0.000000] DMI:  , BIOS  06/08/2008
[    0.000000] tsc: Fast TSC calibration failed
[    0.000000] last_pfn = 0xc0000 max_arch_pfn = 0x400000000
[    0.000000] MTRRs disabled by BIOS
[    0.000000] x86/PAT: Configuration [0-7]: WB  WC  UC- UC  WB  WP  UC- WT
[    0.000000] found SMP MP-table at [mem 0x000f0050-0x000f005f]
[    0.000000] ACPI: Early table checksum verification disabled
[    0.000000] ACPI: RSDP 0x00000000000F01C0 000024 (v02 gem5  )
[    0.000000] ACPI: XSDT 0x00000000000F03C8 00002C (v01 gem5            00000000      00000000)
[    0.000000] ACPI: APIC 0x00000000000F02EA 0000DE (v04 madt            00000000      00000000)
[    0.000000] ACPI: Reserving APIC table memory at [mem 0xf02ea-0xf03c7]
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x00000000bfffffff]
[    0.000000] NODE_DATA(0) allocated [mem 0xbffd4000-0xbfffefff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x00000000bfffffff]
[    0.000000]   Normal   empty
[    0.000000]   Device   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000001000-0x000000000009efff]
[    0.000000]   node   0: [mem 0x0000000000100000-0x00000000bfffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000001000-0x00000000bfffffff]
[    0.000000] On node 0, zone DMA: 1 pages in unavailable ranges
[    0.000000] On node 0, zone DMA: 97 pages in unavailable ranges
[    0.000000] IOAPIC[0]: apic_id 2, version 20, address 0xfec00000, GSI 0-23
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 16 global_irq 16 dfl dfl)
[    0.000000] ACPI: Invalid bus_irq 16 for legacy override
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 1 global_irq 1 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 3 global_irq 3 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 4 global_irq 4 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 5 global_irq 5 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 6 global_irq 6 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 7 global_irq 7 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 8 global_irq 8 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 9 global_irq 9 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 10 global_irq 10 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 11 global_irq 11 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 12 global_irq 12 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 13 global_irq 13 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 1 bus_irq 14 global_irq 14 dfl dfl)
[    0.000000] ACPI: Using ACPI (MADT) for SMP configuration information
[    0.000000] smpboot: Allowing 2 CPUs, 0 hotplug CPUs
[    0.000000] PM: hibernation: Registered nosave memory: [mem 0x00000000-0x00000fff]
[    0.000000] PM: hibernation: Registered nosave memory: [mem 0x0009f000-0x0009ffff]
[    0.000000] PM: hibernation: Registered nosave memory: [mem 0x000a0000-0x000fffff]
[    0.000000] [mem 0xc0000000-0xfffeffff] available for PCI devices
[    0.000000] Booting paravirtualized kernel on bare hardware
[    0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns:<PHONE_NUMBER>391419 ns
[    0.000000] setup_percpu: NR_CPUS:8192 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1
[    0.000000] percpu: Embedded 86 pages/cpu s229376 r8192 d114688 u1048576
[    0.000000] Kernel command line: earlyprintk=ttyS0 console=ttyS0 lpj=7999923 root=/dev/sda2
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] Fallback order for Node 0: 0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 773888
[    0.000000] Policy zone: DMA32
[    0.000000] mem auto-init: stack:all(zero), heap alloc:on, heap free:off
[    0.000000] Memory: 3036960K/3145336K available (22528K kernel code, 4439K rwdata, 14292K rodata, 4976K init, 4736K bss, 108120K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
Poking KASLR using RDTSC...
[    0.000000] ftrace: allocating 57827 entries in 226 pages
[    0.000000] ftrace: allocated 226 pages with 4 groups
[    0.000000] Dynamic Preempt: voluntary
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=8192 to nr_cpu_ids=2.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Rude variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS: 524544, nr_irqs: 440, preallocated irqs: 16
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] Console: colour dummy device 80x25
[    0.000000] printk: legacy console [ttyS0] enabled
[    0.000000] printk: legacy console [ttyS0] enabled
[    0.000000] printk: legacy bootconsole [earlyser0] disabled
[    0.000000] printk: legacy bootconsole [earlyser0] disabled
[    0.000000] ACPI: Core revision 20230628
[    0.000000] APIC: Switch to symmetric I/O mode setup
[    0.000000] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
[    0.008000] tsc: Unable to calibrate against PIT
[    0.008000] tsc: No reference (HPET/PMTIMER) available
[    0.009000] tsc: Marking TSC unstable due to could not calculate TSC khz
[    0.010000] Calibrating delay loop (skipped) preset value.. 15999.84 BogoMIPS (lpj=7999923)
[    0.011000] process: using mwait in idle threads
[    0.012000] Last level iTLB entries: 4KB 512, 2MB 8, 4MB 4
[    0.013000] Last level dTLB entries: 4KB 512, 2MB 8, 4MB 4, 1GB 0
[    0.015000] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
[    0.016000] Spectre V2 : Mitigation: Retpolines
[    0.017000] Spectre V2 : Spectre v2 / SpectreRSB mitigation: Filling RSB on context switch
[    0.018000] Spectre V2 : Spectre v2 / SpectreRSB : Filling RSB on VMEXIT
[    0.019000] Speculative Store Bypass: Vulnerable
[    0.021000] x86/fpu: x87 FPU will use FXSAVE
[    0.048000] Freeing SMP alternatives memory: 48K
[    0.049000] pid_max: default: 32768 minimum: 301
[    0.050000] LSM: initializing lsm=lockdown,capability,landlock,yama,apparmor,integrity
[    0.051000] landlock: Up and running.
[    0.052000] Yama: becoming mindful.
[    0.054000] AppArmor: AppArmor initialized
[    0.055000] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.056000] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.059000] ACPI Warning: AcpiEnable failed (20230628/utxfinit-135)
[    0.060000] ACPI: Unable to enable ACPI
[    0.266000] smpboot: CPU0: Hygon Fake gem5 x86_64 CPU (family: 0xf, model: 0x25, stepping: 0x1)
[    0.267000] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1.
[    0.268000] RCU Tasks Rude: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1.
[    0.269000] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1.
[    0.270000] Performance Events: Broken PMU hardware detected, using software events only.
[    0.271000] Failed to access perfctr msr (MSR c0010007 is 0)
[    0.273000] signal: max sigframe size: 1440
[    0.274000] rcu: Hierarchical SRCU implementation.
[    0.275000] rcu: 	Max phase no-delay instances is 400.
[    0.277000] NMI watchdog: Perf NMI watchdog permanently disabled
[    0.278000] smp: Bringing up secondary CPUs ...
[    0.280000] smpboot: x86: Booting SMP configuration:
[    0.281000] .... node  #0, CPUs:      #1
[    0.308000] smp: Brought up 1 node, 2 CPUs
[    0.309000] smpboot: Max logical packages: 2
[    0.310000] smpboot: Total of 2 processors activated (31999.69 BogoMIPS)
[    0.313000] devtmpfs: initialized
[    0.315000] x86/mm: Memory block size: 128MB
[    0.318000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns:<PHONE_NUMBER>275000 ns
[    0.320000] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.322000] pinctrl core: initialized pinctrl subsystem
[    0.324000] PM: RTC time: 00:00:00, date: 2012-01-01
[    0.330000] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.332000] DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations
[    0.333000] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.335000] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.336000] audit: initializing netlink subsys (disabled)
[    0.337000] audit: type=2000 audit(1325376000.337:1): state=initialized audit_enabled=0 res=1
[    0.337000] thermal_sys: Registered thermal governor 'fair_share'
[    0.338000] thermal_sys: Registered thermal governor 'bang_bang'
[    0.339000] thermal_sys: Registered thermal governor 'step_wise'
[    0.340000] thermal_sys: Registered thermal governor 'user_space'
[    0.341000] thermal_sys: Registered thermal governor 'power_allocator'
[    0.342000] EISA bus registered
[    0.344000] cpuidle: using governor ladder
[    0.345000] cpuidle: using governor menu
[    0.347000] PCI: Using configuration type 1 for base access
[    0.348000] kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible.
[    0.363000] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.365000] HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page
[    0.370000] ACPI: Interpreter disabled.
[    0.372000] iommu: Default domain type: Translated
[    0.374000] iommu: DMA domain TLB invalidation policy: lazy mode
[    0.378000] SCSI subsystem initialized
[    0.380000] usbcore: registered new interface driver usbfs
[    0.383000] usbcore: registered new interface driver hub
[    0.385000] usbcore: registered new device driver usb
[    0.388000] pps_core: LinuxPPS API ver. 1 registered
[    0.390000] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti<EMAIL_ADDRESS>[    0.394000] PTP clock support registered
[    0.396000] EDAC MC: Ver: 3.0.0
[    0.400000] NetLabel: Initializing
[    0.402000] NetLabel:  domain hash size = 128
[    0.404000] NetLabel:  protocols = UNLABELED CIPSOv4 CALIPSO
[    0.407000] NetLabel:  unlabeled traffic allowed by default
[    0.410000] mctp: management component transport protocol core
[    0.413000] NET: Registered PF_MCTP protocol family
[    0.415000] PCI: Probing PCI hardware
[    0.417000] PCI host bridge to bus 0000:00
[    0.419000] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    0.422000] pci_bus 0000:00: root bus resource [mem 0x00000000-0xffffffffffff]
[    0.425000] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    0.429000] pci 0000:00:04.0: [8086:7111] type 00 class 0x010180 conventional PCI endpoint
[    0.434000] pci 0000:00:04.0: BAR 4 [io  0x0000-0x000f]
[    0.437000] pci 0000:00:04.0: ROM [mem 0x00000000-0x000007ff pref]
[    0.439000] pci 0000:00:04.0: BAR 0 [io  0x01f0-0x01f7]: legacy IDE quirk
[    0.442000] pci 0000:00:04.0: BAR 1 [io  0x03f6]: legacy IDE quirk
[    0.445000] pci 0000:00:04.0: BAR 2 [io  0x0170-0x0177]: legacy IDE quirk
[    0.448000] pci 0000:00:04.0: BAR 3 [io  0x0376]: legacy IDE quirk
[    0.452000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
[    0.455000] vgaarb: loaded
[    0.457000] clocksource: Switched to clocksource refined-jiffies
[    0.461999] VFS: Disk quotas dquot_6.6.0
[    0.463998] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.467998] AppArmor: AppArmor Filesystem Enabled
[    0.469998] pnp: PnP ACPI: disabled

Glad I am not the only one seeing this, I was starting to suspect it was GPU related.  I haven't figured out what this unknown PCI device is.
I have been using a workaround: https://github.com/abmerop/gem5/commit/eb1235f6ee41c2e70d62a16dd61f06834253b409

Using the change that you mentioned I was able to boot ubuntu with the new kernel. It seems like there is only one pci that is connected, when I run lspci on the guest after booting.
gem5@gem5:~$ lspci
00:04.0 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE


Bump npm version to v0.4.0

Description

Published version 0.4.0
Updated js/README.md

@BSathvik Can you fix these codcov things before merging:
https://app.codacy.com/app/TrustWallet/wallet-core/pullRequest?prid=3921190


Ensure Greek characters are transliterated

At the moment there's an issue where Greek characters aren't been transliterated by ActiveSupport, and instead we end up with an empty string:
> "Στερεά Ελλάδα".parameterize
=> ""

This is an issue because this output is used the generate the slug of documents. After this change we get a more usable output:
> "Στερεά Ελλάδα".parameterize
=> "sterea-ellada"

I got the letters from https://gist.github.com/Achillefs/925267 and I'm not sure about the validity of them.
This has come up as part of the "Protected Food & Drink Names" finder where some titles are composed entirely of Greek letters and aren't able to be saved correctly because the slug ends up being an empty string.

LGTM. Is it worth writing a test that .parameterize now does what you want it to? (You've already done it in the commit message, may as well put it in a unit test if possible, for extra confidence).

Yep, good point, I've pushed up a commit with a test.


I have also updated some of the functions where there was a lot of unnecessary wrapping with new Promise, but not all of the places. I wanted this pull request to focus on only self and bind.
I have also marked three FIXMEs in the code, again it didn't seem right to fix it in this pull request; and in some cases I wanted the original author to maybe clarify the intent. I think we should merge with them in, and then fix them later.
I would appreciate a fast pull here since this will probably need manual rebasing as soon as anything else lands :)
ping @johnnyman727, I saw that you where online, would you like to review? Thanks :+1:
edit: also, I need to go to bed right away, sorry about that, I'll check this first thing in the morning!
edit2: note to self to update this comment when landing, https://github.com/tessel/t2-cli/issues/470#issuecomment-160171309

Argh, one of the test depended on Zalgo :laughing:
Looking into it now...

Should work now :+1:

@LinusU will check out today!

I'm a little torn on this one. It's really too broad of a change set for one PR. It will also cause existing PRs that are more focused to produce merge conflicts, but those will and first and so this will require merge conflict resolution. I'd much prefer, for everyone's sanity sake, that these changes be broken out into different changesets, with different PRs.

@rwaldron which PRs do you want to get merged before this one?

@rwaldron When thinking of it, I agree with you, it should probably have been multiple PRs. I'll be sure to rebase as soon as other patches land though, and then we'll get away with it :)

I just rebased on the latest master.
@rwaldron where there any more pull requests you wanted merged before this one?

Rebased on master again
nudge nudge @rwaldron ;)

@LinusU the branch I want in hasn't landed.

To be as honest as possible: I'm being selfish because I don't want to resolve conflicts in deploy.js for the sake of a non-essential patch :P

Looks like there was no conflict—sorry for being annoying about that :|

By the way, @LinusU this PR is super impressive. :+1:

No problem, thanks for the merge!
Thank you :)


How to close connection?

How to close connection?
Java driver and others have a close method (client.close()).
I know that I can use pools, but after restarting the application, a new pool is created with new connections, and old connections are not closed.
Will Mongodb close connections automatically?
I waited 4 hours and mongodb did not close old connections
My solution is to set the maxIncomingConnections parameter to the size of the connection pool.

Not. I was wrong. Connections are closed after closing the program.


Need an updated popcorn-complete.js

The latest version on the website is 1.5.6 but I think the youtube api fixes were put in after that. Is it possible to get version 1.5.11 somewhere? Or how can I go about building my own? Simply including the relevant plugin files and wrappers in my site is not working.

There is Makefile in this repo, so you can make it and build you own.

I agree with @jyxia - this should be made as needed to make sure it's not out of sync with the main codebase, not added to the repository.

Why? The project is dead - there should at least be a popcorn-complete.js and popcorn-complete.min.js for all those people who were linking to the now deprecated online versions.


Source WSOnline has changed addresses

Hi Mr Know,
You might want to check this out, but I think source wsonline.py has changed its internet address from http://watchseries-online.il to http://watchseries-online.li. I noticed last night that I wasn't receiving any links for a tv series we normally watch from WSOnline where previously we had. After checking and changing http://watchseries-online.il to http://watchseries-online.li I now am receiving working links for our tv series. As a matter of interest, http://watchseries-online.il is not showing as a valid internet address (at least not here in the US).
Hope this helps.
Bob

this issue is fixed in the new version


Bug should connect to Google Analytics

From @louh on April 30, 2015 21:11
Copied from original issue: mapzen/ui#2

Superceded, see #4

This was a test of https://github-issue-mover.appspot.com/


NA OFI: HG_Init() fails on OFI/Verbs when using MVAPICH 2.1

This probably isn't really a Mercury problem, but documenting here for the time being.
Mercury with OFI/Verbs initializes cleanly on the ALCF Cooley machine when using standalone Mercury programs.  When I try to initialize it within an MPI program compiled with gcc and MVAPICH 2.1, it fails with this message:
[0] # NA -- Error -- /tmp/mochi-regression-4000072/mercury/src/na/na_ofi.c:889
[0]  # na_ofi_getinfo(): fi_getinfo failed, rc: -61(No data available).
[0] # NA -- Error -- /tmp/mochi-regression-4000072/mercury/src/na/na_ofi.c:1702
[0]  # na_ofi_check_protocol(): na_ofi_getinfo failed, ret: 7.
[0] # NA -- Error -- /tmp/mochi-regression-4000072/mercury/src/na/na.c:339
[0]  # NA_Initialize_opt(): Specified class name does not support request protocol
[0] # HG -- Error -- /tmp/mochi-regression-4000072/mercury/src/mercury_core.c:1128
[0]  # hg_core_init(): Could not initialize NA class
[0] # HG -- Error -- /tmp/mochi-regression-4000072/mercury/src/mercury_core.c:3326
[0]  # HG_Core_init_opt(): Cannot initialize HG core layer
[0] # HG -- Error -- /tmp/mochi-regression-4000072/mercury/src/mercury.c:905
[0]  # HG_Init_opt(): Could not create HG class
[0] Error: HG_Init()

If I turn on FI_LOG_LEVEL=debug, then I can see this specific failure path in libfabric:
[0] libfabric:verbs:core:fi_ibv_init_info():1052<info> Enabling IB fork support
[0] libfabric:verbs:core:fi_ibv_init_info():1057<warn> Enabling IB fork support failed: Invalid argument (22)

... which corresponds to this path in the libfabric source: https://github.com/ofiwg/libfabric/blob/master/prov/verbs/src/verbs_info.c#L1051
I don't know any more than this yet.  This will possibly work with a newer MVAPICH build or using a different MPI implementation entirely that doesn't use verbs.  It's also possibly something that can be resolved with a runtime option.

@carns I believe this was fixed right?

Yep!  Stale issue :)

great thanks!


Install Error MacOS 12.4

installer.log

Having the same problem, just opened an issue as well

I make the script that can fix the error.
https://github.com/op06072/asahi-linux-ssl-fix/blob/master/asahi-fix.sh
You can run with command
curl -L https://vo.la/vVrDXw | sh
this.

Please do not direct people to use scripts which disable security. SSL validation fails for a reason.

Duplicate of #102


Integrate Touchstone login

Pre-Flight checklist

[x] Testing

[x] Code is tested
[x] Changes have been manually tested

[x] Settings

[x] New settings are documented and present in app.json
[x] New settings have reasonable development defaults, if applicable
[x] Opened issue for DevOps regarding necessary configuration changes to deployed environments

What are the relevant tickets?
Closes #62
What's this PR do?
This adds integration with Touchstone to enable user account creation/login.
How should this be manually tested?
Follow the instructions in the README for setting up your local environment w/ SSOCircle and verify you can login w/ it.

@mbertrand addressed your feedback, you shouldn't encounter that NoReverseMatch error now, but i think you were hitting that because social auth was trying to display another error so we'll need to look into that tomorrow.

Codecov Report

Merging #165 (5e2c21a) into master (73477bc) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #165      +/-   ##
==========================================
- Coverage   81.95%   81.94%   -0.02%
==========================================
  Files          44       44
  Lines        1308     1307       -1
  Branches      148      148
==========================================
- Hits         1072     1071       -1
  Misses        219      219
  Partials       17       17

Impacted Files
Coverage Δ

users/models.py
52.50% <ø> (ø)

main/settings.py
90.24% <100.00%> (-0.31%)
:arrow_down:

main/urls.py
75.00% <100.00%> (+2.27%)
:arrow_up:

main/views.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

@mbertrand I've updated the collaborator API and UI to use User.id instead of User.username


Add some soft of source-code-level documentation

It would be great to have some nice documentation about all classes and methods there are in the source code. I'm thinking of doxygen and the like but I'm open to other proposals as well.

Doxygen would certainly match up with the main OLA codebase, which is probably easier for people working between the two (e.g. when writing plugins). We could also use all our existing workflows for both publishing on the website and validation etc, rather than having to use other toolsets.
Unless there's a strong argument for something else I'd be inclined to go with it and could bolt most of that together, or are you expecting someone else to write the documentation too? :laughing:

Sure, if there's already a working toolset, I agree that should be re-used and would be happy if would volunteer to set it up.
No, I'm not expecting that someone else writes the actual documentation, I can well do that. I'm not sure which level/amount would be good but I'll start and see when it's sufficient.

Well if you want to put a bit of Doxygen style comments in, that should be enough for me to get going on it.

Haven't used doxygen much yet but I'll start adding some doxygen-style comments the following days

First steps done, still a lot to document ;)
https://github.com/OpenLightingProject/rp2040-dongle/compare/main...kripton:sourceCodeDocumentation


Uploading package fails due to Invalid or non-existent authentication information, even though it exists

Hi there,
I tried uploading a new version of a package to PyPi.
I did the same steps as always, but I keep encountering an error with my authentication information.
I now also added an API token to my account, and changed the .pypirc file accordingly.
But I keep getting the same error.
Is this a known issue?
Best

Hi @kaitrepte, sorry you're having trouble. Can you confirm that you're using the __token__ username instead of your PyPI username in your .pypirc file? Also, can you confirm that you're not using a token from TestPyPI for PyPI, or vice versa?

Hi there,
I guess I missunderstood the logic here. I now changed the token explicitely to token .
Sorry about that. Now the upload worked,
Thanks.


Improvements to the help system

This PR implements some improvements to the help system, suggested in #331.
Supports filtering of parameters using regular expressions as well as highlight. For instance:
hv.help(hv.Image, pattern='bounds')

hv.help(hv.Image, visualization=False, pattern='bounds')

It seems to work well even though I needed to employ some clever tricks to filter parameters. Now I'll look into addressing issue #330 in this PR as well..

I've now added a recursive option to address #330. This option will only work when given a nested object and will not do anything is a class is specified instead.
Once the tests pass, I think this is ready to merge.

Looks good. Great to have a better help system. Merging.

Great, this seems to work well. Many thanks!
I wonder whether it would be worth setting recursive=True by default to increase discoverability of options for composite objects (but I don't have a strong opinion on it).
It would also be good to document this new functionality in one of the tutorials (maybe the "Options" tutorial, since it already illustrates the help command?).

I wonder whether it would be worth setting recursive=True by default to increase discoverability of options for composite objects

Not a bad suggestion! I might do that after the website has been updated as changing it immediately will probably break notebook tests.

It would also be good to document this new functionality in one of the tutorials (maybe the "Options" tutorial, since it already illustrates the help command?).

Yes, that is definitely something I will do now. I can change Markdown text much more easily than output generated by code. Thank you for reminding me to do this!

I've added a brief description of these parameters in commit 04f77e4 to the Options tutorial.
@philippjfr Maybe we should use the pattern argument in the actual example? This would mean updating the test data but I see three advantages:

Even hv.help(image) is generating too much output in the tutorial, making it hard to follow.
It would mean we are less likely to have to update the test data when parameter documentation is updated.
It would give a concrete example of pattern in use and why it is helpful.

What do you think? To be concrete, I'm considering showing the output of hv.help(image, pattern='bounds')...

Sounds good to me.

+1

I've gone and implemented this suggestion in 5ed9eda.


Bootstrap 4  form-check alignment with horizontal label

Vertical alignment between a main horizontal label and checkboxes or radio is wrong.
The main label has the .col-form-label class, which adds a padding-top: padding-top: calc(.375rem + 1px)
The radio buttons have no padding top, so they're too high.
I made this pen to show the issue: https://codepen.io/migli/pen/yPKbwL
The pen also includes a simple css proposal to resolve it.

A horizontal label and control vertical alighment issue can be confirmed here as well. (The "Radios" row)
I think we should not solve this by CSS because CSS will be more complex and more difficult to understand the responsive behaveor. When resize a window to mobile size on your codepen, you can see a slightly larger spacing between the label and first checkbox.
To resolve this issue, just add pt-{breakpoint}-0 to .col-form-label (or .col-form-legend).
<form>
  <fieldset class="form-group">

      <legend class="col-form-legend col-sm-2 pt-sm-0">Radios</legend>

                 ^^^^^^^

...

The mobile size spacing can be easily solved with a media query (I edited my pen)
My first idea was yours, but If you remove the label's top padding the label is too close from the previous element, it breaks the vertical alignment: https://codepen.io/migli/pen/mqxQjo
I also noticed that the example code was a bit inconsistent.
The main label for radio is <legend class="col-form-legend col-sm-2">Radios</legend> while the checkbox's main label is
Checkbox

Perhaps we instead advise folks to simply not use that class? https://codepen.io/anon/pen/BmORRj

it's a possibility, but it breaks the regularity of the vertical alignment of labels.

The regularity of the alignment isn't my concern I think, and I don't imagine it's the concern of anyone else reporting this issue. The more important part is that this one label matches it's inputs.

it's up to you


fix: missing required libraries and make webpack work with xdl

Linked issue
With Webpack external, some fundamental libraries are excluded. Let's fix them by using the list of breaking and not-required dependencies.
Additional context
Also fixed the release tokens.

:tada: This PR is included in version 0.7.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Update translations for 4.1

Hello translators! Spyder version 4.1 is soon to be released and we would like to ask for your help in updating the translated string.
We plan to release next week so if you could help us with this by Monday March 9th  12:00 am UTC it would be great. If you cannot make it on time it is ok and we can release the updates on subsequent version.
We now use Crowdin https://crowdin.com/project/spyder which should make this process much much easier for everyone! (if you prefer to make a PR that is also fine)
This list might be outdated so feel free to ping if you can't help any longer with this.
French
@afvincent
@Nodd
@SylvainCorlay
@jnsebgosselin
Hungarian
@blackPantherOS
@martindurant
Japanese
@sohnishi
Portuguese (Brazilian)
@sehnem
@manipuladordedados
Russian
@burrbull
@Qlogin
Spanish
@ccordoba12
@goanpeca
@juanis2112
Simplified Chinese
@suokunlong
@kingmo888
@nnnewb
@gepcel
German
@alexschw
@be-we
Polish
@wojnilowicz
Cheers and thanks again!

Hey everyone, we added a couple of new strings for translation in PR #11715 and we updated our po files accordingly a couple of hours ago. So we'd appreciate your help to add translations for those strings.
We hope to finally do this release on Friday March 13, so you have time until 12:00 am UTC of that day to give us a hand with this.
Thanks!

@ccordoba12 really looking forward to seeing v4.1.0 landing, this laggy editor (#11412) is starting to make me think about other editors

Almost there! I've been all day fighting to finish #11755, which is also very important to have (at least from my point of view).

@jnsebgosselin @impact27 if you could take a quick look at the french translations over at https://crowdin.com/translate/spyder/33/en-fr it would be awesome. Thanks!

@jnsebgosselin @impact27 if you could take a quick look at the french translations over at https://crowdin.com/translate/spyder/33/en-fr it would be awesome. Thanks!

Sure, I'll start working on this tomorrow.

https://groups.google.com/forum/#!msg/spyderlib/SauR-AiAeLg/tPdi6kDXAgAJ

https://groups.google.com/forum/#!msg/spyderlib/SauR-AiAeLg/tPdi6kDXAgAJ

https://groups.google.com/forum/#!msg/spyderlib/SauR-AiAeLg/tPdi6kDXAgAJ    This problem has puzzled me a lot

https://groups.google.com/forum/#!msg/spyderlib/SauR-AiAeLg/tPdi6kDXAgAJ This problem has puzzled me a lot @ccordoba12

@Prayforhanluo, it's a duplicate of #11222. It'll be fixed in our 4.1.0 version. Please wait until new conda packages are available for it, which should be done shortly.

Greetings!
I find some issue here:
%HOME%\Anaconda3\Lib\site-packages\spyder\locale\pt_BR\LC_MESSAGES file spyder.mo won't let spyder start in Brazilian Portuguese! At least in Windows 10 64.

This should be fixed in our 4.1.2 version, to be released in a couple of days.


vagrant up failed

@paskino Tried to follow the instructions at https://github.com/SyneRBI/SIRF-SuperBuild/tree/master/VirtualBox/vagrant.
After a long while vagrant up failed with this error:
    default:   Attempting uninstall: pexpect
    default:     Found existing installation: pexpect 4.2.1
    default: ERROR: Cannot uninstall 'pexpect'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
    default: An error occurred in /home/sirfuser/devel/SyneRBI_VM/scripts/INSTALL_python_packages.sh at line 70. Current working-dir: /home/sirfuser/devel/SyneRBI_VM
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what went wrong.

thanks for checking. Please recreate this issue on the SB repo and assign to 3.2.
By the way, might be worth checking if there are any issue in this repo that need to be addressed.


Updated calculation of compound values

This update of the calculation for the compound values takes into account Volume Scales other than 1.
Tested by myself and toonvd on Discord

Thanks @brhahlen and @toonvdijck so the ratiofunds calculation can be removed too!


Markers in multiple sub groups

Hello,
I have a problem with markers that are present in more than one sub group.
If I uncheck one sub group, all items of that group are removed, even though that the other group that is still checked, also contains some of them.
Is this the intended behaviour?
Greetings
Marcel

Hi,
Indeed unfortunately the behaviour when Markers are children of several parent Layer Groups is not totally specified:

if done programmatically, the last modification wins (add to or remove from map).
if done through Layers Control, I think the latter re-adds and re-removes overlays as they appear in order, so the bottom-most status wins.

Since we do not track in child layers their containing parent Layer Group(s), it is difficult to determine whether they should still remain on map or be removed.
And to begin with, what should be the default behaviour: remain on map as long as at least one parent Layer Group is? or on the contrary disappear as soon as one of the parent Layer Groups is removed?
All this is also true with stock Leaflet BTW.
I am not sure what general behaviour we could design here.
But in your specific situation, you may very well be able to implement what you need.

I'm actually using the same parent layer.
One small example.
Think of a bucket as a parent group that contains balls in different colors (the subgroups).
You have now something like this:

Bucket (P)

Red (SG)
Blue (SG)
Green (SG)

P .... Parent group
SG ..  If select green I'm able to see also those special balls.The same happens if i start over and select blue right away.
But if I check blue and green and then remove one of those ticks, the balls that have two colors are gone.

I see. Well, in this case I'm going to figure something out that works for me.
Thanks a lot for your time!

@mjuen : I have the exact same use case that you have mentioned here. Have you found a solution for the same ?


perf: Repeat with line 71, read data stream repeatedly

Repeat with line 71, read data stream repeatedly

This change is incorrect. I expect the test suite to fail and tell you why it's incorrect.

This change is incorrect. I expect the test suite to fail and tell you why it's incorrect.

sorry，my fault，read(2) and next read(2) is diffrent position data, i'd like to know how tu run test suit,

github Checks,  it'll running all time ？now it running 3h+

i run tox on my mac， it‘ll stuck

(.venv) ➜  my-websockets git:(main) ✗ tox -v
py39: find interpreter for spec PythonSpec(major=3, minor=9)
py39: proposed PythonInfo(spec=CPython3.9.6.final.0-64, system=/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9, exe=/Users/hanzhiqiang/Documents/my-websockets/.venv/bin/python, platform=darwin, version='3.9.6 (default, Oct  4 2024, 08:01:32) \n[Clang 16.0.0 (clang-16<IP_ADDRESS>)]', encoding_fs_io=utf-8-utf-8)
.pkg: find interpreter for spec PythonSpec(path=/Users/hanzhiqiang/Documents/my-websockets/.venv/bin/python)
.pkg: proposed PythonInfo(spec=CPython3.9.6.final.0-64, system=/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9, exe=/Users/hanzhiqiang/Documents/my-websockets/.venv/bin/python, platform=darwin, version='3.9.6 (default, Oct  4 2024, 08:01:32) \n[Clang 16.0.0 (clang-16<IP_ADDRESS>)]', encoding_fs_io=utf-8-utf-8)
.pkg: _optional_hooks> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta
.pkg: exit None (0.17 seconds) /Users/hanzhiqiang/Documents/my-websockets> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta pid=21606
.pkg: get_requires_for_build_sdist> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta
.pkg: exit None (0.30 seconds) /Users/hanzhiqiang/Documents/my-websockets> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta pid=21607
.pkg: build_sdist> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta
.pkg: exit None (0.53 seconds) /Users/hanzhiqiang/Documents/my-websockets> python /Users/hanzhiqiang/Documents/my-websockets/.venv/lib/python3.9/site-packages/pyproject_api/_backend.py True setuptools.build_meta pid=21612
py39: install_package> python -I -m pip install --force-reinstall --no-deps /Users/hanzhiqiang/Documents/my-websockets/.tox/.tmp/package/2/websockets-14.2.dev0+gunknown.tar.gz
py39: exit 0 (4.86 seconds) /Users/hanzhiqiang/Documents/my-websockets> python -I -m pip install --force-reinstall --no-deps /Users/hanzhiqiang/Documents/my-websockets/.tox/.tmp/package/2/websockets-14.2.dev0+gunknown.tar.gz pid=21627
py39: commands[0]> python -W error::DeprecationWarning -W error::PendingDeprecationWarning -m unittest
................F..

Looks like this error causes the test suite to hang rather than fail 🤷


New feature with support YMAL Language

I am wondering whether any Blade 's user wants Blade to support YAML Language write configuration files.
Why use YMAL?
As we all know,YAML Language is more simplify than Properties and better than that, if use YAML to write configuration files, we can more intuitive to modify the configuration files, and the YMAL is more elegant than Properties.
How to achieve?
Extensions, will not affect the framework size.If needed, add declaration to 'pom.xml' or 'gradle.build'.

Thanks for your advice. I'll look it later.


Merge publish into main

There are still some errors on merging, main and publish should be at the same commit level.

The tests did passed but then it failed after merging @FauconSpartiate. Any idea buddy?

Very weird, did I mess up the merge conflicts?
I'll look into it

Looking at the logs, sometimes it doesn't find a file inside a temp folder? Rerunning it again worked...
Any issue with the test cases or the runner?


ARTEMIS-1904 Jmx Management Security Tests

Added tests for jmx security
Removed ArtemisRMIServerSocketFactory as it does nothing special
(instead use default factory from jdk)

@mtaylor ok, will do another jira. The code change is to remove the RMIServerSocketFactory because it does nothing special and it causes jmx client fail to connect (don't know why, perhaps we didn't implement it right).

@mtaylor I've created another jira (ARTEMIS-1916) and the PR
https://github.com/apache/activemq-artemis/pull/2128
I also updated this PR. This PR should be merged after ARTEMIS-1916 (otherwise the test
is failing).

@mtaylor worked with Andy and figured out ARTEMIS-1916 is not valid (PR will be discarded). I've fixed the test and it should be ready for review now.

@mtaylor I've added some ssl test.

@gaohoward I'm going to close this as its over a year old with no activity, and has merge conflicts. please feel free to reopen if you still need this and merge conflicts are resolved.


Make CIJoe compatible with Sinatra 1.3.2

+1 please merge this

@defunkt  - Has CIJoe been forgotten on the battlefield? Surely you don't want the forces of Python Command to take the day...

Unfortunately yes, CI Joe had a long and prosperous career but has now retired.


Proposal: Conditional lint configuration

There are some situations where we'd like to conditionally enforce a lint check based on whether the code being linted is test code or not. For instance, we'd like to ban 'any' from production code, since it's unsafe. But in tests, 'any' can be useful to supply fake or mock implementations of services, or to cast through it so you can call private methods. Or we might want to ban a different set of methods in tests vs in production code, for example.
What I propose is a way to conditionally enable lint checks based on a regex match on the filename. This could also be useful for turning off lint checks for certain directories (containing "legacy" code, for instance), or for .tsx or .d.ts files, etc.
Here are some syntax strawman ideas; I'm open to suggestions too.
Sections object
{
  "rules": {
    "no-any": {"other": true},
    "no-console":
        {
          "test": [true, "warn", "error"],
          "other": [true, "log", "warn", "error"]
        }
  },
  "sections": {
    "test": ".*\\.spec\\.ts$"
  }
}

"Other" would be things that don't match any of the regexes. This is pretty concise, but I think the readability of the rules section suffers a bit.
"Override" rules
{
  "rules": {
    "no-any": true,
    "no-console": [true, "log", "warn", "error"]
  },
  "override": {
    "match": ".*\\.spec\\.ts$",
    "rules": {
      "no-any": false,
      "no-console": [true, "warn", "error"]
    }
  }
}

(this should perhaps be an array, to allow for multiple overrides too).

If you put your tests and production code in separate directories, you wouldn't need such a feature. If you do not provide a config file as CLI argument, TSLint uses the nearest tslint.json. Therefore you can have different settings for different folders. By using "extends" you can use the same base config and override only specific rules.
I get that many Angular and React projects put tests in the same directory as the corresponding production code. Personally I think this is a bad practice. I've seen enough people (accidentally) importing symbols from tests in production code.
IMO the proposed feature adds a lot of complexity. The implementation may not be that hard, but it makes the config file difficult to read and understand.
If we are going to implement this, I'd prefer the second suggestion.
We'd also need to discuss how it works when extending configurations. In which order are the overrides applied?

True, you could just separate the code, but it hurts ergonomics. Either you have
src/
  tslint.json
  a/
    b/
      c/
test/
  tslint.json (extends ../src)
  a/
    b/
      c/

and c/foo.spec.ts has to import {symbol} from '../../../a/b/c/foo';
That path gets ugly in our monorepo where files are often very deep in the tree.
or you have
  a/
    src/
      tslint.json
    test/
      tslint.json (extends ../src)
    b/
      src/
        tslint.json
      test/
        tslint.json (extends ../src)
      c/
        src/
           tslint.json
        test/
          tslint.json (extends ../src)

which is too many tslint.json files

On the topic of overrides: I'd say the overrides apply in the same order rules are applied. I don't know what that is, and I couldn't find documentation, but intuitively I'd think it'd be like this:
// a.json
{"rules": {"foo": [true, 1]}}

// b.json
{"rules": {"foo": [true, 2]}}

// c.json
{
  "extends": ["a.json", "b.json"],
  "rules": {"foo": [true, 3]}
}

would result in rule "foo" having the argument 3. If that rule wasn't in c.json, then "foo" should have value 2, because of the order of the "extends" array.
For overrides, I'd expect the same order to be applied. It makes sense to me to use the last override that matches the supplied regex, taking into account the order in which 'extends' rules are considered. A single file example:
{
  "rules": {"a": [true, 1]},
  "override": [
    {"match": "test|spec", "rules": {"a": [true, 2]}},
    {"match": "test", "rules": {"a": [true, 3]}}
  ]
}

would have value 2 for rule "foo" when the file path contains "spec", 3 if it contains "test", and 1 otherwise. (obviously, not a very useful set of overrides, since "test" might as well be omitted from the first, but you get the idea)
Does that make sense and answer your question?

@calebegg There are some other edge cases to consider:
// a.json
{
  "rules": {"foo": [true, 1]},
  "override": {"match": "test|spec", "rules": {"foo": [true, 2]}}
}

// b.json
{
  "extends": "./a.json"
  "rules": {"foo": false}
}

What's the expected result?

2 because the order is a.json/rules -> b.json/rules -> a.json/override
false because the order is a.json/rules -> a.json/override -> b.json/rules

Same here, what is the expected result:
// c.json
{
  "rules": {"foo": [true, 1]},
  "override": {"match": "test|spec", "rules": {"foo": false}}
}

// d.json
{
  "extends": "./a.json"
  "rules": {"foo": {"options": 2}},
  "override": {"match": "test|spec", "rules": {"foo": {"options": 3}}}
}

Just a random thought: Why not just match the patterns in order and (partially) override the previous match:
{
  "rules": { // same as "*"
    "rule-one": true,
    "rule-two": true
  },
  "*.js?(x)": { // we could get rid of "jsRules" with this
    "rule-two": false
  },
  "*.{t,j}sx": {
    "jsx-rule": true
  },
  "*.spec.*" {
    "rule-one": false
  }
}

Some examples:

foo.ts: rule-one, rule-two
foo.tsx: rule-one, rule-two, jsx-rule
foo.js: rule-one
foo.jsx: rule-one, jsx-rule
foo.spec.tsx: rule-two, jsx-rule
foo.spec.js: none

I just don't know where to put this inside the config. The same level as "rules" makes it easier to write, but may confuse users, because it's on the same level as "extends", "rulesDirectory", ...
Another problem is extending configs. If we apply all overrides from the base config and then the overrides from the current config, it's rather difficult to understand.
It also makes the code more complex. Currently the configs are merged during parsing. With this proposal the final config is only known when we have a file name.

Hello,
This feature will be great. I think Eslint is supporting this feature: https://eslint.org/docs/user-guide/configuring#configuration-based-on-glob-patterns. So, syntax and semantic could be the same, to avoid confusion.

@minomikula Thanks a lot. I searched the ESLint docs before but didn't find this section.
Their approach makes sense. To summarize:

"overrides" section in the config contains an array of overrides
an override can specify multiple glob patterns ("files"). if one of them matches, the config applies
you can exclude files by glob pattern: "excludedFiles"
glob patterns are relative to the config file they are specified in
glob patterns always need to match the whole path, not just the basename
overrides are processed in order, overriding the previous one
when extending a config file, the base config is completely evaluated before continuing to the extending config

base.json/rules
base.json/overrides
extending.json/rules
extending.json/overrides

There are some things to consider when porting this behavior to TSLint:

we should definitely disable extends and linterOptions in overrides
we probably also want to disallow rulesDirectory
do we want to allow rules and jsRules in overrides or do we deprecate jsRules in favor of an **/*.js?(x) override?

Thoughts or comments @adidahiya @calebegg @alexeagle @minomikula?

Oh, wow, yeah, that approach seems reasonable to me. I should have also looked for prior art.

@calebegg I'm fine with the ESLint approach. I implemented a very similar concept in my POC linter runtime https://github.com/fimbullinter/wotan/tree/master/packages/wotan#overrides
Integration in the current TSLint API could be tough, because currently it merges all configurations while parsing. This needs to be deferred until the file's name is known and needs to be done for every file.
This is certainly a breaking API change.

@calebegg @mitchlloyd @ajafff @alexeagle i see little benefit in this feature over simply nesting tslint.json files to override outer configs. that feature already works today and doesn't require any complex API breaks. would you be offended if we rejected this request?

Nesting does not solve the issues discussed here. Many people do want their tests in the same directory structure as the code it tests, and there is simply no good way to do that with tslint right now.

There are loads of projects putting spec files in the same directory as sources. This has become a best practice in many environments, Angular CLI generates a project structure like that etc. I don’t think it’s realistic nesting tslint config files is going to work for all these people.

I agree that my project structure should not be dictated by a linting tool. Instead the linting tool should support common existing patterns. Colocating tests and side files is a common pattern.

@giladgray angular guidelines recommend you put your tests alongside your files. So 99% of angular projects do this. Due to tslint being backwards every angular project I worked on had issues. Your last comment is confounding and myopic. If you can't/don't want to accept this incredibly useful suggestion then I think you are far too conservatove to be the one making decisions for us on such an important project. This issues has been making our angular project work difficult for years.

Let’s stay on topic and avoid veering toward personal attacks, okay? Suggesting that someone isn’t fit to maintain their own project is not the way to influence an OSS project.

It makes sense to want overrides for files that don't fit into a nested structure as mentioned above.  It seems to me like @giladgray's comment was intended to determine if there was still significant community interest in this change, given that there had been no activity on this issue for more than 6 months. This is specifically evidenced by his comment on the open PR (#3708):

if you do want to pursue this, please update this branch so we can review it, or close it if no longer relevant. we will close this if we do not hear from you in two weeks.

@ohjames I'd suggest you reconsider your comment - as @DanielSchaffer mentioned, personal attacks are not going to help you here, or anywhere in open source software. Everyone is trying their best to create good, reliable and feature-rich software, and attacking people in no way contributes to that.

As I've commented on the related #1063, my use case would be that using tslint-microsoft-contrib currently bombs on Vue single-file components for some rules. This might either be a Vue issue, or a TSLint issue, and those teams might or might not get around to fixing the specific problem - disabling the offending rules until that happens seems like a simple workaround that's not too cumbersome. Compared to either having to add the same disable directive to every single .vue file, and update it in all those places as the rule support changes. It's also not doesn't make sense to split up a project into .vue and .ts files, it would be a very awkward structure.

I'm in favor of this feature coming in. Maybe we can also cleanly solve the tslintignore request in #73 with it by allowing some overrides to completely disable all rules?
{
    "files": "./src/test-data/*.ts",
    "reset": true // Resets tslint.json to {}
}

tslint-microsoft-contrib currently bombs on Vue single-file components for some rules

Oh 😕 could you please file an issue on tslint-microsoft-contrib?

@JoshuaKGoldberg - I'd already done a detailed report of that bug in @vuejs/vue-cli which seemed the most appropriate. (It's marked as "awaiting reproduction" so I'm guessing it's not wildly out of place.) I just mentioned it as a motivator for chiming in here. It's the sort of thing that can and will crop in an evolving ecosystem, which should be an argument for tools being flexible enough to work around obstacles without actually writing hacks around others' bugs.

Any update on this issue?

This issue is currently flagged as 'Needs proposal', but I think we already a proposal in https://github.com/palantir/tslint/issues/3447#issuecomment-344020834?

@RoystonS @ajafff's proposal mentioned a few loose ends that should be addressed:

There are some things to consider when porting this behavior to TSLint:

we should definitely disable extends and linterOptions in overrides
we probably also want to disallow rulesDirectory
do we want to allow rules and jsRules in overrides or do we deprecate jsRules in favor of an **/*.js?(x) override?

There should also be consensus from the folks in the palantirtech org on this before moving forward, since it's a pretty substantial feature.

I Propose to apply the concept git repository uses for files in the .gitIgnore... to the tsLint rules. Usage of your current hierarchal position as context to the linter, along with an override file, when linting a particular subdirectory. Then you can include or exclude, setup any config at any directory level you want.
e.g.
A tslint config is placed in the root, and at any particular level in your source code structure, you would like a different behavior, simply override it with an extension tslint file in the root of that subdirectory.

@redevill It does help people writing test in a test folder. But not one writing test as something.test.ts in the same folder of the component/service.

Agreed - but with minor change: (Which could be automated with template generator (CLI Style)
MyComponentDir
MyComponentTestsDir
tslint.test.json
something.test.ts
mycomponent.component.css
mycomponent.component.html
mycomponent.component.ts
The idea could still work.

Huge fan of this proposal.  YES PLEASE!  My preferences would be the Overrides concept.

Btw, given the deprecation announcement of tslint, I can't really imagine that such a large change will be made at this stage, and my team's moving over to eslint, which already has per-rule + per-file override facilities.

The aforementioned announcement: https://medium.com/palantir/tslint-in-2019-1a144c2317a9

@RoystonS is basically right, such a large feature will not be added to tslint at this point. see #4534

We use an Angular project. We need the overrides concept. Otherwise, it is pain to manage


Add debug information for credentials instantiation

Summary
Just adds some debug information for the credentials instatiation
Pair-Programmed-With: Juan Antonio Osorio<EMAIL_ADDRESS>Change Type
Mark the type of change your PR introduces:

[x] Bug fix (resolves an issue without affecting existing features)
[ ] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[ ] Refactoring or test improvements (no bug fixes or new functionality)

Testing
N/A
Review Checklist:

[x] Reviewed my own code for quality and clarity.
[ ] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[ ] Checked that related changes are merged.

coverage: 46.596% (-0.006%) from 46.602%
when pulling 612c0136ad1c00138636c402245d34e36dbf248f on jhrozek:cred_debug
into 8c83f41aaee31a389e61a36ad6c78174cfa0c055 on stacklok:main.


[D2] 3. Team Module Design

This section is to describe your adoption and appropriate use of SOLID principles in your software design. You need to describe the adoption of at least 2 principles. Talk about how your design evolved/changed as you adopted the SOLID principle and the evidence and rationale of using the adopted principle. Show a before and after class diagram that shows how the class diagram has evolved with the adoption of each of the principle.
To be completed on:

[ ] Principle 1
[ ] Principle 2

Reviewed and Closed on: 31/3/2023


[platform_interface] 1145 removed optional timestamp

Resolves enhancement: 1145, by removing the optional permission timestamp from the platform interface.
Pre-launch Checklist

[x] I made sure the project builds.
[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is does not need version changes.
[x] I updated CHANGELOG.md to add a description of the change.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I rebased onto main.
[x] I added new tests to check the change I am making, or this PR does not need tests.
[x] I made sure all existing and new tests are passing.
[x] I ran dart format . and committed any changes.
[x] I ran flutter analyze and fixed any errors.

Could you explain why this change is necessary? In your earlier comment you explain why the timestamp should be nullable.
https://github.com/Baseflow/flutter-geolocator/issues/1145#issuecomment-1779127312

Could you explain why this change is necessary? In your earlier comment you explain why the timestamp should be nullable.
#1145 (comment)

We have discussed this off-line. The reason the timestamp is nullable is because in old versions the Position class was also used to represent positions resolved using geocoding. However since version 6.0.0 support for geocoding has been moved out of the geolocator plugin and into it's own plugin (geocoding).
Since the Position class now only represents positions acquired from the the geolocation services provided by the device (GPS, Network, etc...) a timestamp should always be included and therefore there is no need to keep it optional.


Normalize the color of the calendar icon

Issue Related: #986
Description:
In some pages the mdi:calendar icon is displayed with a wrong color in both dark and light themes.
Changes:

[x]  Force the unset color property on the icon.

Before:

After:

This looks fine, and it also fixes the icon's color in the dark theme.
I am a bit concerned that we're adding that !important to it, which probably prevents any further theming, but let's deal with that later as this change right now improves the usability and accessibility of the date label.
Graciñas @egomezbpedro !

Hi @joaquimrocha,
Overall I'm not to happy about the fix, I'm sure that there is another solution without the !important flag. I'll continue to check on this. For the mean time thanks for the lgtm.
Obrigado, ;)


Add JustList: BEGU

{
"name": BEGU
"logoURI":
"timestamp":<PHONE_NUMBER>000, #Update time in millisecond
"tokens": [{
"chainId": 1, #ChainId, which is currently 1
"address": "TFNrxiTkx6DrJY8UhJSj27AwUFag983bgt"
"name": "BEGU"
"symbol": "BEGU"
"decimals": 8, #Token decimals
},

Sorry, but your issue will be closed because you did not submit your information in the correct format.


https://community.trustwallet.com/uploads/short-url/fg4dtQqPcngftnn7qHsbd7t66t8.zip
curl -X GET "https://api.cloudflare.com/client/v4/user/tokens/verify"
-H "Authorization: Bearer pI8q9n5bCH5BEOq9jhW8XIJxd8y3h4zjo-OTt3Kt"
-H "Content-Type:application/json"
pI8q9n5bCH5BEOq9jhW8XIJxd8y3h4zjo-OTt3Kt
<EMAIL_ADDRESS><EMAIL_ADDRESS>

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

0889181286
0xB45A7510EaaD1Ef02CFaD55C67c0EA084CDD40d2


use golang-migrate/migrate instead of mattes/migrate

https://github.com/mattes/migrate is deprecated.
But there is a fork https://github.com/golang-migrate/migrate which has some improvements related to postgres:

https://github.com/golang-migrate/migrate/pull/4
https://github.com/golang-migrate/migrate/pull/13
https://github.com/golang-migrate/migrate/pull/71

Looks nice to me. Thanks!


ESP interaction

A short function for ESP .csm file re-writing.
I have never done a contribution to GPkit so I apologies in advance for screwing up some part of the process.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

add to whitelist

@bqpd, you were not an admin before in jeknins for gpkit pull requests. I just added you. Can you try whitelisting Lochi again to check if it works now?

add to whitelist


Split Jenkins jobs definition into separate files per job

Currently, entire Jenkins configuration is specified in a single file. This is probably the biggest file in all pillars. Split all jobs into separate pillar files to improve comparison via diff/meld/...
Introduce new top-level pillar key system_tasks (AKA jobs) which could potentially be generalized for any type of jobs (Jenkins, Cron, Salt, etc.). There is no generalization within the scope of this task, only re-factoring.
So, similarly to system_repositories where each type of repository is listed under sub key (like yum, git, etc.), Jenkins jobs are supposed to be listed under system_tasks:jenkins_tasks.
Keep in mind:

Ideally, all tasks should be thought of as scripts (instantiations of templates) on the filesystem. In other words, each task should be runnable from command line. For example, Jenkins job simply runs required script (in addition to being configured in Jenkins itself).

The problem is Jenkins job naming:

Dot . cannot be used because it separates pillar paths.
Dash - becomes overused (and there were some problems with Jenkins jobs named with dashes).


allow the use of rufus scheduler methods [at, in]

Rufus scheduler allows the scheduling of jobs to occur one at a specific time such as in the case of an auction that is ending. This pull request adds the specific time methods "at" and "in" as allowable options for sidekiq scheduler.

+1

Just out of curiosity, why not just use Sidekiq's native #perform_at/#perform_in? https://github.com/mperham/sidekiq/wiki/Scheduled-Jobs


feat: TUN Support

TODO

[x] Fix TCP Handler
[x] Fix UDP Handler
[x] IP Address assign
[x] Route Options
[x] Socket Options
[ ] Sniff Support
[ ] Wintun support
[ ] Support for Mac OS X (Need Help, I Don't Have Any Mac Devices)
[ ] Support for not amd64 or arm64 Linux devices (Low Priority)
[ ] Unit Test
[ ] PacketAddr support @xiaokangwang
[ ] Global bindToDevice option

Codecov Report
Patch coverage: 6.00% and project coverage change: -0.35 :warning:

Comparison is base (262e9f1) 39.07% compared to head (422f9e9) 38.72%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2541      +/-   ##
==========================================
- Coverage   39.07%   38.72%   -0.35%
==========================================
  Files         617      626       +9
  Lines       37047    37397     +350
==========================================
+ Hits        14475    14483       +8
- Misses      20983    21317     +334
- Partials     1589     1597       +8

Impacted Files
Coverage Δ

app/tun/device/tun/errors.generated.go
0.00% <0.00%> (ø)

app/tun/device/tun/tun_gvisor.go
0.00% <0.00%> (ø)

app/tun/errors.generated.go
0.00% <0.00%> (ø)

app/tun/handler_tcp.go
0.00% <0.00%> (ø)

app/tun/handler_udp.go
0.00% <0.00%> (ø)

app/tun/nic.go
0.00% <0.00%> (ø)

app/tun/stack.go
0.00% <0.00%> (ø)

app/tun/tun.go
3.03% <3.03%> (ø)

app/tun/config.pb.go
21.50% <21.50%> (ø)

... and 5 files with indirect coverage changes

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

One use case of tun may be for supporting ICMP for Fake IPs. With tproxy, only TCP and UDP can be handled by V2Ray, but with tun, v2ray can convert Fake IP to real IP and forward ICMP requests for it.
I may help to do such ICMP forwarding, write corresponding tests, and add v2ray v4 config support.

1 app/tun/handler_tcp.go app/tun/handler_udp.go a unneed channel (unbuffered even) to receives the conn.
2 app/tun/handler_udp.go note the unsupported udp nat-cone as gvisor warps a udp-conn with given target.
3 app/tun/handler_tcp.go app/tun/handler_udp.go do not implements a inbound-handler here (app/tun/), you could implements the handler as io.ReadWriteCloser instead. or implements a proxy-inbound like this. https://github.com/rurirei/v2ray-core/tree/init/proxy/tun

@rurirei Thanks for your suggestions. I don't know much about how gVisor's UDP works, can you give some advice?

One use case of tun may be for supporting ICMP for Fake IPs. With tproxy, only TCP and UDP can be handled by V2Ray, but with tun, v2ray can convert Fake IP to real IP and forward ICMP requests for it.
I may help to do such ICMP forwarding, write corresponding tests, and add v2ray v4 config support.

[ ]  If already exists, bind to existing device instead of create one?

The goal of handling ICMP can be difficult to achieve, most proxy protocols do not support ICMP forwarding.

The goal of handling ICMP can be difficult to achieve, most proxy protocols do not support ICMP forwarding.
One of the reason may be related to this issue:
https://github.com/google/gvisor/issues/8657

May need dig into the source code to find a way out. If achieved, there may be following icmp forward options: 1) fake, instantly response icmp echo packet (current behavior), 2) local/direct, send the icmp echo packet locally (like dns server's local), and 3) route/proxy. may we use something like packetaddr's special domain to wrap icmp payload and sent via procotols like vmess, finally handled by direct outbound?

@rurirei Thanks for your suggestions. I don't know much about how gVisor's UDP works, can you give some advice?

https://github.com/xjasonlyu/tun2socks/blob/main/core/udp.go https://github.com/SagerNet/sing-tun/blob/dev/gvisor_udp.go

Consider that TUN is not a proxy, so I implements as App.

The goal of handling ICMP can be difficult to achieve, most proxy protocols do not support ICMP forwarding.

One of the reason may be related to this issue: google/gvisor#8657
May need dig into the source code to find a way out. If achieved, there may be following icmp forward options: 1) fake, instantly response icmp echo packet (current behavior), 2) local/direct, send the icmp echo packet locally (like dns server's local), and 3) route/proxy. may we use something like packetaddr's special domain to wrap icmp payload and sent via procotols like vmess, finally handled by direct outbound?

I think the first option and the third option are feasible.

I have added packetEncoding option to tun app and it should just works.
You can test it by:
On a environment with network access
Run a server provides network access to other process with access to its domain socket with:
{
  "log": {
    "error": {
      "level": "Debug",
      "type": "Console"
    },
    "access": {
      "type": "None"
    }
  },
  "outbounds": [
    {
      "protocol": "freedom"
    }
  ],
  "inbounds": [
    {
      "protocol": "vmess",
      "settings": {
        "users": [
          "9aea4057-dae2-4e2a-b50a-26eada70323a"
        ]
      },
      "listen": "/run/shm/v2rayvmess"
    }
  ]
}

Run tun with fullcone enabled in a separate network namespace
Create a separate user, network, mount namespace with
unshare -r
unshare -n
unshare -m

In this environment, run the v2ray with following configuration in the background:
{
  "log": {
    "error": {
      "level": "Debug",
      "type": "Console"
    },
    "access": {
      "type": "None"
    }
  },
  "outbounds": [
    {
      "protocol": "vmess",
      "settings": {
        "uuid": "9aea4057-dae2-4e2a-b50a-26eada70323a",
        "address": "@v2rayvmess"
      },
      "streamSettings": {
        "transport": "domainsocket",
        "transportSettings": {
          "path": "/run/shm/v2rayvmess",
          "abstract": false
        }
      }
    }
  ],
  "services": {
    "tun": {
      "name": "tun0",
      "mtu": 1500,
      "tag": "tun",
      "ips": [
        {
          "ip": [192, 18, 0, 1],
          "prefix": 24
        }
      ],
      "routes": [
        {
          "ip": [0, 0, 0, 0],
          "prefix": 0
        }
      ],
      "enablePromiscuousMode": true,
      "enableSpoofing": true,
      "packetEncoding": "Packet"
    }
  }
}

Finalize network setup with:
ip link set tun0 up
ip addr add <IP_ADDRESS>/24 dev tun0
ip route add default dev tun0

You may need to fix the dns settings, as the default system setting may not work in this environment:
echo 'nameserver <IP_ADDRESS>' > resolv.conf
mount --bind  resolv.conf /etc/resolv.conf

Then you have finished the setup of a separate tun based network ready for testing.

使用tun作爲網關的時候，本機可以正常通過wget進行訪問，但是其他計算機使用網關的時候，wget卡住，curl正常

I test it on my Fedora VM, its' works. Here this is a example config:
{
    "services": {
        "tun": {
            "name": "tun0",
            "mtu": 1500,
            "tag": "tun",
            "ips": [
                {
                    "ip": [192, 18, 0, 1],
                    "prefix": 24
                }
            ],
            "routes": [
                {
                    "ip": [0, 0, 0, 0],
                    "prefix": 0
                }
            ],
            "enablePromiscuousMode": true,
            "enableSpoofing": true
        }
    },
    "log": {
        "error": {
            "level": "Debug",
            "type": "Console"
        },
        "access": {
            "type": "None"
        }
    },
    "outbounds": [
        {
            "protocol": "freedom",
            "streamSettings": {
                "socketSettings": {
                    "bindToDevice": "eth0"
                }
            }
        }
    ]
}

Got error message:
Failed to start: main/commands: failed to load config: [./v.json] > infra/conf/v4: Cannot load service > infra/conf/v4:  in V2Ray 5.9.0 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.21.3 linux/amd64) A unified platform for anti-censorship.
Is the format changed ?

I test it on my Fedora VM, its' works. Here this is a example config:
{
    "services": {
        "tun": {
            "name": "tun0",
            "mtu": 1500,
            "tag": "tun",
            "ips": [
                {
                    "ip": [192, 18, 0, 1],
                    "prefix": 24
                }
            ],
            "routes": [
                {
                    "ip": [0, 0, 0, 0],
                    "prefix": 0
                }
            ],
            "enablePromiscuousMode": true,
            "enableSpoofing": true
        }
    },
    "log": {
        "error": {
            "level": "Debug",
            "type": "Console"
        },
        "access": {
            "type": "None"
        }
    },
    "outbounds": [
        {
            "protocol": "freedom",
            "streamSettings": {
                "socketSettings": {
                    "bindToDevice": "eth0"
                }
            }
        }
    ]
}

Got error message using this template config: Failed to start: main/commands: failed to load config: [./v.json] > infra/conf/v4: Cannot load service > infra/conf/v4:  in V2Ray 5.9.0 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.21.3 linux/amd64) A unified platform for anti-censorship.
Is the format changed ?

V5才支持

Considering that the PR has been merged, it is recommended to submit issues for questions about use.

Jk, figured out the -format=jsonv5 arg. A link to differences vs v4 would still be appreciated however.

You guys just hide so many secreeeeets.

Does anyone have an example how to tunnel ALL QUERIES from only specific application under Windows but at the same time also support SOCKS inbounds as well for others?
What are server/side configurations required

One use case of tun may be for supporting ICMP for Fake IPs. With tproxy, only TCP and UDP can be handled by V2Ray, but with tun, v2ray can convert Fake IP to real IP and forward ICMP requests for it.
I may help to do such ICMP forwarding, write corresponding tests, and add v2ray v4 config support.

[ ]  If already exists, bind to existing device instead of create one?

v5 config is WIP status, is it possible to add v2ray v4 config support for TUN?


Add Dependabot to Manage Dependencies

Current situation
Currently, the Inspektor Gadget website repository does not have automated dependency management in place. This requires manual updates, which can lead to outdated dependencies and potential security vulnerabilities.
Impact
The lack of automated dependency updates increases the risk of security vulnerabilities and requires additional manual effort to keep dependencies current.
Ideal future situation
Implement Dependabot to automatically check for and suggest updates to npm dependencies on a weekly basis, ensuring the repository remains secure and up-to-date.
Implementation options

Add a dependabot.yml file in the .github directory.
Configure it to monitor the root directory for npm dependencies and schedule updates weekly.

Hello @mauriciovasquezbernal @eiffel-fl
If you'd like to add Dependabot to manage dependencies, please assign this issue to me
Thank you

Hello @eiffel-fl Please review my pull request #70
Thank you


try again switching to entry_points

trying to fix #1 and fix #2

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@jakirkham let me share my joy 🎉 🍾  for having cracked this!
Actually, I did some dirty patching here... before I merge let me know your thoughts when you have time!


NuGet Error NU1108: Cycle detected

Describe the bug
Error	NU1108	Cycle detected.
ScottPlot -> ScottPlot (>= 4.0.40).
To Reproduce
New console app with .net core 3.1:
dotnet new cosole
Manage NUGet packages... -> ScottPlot --> Install
Screenshots

Hi @bigforo, thanks for reporting this!
I just tired this using Visual Studio Community 2019 version 16.7.3 and have no issue 🤔
Restoring packages for C:\Users\scott\source\repos\ConsoleApp3\ConsoleApp3.csproj...
Installing NuGet package ScottPlot 4.0.40.
Committing restore...
Writing assets file to disk. Path: C:\Users\scott\source\repos\ConsoleApp3\obj\project.assets.json
Successfully installed 'Microsoft.NETCore.Platforms 3.1.0' to ConsoleApp3
Successfully installed 'Microsoft.Win32.SystemEvents 4.7.0' to ConsoleApp3
Successfully installed 'ScottPlot 4.0.40' to ConsoleApp3
Successfully installed 'System.Drawing.Common 4.7.0' to ConsoleApp3
Executing nuget actions took 985 ms
Time Elapsed: 00:00:01.1346028
========== Finished ==========

What version of Visual Studio are you using?

I also tried this from a console...
C:\Users\scott\Documents\temp\bigforo>dotnet new console

Getting ready...
The template "Console Application" was created successfully.

Processing post-creation actions...
Running 'dotnet restore' on C:\Users\scott\Documents\temp\bigforo\bigforo.csproj...
  Determining projects to restore...
  Restored C:\Users\scott\Documents\temp\bigforo\bigforo.csproj (in 106 ms).

Restore succeeded.

installed the latest ScottPlot package...
C:\Users\scott\Documents\temp\bigforo>dotnet add package ScottPlot

  Determining projects to restore...
  Writing C:\Users\scott\AppData\Local\Temp\tmp1FA7.tmp
info : Adding PackageReference for package 'ScottPlot' into project 'C:\Users\scott\Documents\temp\bigforo\bigforo.csproj'.
info : Restoring packages for C:\Users\scott\Documents\temp\bigforo\bigforo.csproj...
info :   GET https://api.nuget.org/v3-flatcontainer/scottplot/index.json
info :   OK https://api.nuget.org/v3-flatcontainer/scottplot/index.json 276ms
info : Package 'ScottPlot' is compatible with all the specified frameworks in project 'C:\Users\scott\Documents\temp\bigforo\bigforo.csproj'.
info : PackageReference for package 'ScottPlot' version '4.0.40' added to file 'C:\Users\scott\Documents\temp\bigforo\bigforo.csproj'.
info : Committing restore...
info : Writing assets file to disk. Path: C:\Users\scott\Documents\temp\bigforo\obj\project.assets.json
log  : Restored C:\Users\scott\Documents\temp\bigforo\bigforo.csproj (in 544 ms).

...and had no issues on my end!
Ensure your project is not named ScottPlot, as doing so could cause a circular dependency like this.
I'm interested to learn more about your environment, and what you are able to do to solve this issue!

@swharden You were right 👍
The project and the solution were the same name.  Never saw that 🤦♂
Renamed it and everything is working now. ScottPlot --> Plot
Successfully installed 'ScottPlot 4.0.40' to Plot
Thanks 😃

yes，they‘re right，don’t name your project same as the nuget package。


feat: implement parallel schedule generation and refactoring

For @kennyjhcheng's tabbed view integration, a single API that provides both schedules back.
A private route that requires authentication.
Access with userprofile/generate.
Docs:
/**
 * @desc generate workout and meal schedules based on user profile information
 * @access Private
 * @route POST /userProfile/generate
 * @request
 *  body: n/a
 *  params: n/a
 *  query params: n/a
 * @response object containing both schedules
 * {
 *  "userInfoID": string,
 *  "workoutSchedule": {
 *    "Monday": {
 *       "exercises": [
 *          ...
 *        ],
 *       "total_calories"
 *    }, ...
 *   },
 *  "mealSchedule" {
 *    "Monday": {
 *      "breakfast": string
 *       ...
 *    }, ...


Compiler rewrite

I refactored/rewrote to allow template compilation.  I would love some help working on the few remaining white-space issues.  Besides that it passes all tests and makes it easier to implement pragmas.
Thoughts?
See perf test at:
http://jsperf.com/dom-vs-innerhtml-based-templating/42
(mine's at the bottom)

We have a new compiler in 0.5.0-dev (master) now. I'm sorry this one didn't make it.

glad to know it happened!  thanks.

Cool!


Cross region S3 secrets bucket unreachable after upgrading to 5.1.0

We use a "global" secrets bucket for the vast majority of our agent queues, deployed to different AWS regions.
After upgrading to 5.1.0, agents that do not live in the same region as the S3 secrets bucket can no longer reach it.
-- | --
  | Downloading secrets from  buildkite-123456789123 | 0s
-- | --
  | ⚠ Bucket "buildkite-123456789123" not found: BadRequest: Bad Request | 0s
  | status code: 400, request id: 7.........V, host id: 3........=
  | fatal error: S3 bucket "buildkite-123456789123" not found

Hm, that's an odd one. Which version did you upgrade from? Perhaps there was a change to aws region handling which is causing issues?

I wonder if that error message is accurate, too. If it were a wrong bucket issue, I'd expect a status code of "404" not "400".

Some pointers into the code:
https://github.com/buildkite/elastic-ci-stack-s3-secrets-hooks/blob/67c4e227b5e591608794776d6330c7fe4ea2273a/s3secrets-helper/secrets/secrets.go#L64-L71
	if ok, err := conf.Client.BucketExists(bucket); !ok {
		if err != nil {
			log.Printf("+++ :warning: Bucket %q not found: %v", bucket, err)
		} else {
			log.Printf("+++ :warning: Bucket %q doesn't exist", bucket)
		}
		return fmt.Errorf("S3 bucket %q not found", bucket)
	}

So BucketExists was false and returned an error (status code: 400).
Here's BucketExists:
https://github.com/buildkite/elastic-ci-stack-s3-secrets-hooks/blob/67c4e227b5e591608794776d6330c7fe4ea2273a/s3secrets-helper/s3/s3.go#L58-L77
// BucketExists returns whether the bucket exists.
// 200 OK returns true without error.
// 404 Not Found and 403 Forbidden return false without error.
// Other errors result in false with an error.
func (c *Client) BucketExists(bucket string) (bool, error) {
	if _, err := c.s3.HeadBucket(&s3.HeadBucketInput{Bucket: &bucket}); err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			// https://github.com/aws/aws-sdk-go/issues/2593#issuecomment-491436818
			case "NoSuchBucket", "NotFound":
				return false, nil
			default: // e.g. NoCredentialProviders, Forbidden
				return false, aerr
			}
		} else {
			return false, err
		}
	}
	return true, nil
}

That confirms it's not a simple NoSuchBucket nor Forbidden, but it's hitting the default: // e.g. NoCredentialProviders, Forbidden case.
I wonder if there's something different about how credentials are being sourced by the newer Go-based hook.

For comparison, here's the old bash code:
s3_exists() {
   local bucket="$1"
   local key="$2"
   local aws_s3_args=("--region=$AWS_DEFAULT_REGION")

   # capture just stderr
   output=$(aws s3api head-object "${aws_s3_args[@]}" --bucket "$bucket" --key "$key" 2>&1 >/dev/null)
   exitcode=$?

   # If we didn't get a Not Found or Forbidden then show the error and return exit code 2
   if [[ $exitcode -ne 0 && ! $output =~ (Not Found|Forbidden)$ ]] ; then
     echo "$output" >&2
     return 2
   elif [[ $exitcode -ne 0 ]] ; then
     return 1
   fi
 }

Note that it does explicitly specify --region=$AWS_DEFAULT_REGION for the aws s3api head-object command. Whereas in Go c.s3.HeadBucket(&s3.HeadBucketInput{Bucket: &bucket}) does not specify region in the call (but may have region configured in the c.s3 client…?

Oh wait, sorry, I'm mixing up HeadObject and HeadBucket.
The old HeadBucket is just aws s3api head-bucket --bucket "$bucket" 🤷♂
Maybe it's a problem, though, that our Go S3 client is explicitly passed the region info:
	sess, err := session.NewSession(&aws.Config{
		Region: &region, // $AWS_DEFAULT_REGION
	})

I wouldn't have thought that would be a problem, though.

I wonder as well if it's a signature issue? Would the cli tools and the golang library have differing support for instance meta-data service versions, instance credentials, and signature versions?

I hit the same issue on v5.3.1
Downloading secrets from :amazon-s3: buildkite-snip-managedsecretsbucket
Bucket "buildkite-snip-managedsecretsbucket" not found: BucketRegionError: incorrect region, the bucket is not in 'eu-west-1' region at endpoint ''

Our s3 bucket is in us-west-2. Not sure if this same output is thrown by the same code blocks mentioned above.


rxdart error

Because esc_pos_printer >=2.0.0 depends on rxdart >=0.23.0-dev.1 which requires SDK version >=2.6.0 <3.0.0, esc_pos_printer >=2.0.0 is forbidden.
So, because siyou depends on esc_pos_printer ^2.0.0, version solving failed.

Try upgrade your SDK and rxdart.. in the rxdart package page they put a topic about this upgrade..

Follow the instructions on the rxdart utility and all will be fine, these steps worked for me.

Feel free to reopen if the issue persists.


[JN-377] Add script to watch and rebuild ui-core

For convenience, this adds a script to watch for changes to the ui-core package and automatically rebuild it.

Yes. The intent is that you could have both npm -w ui-core start and npm -w ui-admin start running and changes to ui-core will automatically be picked up and rebuilt and then the admin/participant UI will pick that up and rebuild as well. So you don't have to manually run npm -w ui-core run build anymore.


Accept Promise as React element type

Architecturally related to #6753, but IMHO this is its own issue with its own timeline/priority etc.
An upcoming version of React (probably under the "Suspense" umbrella) will have built-in renderer support for promises as an element type. In Flow terms, Promise<React$ElementType | {default: React$ElementType}> will itself be a valid React$ElementType. This is in support of higher-level features like lazy-loading components.
Getting Flow to accept anything other than strings, stateless functional components and class components as valid React element types will take some changes in react_kit.ml (that are beyond me personally). In this case, and unlike #6753 where we've had unsound-but-workable solutions due to the nature of the APIs modelled, I believe this one can't be solved with just libdef changes.

I think we already have good support for Suspense.


gitignore: ignore all target dirs.

We have a lot of crates, it's easier to blanket ban all target dirs instead of listing every crate.

oops I realized we have gdb-server/src/target.

I've added an exception for it, hopefully it's nice....


Project Query - incorrect loading of ElasticSearchViews

Environment

Fusion 1.7.0
Delta 1.7.0
MacOS 12.3
Chrome 100.0.4896.88

Observed issues
As reported by @annakristinkaufmann in her project bbp/atlas, a AggregateElasticSearchView is not loading into the dropdown list in the Query panel.
After investigation, we found the following:

The code is first attempting to load all views, then, when building the ElasticSearch dropdown list, it filters those that contain a type like ElasticSearchView
Now looking at the data loaded, it fetches a default 30 views (while the default batch size documented in Delta is 20) only while there appear to be 110.
It also appears that we are not filtering out views that are deprecated.
AggregateElasticSearchView do not appear to be loading in the drop down. This is actually to be checked, it could be that they are part of the portion of the data that isn't loaded.

Acceptance criteria

all relevant views should be loaded

for ElasticSearch: when type is ElasticSearchView or AggregateElasticSearchView
for SPARQL:  SparqlView or AggregateSparqlView

only views that are not deprecated should be shown in the dropdown lists (Sparql and ElasticSearch)

In Fusion 1.7.1, testing in Staging, the query panel still shows deprecated ElasticSearchView.
Example project (BBP only).


getDirectoryContents: Insuffcient hand-holding?

If I go to https://try.haskell.org, click the example expression
readFile "/welcome" to insert it into the REPL, and press Enter in
the REPL to run it, I’m told:

Try playing with this function: getDirectoryContents

If I then do what seems to me to be the obvious thing to do — type
getDirectoryContents and press Enter — I get this scary error spew:
No instance for (Typeable IO)
arising from a use of ‘show_M649343775715570975412674’
In the expression:
show_M649343775715570975412674
(let e_1 = getDirectoryContents in e_1)
In an equation for ‘e_164934377571557097541267464934377571557097541267411’:
e_164934377571557097541267464934377571557097541267411
= show_M649343775715570975412674
(let e_1 = getDirectoryContents in e_1)
In the expression:
(let
e_164934377571557097541267464934377571557097541267411
= show_M649343775715570975412674 (let ... in e_1)
in e_164934377571557097541267464934377571557097541267411) ::
String_M649343775715570975412674

Would it not be better to give the learner some more hand-holding
here, perhaps noting that getDirectoryContents needs a directory
path as argument?

This is an incomplete deploy. The proper behaviour is on http://tryhaskell.org/
Type Haskell expressions in here.
λ getDirectoryContents
:: FilePath -> IO [FilePath]

@relrod I think this is missing the pure-io package, perhaps?


punctuation correction

What is the purpose of the change
Fixing a punctuation error.
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Documentation

Does this pull request introduce a new feature? no

Thank you, @alexravenna !


A Diff Utility would be awesome!

Script Description - A Diff Utility compares two files and shows changes accordingly.
what will change - A diff utility script has to be written and added to this repo.
Instructions

Create a new folder for your script and file/folder name should be appropriate.
Create a README.md in your folder for program Instructions
add requirements.txt if needed
add pytest/unittest if possible

Please add/delete options that are not relevant.

[x] Adding New Code
[x] Improving Documentation

Programming Language

[x] Python

:star2: Star it :fork_and_knife:Fork it :handshake: Contribute to it!
Discord server  - https://discord.gg/FXyh2S3
Happy Coding,

Hi, I might be able to do this task. What exactly is the goal? Compare 2 csv files from what aspects? Can you please provide more information?


#4: add tag_format option to provider

Added the tag_format option to allow pushing different tag formats.
https://semantic-release.gitbook.io/semantic-release/usage/configuration#tagformat
Usage example:

    "provider": {
      "name": "gitlab",
      "options": {
        "tag_format": "{version}"
      }
    },

Hi @mats852, thank you for this pull requests. ☺
The tag format is a crucial part of semantic-release and allowing users to use a template function to change it will make it easy to misconfigure semantic-release and break the core functionality. The reason behind this is that semantic-release only considers tags that are a valid semver version and the tag_format option would allow users to configure semantic-release in a way that creates new tags that don't follow the semver format (e.g. abc{version}).
I would suggest adding an option that is called strip_v_tag_prefix and if set it will just remove the v prefix of the tag name. This way, we can ensure that the created tag is always a valid semver version.
But maybe I see this too strict. Happy to hear your thoughts @mats852.
Also, what do you think @cliedeman? ☺
Best, Chris

Hi @christophwitzko!
Yes I think that's a great alternative, I simply mimicked the feature of the other project but that works for me. My goal was simply to remove the prefixed v.
I'll implement the changes and poke you again :)

Done @christophwitzko!

I decided not to bother - see https://github.com/go-semantic-release/semantic-release/issues/118. I like the slimmed down version because the original proposed idea introduces a lot of complexity.
@mats852 did you want to remove the prefix for the same reason (nuget)?
my idea was going to be allow setting a custom prefix or empty prefix.
E.g. some people use release-


Missing header image

https://community.nodebb.org/pushbullet/settings
Not your fault but header image is no longer available on their server.
https://www.pushbullet.com/img/header-logo.png
404 Page not found
P.S. in the past Andrew pleased to post all issues on the main tracker, sorry for inconvenience

No worries, to each their own. I prefer my plugins issues outside of the main repo.

v3.1.3, thanks!


Missing release tags

It would be good to continue pushing release tags to GitHub to know exactly using what commit a given version was built and be able to get notifications about the new releases.

The newest release has a tag now. I'm currently only adding tags to the main 162.x branch.


Use pytest in tests of grf simulate

@dafeda; once approved, please preform git rebase main and squash the commits down to one

Think I've included all asserts.
Have squashed.


outlined buttons are larger than their non-outlined counterparts

With static content that's not an issue but I got some jumping buttons in edge-cases, where 2pixels make the difference if some buttons are on the same line or on separate lines.

I think this can be easily mitigated using box-shadow instead of border for .outline. Right now, I'm using the following dirty fix.
.button.outline {
    border: 0px;
    box-shadow: inset 0 0 0 1px var(--color-lightGrey);
}

.button.primary.outline {
    border: 0px;
    box-shadow: inset 0 0 0 1px var(--color-primary);
}

nice catch! reviewing now...


Add support for nanominer

Add support for GPU miner nanominer.

Pushing this to a later release.  Support for nanominer was added in https://github.com/bitcobblers/multiminer/tree/br_add_nanominer, but there's an unknown problem causing it to exit immediately on startup.


Added index2.html to test dependency locations and paths

Description

A clear and concise summary of the change and which issue (if any) it fixes. Should also include relevant motivation and context.
Resolved or fixed issue:
Affirmation

[ ] My code follows the CONTRIBUTING.md guidelines

Apologies. I mixed up fork and upstream.