[Issue]: CL_DEVICE_TOPOLOGY_TYPE_PCIE_AMD returns first device PCI BDF on Adastra/MI300

Problem Description
On MI300A nodes on the Adastra supercomputer, all 4 GPUs return the PCI BDF of the first GPU from the OpenCL PCIe query CL_DEVICE_TOPOLOGY_TYPE_PCIE_AMD
Operating System
RHEL 9.4
CPU
MI300A
GPU
MI300A
ROCm Version
ROCm 6.1.0
ROCm Component
clr
Steps to Reproduce
This was first discovered inside hwloc but can be confirmed from clinfo:
a1003:~/hwloc-3.0.0a1-git/build-mi300$ clinfo  | grep Topology
  Device Topology:				 PCI[ B#2, D#0, F#0 ]
  Device Topology:				 PCI[ B#2, D#0, F#0 ]
  Device Topology:				 PCI[ B#2, D#0, F#0 ]
  Device Topology:				 PCI[ B#2, D#0, F#0 ]

(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
ROCm seems to be 6.1.2. Most rocm RHEL packages contain 60102-119 in their package name, including the opencl ones.
rocm-opencl.x86_64                             <IP_ADDRESS>102-119.el9                             @other_rocm-6.1.2-rhel9_13
rocm-opencl-devel.x86_64                       <IP_ADDRESS>102-119.el9                             @other_rocm-6.1.2-rhel9_13
rocm-opencl-icd-loader.x86_64                  1.2.60102-119.el9                               @other_rocm-6.1.2-rhel9_13
rocm-opencl-runtime.x86_64                     <IP_ADDRESS>102-119.el9                             @other_rocm-6.1.2-rhel9_13
rocm-opencl-sdk.x86_64                         <IP_ADDRESS>102-119.el9                             @other_rocm-6.1.2-rhel9_13
ROCk module version 6.7.0 is loaded
HSA System Attributes
Runtime Version:         1.13
Runtime Ext Version:     1.4
System Timestamp Freq.:  1000.000000MHz
Sig. Max Wait Duration:<PHONE_NUMBER>3709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model:           LARGE
System Endianness:       LITTLE
Mwaitx:                  DISABLED
DMAbuf Support:          YES
==========
HSA Agents

Agent 1

Name:                    AMD Instinct MI300A Accelerator
Uuid:                    CPU-XX
Marketing Name:          AMD Instinct MI300A Accelerator
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    0
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   3700
BDFID:                   0
Internal Node ID:        0
Compute Unit:            48
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    130890508(0x7cd3b0c) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    130890508(0x7cd3b0c) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    130890508(0x7cd3b0c) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 2

Name:                    AMD Instinct MI300A Accelerator
Uuid:                    CPU-XX
Marketing Name:          AMD Instinct MI300A Accelerator
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    1
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   3700
BDFID:                   0
Internal Node ID:        1
Compute Unit:            48
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    131766468(0x7da98c4) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    131766468(0x7da98c4) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    131766468(0x7da98c4) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 3

Name:                    AMD Instinct MI300A Accelerator
Uuid:                    CPU-XX
Marketing Name:          AMD Instinct MI300A Accelerator
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    2
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   3700
BDFID:                   0
Internal Node ID:        2
Compute Unit:            48
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    131809208(0x7db3fb8) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    131809208(0x7db3fb8) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    131809208(0x7db3fb8) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 4

Name:                    AMD Instinct MI300A Accelerator
Uuid:                    CPU-XX
Marketing Name:          AMD Instinct MI300A Accelerator
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    3
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   3700
BDFID:                   0
Internal Node ID:        3
Compute Unit:            48
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    131795632(0x7db0ab0) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    131795632(0x7db0ab0) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    131795632(0x7db0ab0) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 5

Name:                    gfx942
Uuid:                    GPU-eb28776e0dc5fc14
Marketing Name:          AMD Instinct MI300A
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    4
Device Type:             GPU
Cache Info:
L1:                      32(0x20) KB
L2:                      24576(0x6000) KB
L3:                      262144(0x40000) KB
Chip ID:                 29856(0x74a0)
ASIC Revision:           1(0x1)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2100
BDFID:                   512
Internal Node ID:        4
Compute Unit:            228
SIMDs per CU:            4
Shader Engines:          24
Shader Arrs. per Eng.:   1
WatchPts on Addr. Ranges:4
Coherent Host Access:    TRUE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          64(0x40)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    2048(0x800)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 138
SDMA engine uCode::      19
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 4
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Recommended Granule:0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx942:sramecc+:xnack-
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32

Agent 6

Name:                    gfx942
Uuid:                    GPU-5f2efdd4cf3cf910
Marketing Name:          AMD Instinct MI300A
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    5
Device Type:             GPU
Cache Info:
L1:                      32(0x20) KB
L2:                      24576(0x6000) KB
L3:                      262144(0x40000) KB
Chip ID:                 29856(0x74a0)
ASIC Revision:           1(0x1)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2100
BDFID:                   512
Internal Node ID:        5
Compute Unit:            228
SIMDs per CU:            4
Shader Engines:          24
Shader Arrs. per Eng.:   1
WatchPts on Addr. Ranges:4
Coherent Host Access:    TRUE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          64(0x40)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    2048(0x800)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 138
SDMA engine uCode::      19
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 4
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Recommended Granule:0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx942:sramecc+:xnack-
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32

Agent 7

Name:                    gfx942
Uuid:                    GPU-65980e71d0ff713b
Marketing Name:          AMD Instinct MI300A
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    6
Device Type:             GPU
Cache Info:
L1:                      32(0x20) KB
L2:                      24576(0x6000) KB
L3:                      262144(0x40000) KB
Chip ID:                 29856(0x74a0)
ASIC Revision:           1(0x1)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2100
BDFID:                   512
Internal Node ID:        6
Compute Unit:            228
SIMDs per CU:            4
Shader Engines:          24
Shader Arrs. per Eng.:   1
WatchPts on Addr. Ranges:4
Coherent Host Access:    TRUE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          64(0x40)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    2048(0x800)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 138
SDMA engine uCode::      19
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 4
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Recommended Granule:0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx942:sramecc+:xnack-
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32

Agent 8

Name:                    gfx942
Uuid:                    GPU-ada4590817227e95
Marketing Name:          AMD Instinct MI300A
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    7
Device Type:             GPU
Cache Info:
L1:                      32(0x20) KB
L2:                      24576(0x6000) KB
L3:                      262144(0x40000) KB
Chip ID:                 29856(0x74a0)
ASIC Revision:           1(0x1)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2100
BDFID:                   512
Internal Node ID:        7
Compute Unit:            228
SIMDs per CU:            4
Shader Engines:          24
Shader Arrs. per Eng.:   1
WatchPts on Addr. Ranges:4
Coherent Host Access:    TRUE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          64(0x40)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    2048(0x800)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 138
SDMA engine uCode::      19
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    134217728(0x8000000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Recommended Granule:2048KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 4
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Recommended Granule:0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx942:sramecc+:xnack-
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32
*** Done ***
Additional Information
ROCM-SMI correctly reports the PCI BDF of each GPU. The issue seems to be inside the OpenCL runtime.
Adastra/MI250X doesn't have the problem:
g1003:~$ clinfo | grep Topology
  Device Topology:				 PCI[ B#193, D#0, F#0 ]
  Device Topology:				 PCI[ B#198, D#0, F#0 ]
  Device Topology:				 PCI[ B#201, D#0, F#0 ]
  Device Topology:				 PCI[ B#206, D#0, F#0 ]
  Device Topology:				 PCI[ B#209, D#0, F#0 ]
  Device Topology:				 PCI[ B#214, D#0, F#0 ]
  Device Topology:				 PCI[ B#217, D#0, F#0 ]
  Device Topology:				 PCI[ B#222, D#0, F#0 ]

However the OS is a RHEL 8.8 and ROCm 5.7.1.

Hi @bgoglin. Internal ticket is created to investigate your issue. Thanks!

Hi @bgoglin, what does rocm-smi --showcomputepartition show? It's possible that these four nodes are partitions of the same GPU, in which case they would have the same BDF. If this is not the case, to clarify, do you see the same BDF reported by rocm-smi --showbus and amd-smi topology?

@schung-amd Here's the output of all these commands:
$ rocm-smi --showcomputepartition

============================ ROCm System Management Interface ============================
=============================== Current Compute Partition ================================
GPU[0]		: Compute Partition: SPX
GPU[1]		: Compute Partition: SPX
GPU[2]		: Compute Partition: SPX
GPU[3]		: Compute Partition: SPX
==========================================================================================
================================== End of ROCm SMI Log ===================================
a1003:~$ rocm-smi --showbus

============================ ROCm System Management Interface ============================
======================================= PCI Bus ID =======================================
GPU[0]		: PCI Bus: 0000:02:00.0
GPU[1]		: PCI Bus: 0001:02:00.0
GPU[2]		: PCI Bus: 0002:02:00.0
GPU[3]		: PCI Bus: 0003:02:00.0
==========================================================================================
================================== End of ROCm SMI Log ===================================
a1003:~$ amd-smi topology
ACCESS TABLE:
             0000:02:00.0 0001:02:00.0 0002:02:00.0 0003:02:00.0
0000:02:00.0 ENABLED      ENABLED      ENABLED      ENABLED
0001:02:00.0 ENABLED      ENABLED      ENABLED      ENABLED
0002:02:00.0 ENABLED      ENABLED      ENABLED      ENABLED
0003:02:00.0 ENABLED      ENABLED      ENABLED      ENABLED

WEIGHT TABLE:
             0000:02:00.0 0001:02:00.0 0002:02:00.0 0003:02:00.0
0000:02:00.0 0            15           15           15
0001:02:00.0 15           0            15           15
0002:02:00.0 15           15           0            15
0003:02:00.0 15           15           15           0

HOPS TABLE:
             0000:02:00.0 0001:02:00.0 0002:02:00.0 0003:02:00.0
0000:02:00.0 0            1            1            1
0001:02:00.0 1            0            1            1
0002:02:00.0 1            1            0            1
0003:02:00.0 1            1            1            0

LINK TYPE TABLE:
             0000:02:00.0 0001:02:00.0 0002:02:00.0 0003:02:00.0
0000:02:00.0 SELF         XGMI         XGMI         XGMI
0001:02:00.0 XGMI         SELF         XGMI         XGMI
0002:02:00.0 XGMI         XGMI         SELF         XGMI
0003:02:00.0 XGMI         XGMI         XGMI         SELF

NUMA BW TABLE:
             0000:02:00.0 0001:02:00.0 0002:02:00.0 0003:02:00.0
0000:02:00.0 N/A          50000-100000 50000-100000 50000-100000
0001:02:00.0 50000-100000 N/A          50000-100000 50000-100000
0002:02:00.0 50000-100000 50000-100000 N/A          50000-100000
0003:02:00.0 50000-100000 50000-100000 50000-100000 N/A

Thanks! It looks like the GPUs are connected to different PCI domains which each have their own set of BDFs, so you have 0000:02:00.0, 0001:02:00.0, etc.
For some clarification,

ROCM-SMI correctly reports the PCI BDF of each GPU. The issue seems to be inside the OpenCL runtime.

Are you referring to rocm-smi --showbus output here, or did you see other values for the BDF from rocm-smi?
Is this causing any issues for you, or just a curiosity?

I was querying the PCI BDF from the ROCm SMI API rsmi_dev_pci_id_get(). Those values are correct. Only the one from the CL extension API was wrong. Both are queried by the hwloc library, which is used by some parallel runtime in upper layers to place tasks and memory near the GPU they use. It's not a huge issue right now, but it'd be nice to solve this.
So the issue is actually that the CL extension HWLOC_CL_DEVICE_TOPOLOGY_AMD doesn't report any PCI domain at all. One easy way to solve this would be to implement HWLOC_CL_DEVICE_PCI_BUS_INFO_KHR instead. This issue seems to be more standard, and it reports the PCI domain. Implementing this should be farily easy on your side.

Unfortunately, we are no longer adding new features or functionality to our OpenCL implementation at this time, which this would fall under (as CL_DEVICE_PCI_BUS_INFO_KHR is a CL3.0 spec for example), so this is not likely to be addressed in the foreseeable future. I'm also not aware of any workarounds available on the OpenCL side; rocm-smi and amd-smi get their information from a completely different source so nothing can really be ported over. Regardless, this is good knowledge for similar issues that may arise in the future, so thank you for reporting this. Feel free to comment if you'd like additional guidance.


Testing-gitpod-base-images

According to https://github.com/gitpod-io/gitpod/issues/4400#issuecomment-856690622, the base image is not the cause.
For now, regenerating the .gitpod.Dockerfile every couple of weeks would solve it, until Gitpod bug gets resolved.


ModuleNotFoundError

After setup when I run
src/account/summary.py
I get following messages,
Traceback (most recent call last):
File "src/account/summary.py", line 5, in
from .account import Account
ModuleNotFoundError: No module named 'main.account'; 'main' is not a package
any clue?

Remove the dot from .account
So:
from account import Account

I have the similar issue with src/account/summary.py
Traceback (most recent call last):
File "src/account/summary.py", line 5, in
from .account import Account
ModuleNotFoundError: No module named 'main.account'; 'main' is not a package
What am I missing?

removing the . it works, thank you


Support preselected items

The feature lets users can select/deselect items back and forth.

@NikKovIos , the PR is refined according to your suggestion. Thanks you.

@kf99916 Mark as resolved appropriate conversations


Upgrade PnP-Tools solution compared to Sites-Core

What's in this Pull Request?

Upgrade of Responsive-UI solution in accordance with the latest version of the Sites-Core repository
Persistence of URLs in the Responsive-UI README file

@Laul0,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

thx Laurent, we'll get this processed in upcoming.

Laurent,
Thanks for your contribution. The PR has been merged.


use --tags for git-describe

Fixes #355

LGTM
@bparees we should fix the release binaries to have correct version
[merge]

@mfojtik i'm planning to do a new s2i release soon anyway, hoping to include @gabemontero's upcoming git clone fix first though.

@mfojtik @bparees I believe that fix is going to be origin only, if time is of the essence

@bparees I think we should still fix the binaries for 1.0.3 to report correct version :-)

@gabemontero it's not particularly urgent.  why is the fix origin only?  is it not broken for s2i?

@bparees roger that (urgency) - the problematic code path is unique to secret processing in the build config, which does not apply to s2i

@gabemontero @bparees how is that related to this issue? ;-)

@mfojtik it relates to when we're going to do a new release w/ proper versioning and whether it's worth re-doing the existing release or not.

@bparees I think it worth redoing the previous release. I think the only thing that is broken currently is the binary that we published (it is reporting wrong version). The tag is is properly, so we just need to upload a new binary built by ./hack/build-release.sh with this fix.


[Production & Staging] [Firefox] File version table has incorrect time

Steps

Log in to osf.io on the Firefox browser
Go to a project you have admin on
On the project overview page click on the osf storage folder to select it
In the toolbar, click to upload a file
Refresh the page and look at the project log.  You should see a log entry for the file you just uploaded.  Make note of the time showing.
Click on the link in the log to go to the file
Look to the right of the rendered image at the version table for the file
Make note of the time.

Expected
I would expect the time showing in the project log for a file upload and the time in the version table for the file to be the same.  I would expect the time in the version table to be the accurate time.
Actual
The log for the file upload is showing the correct time.  However, the version table shows the incorrect time; it is 4 hours ahead of the current time.

Appears to only happen on Firefox.

I will work on this.


"glide up" nfs tests to remove warning

This will remove this warning from the tests:
[WARN]	Lock file may be out of date. Hash check of YAML failed. You may need to run 'update'

The glide up reveals a few inconsistencies, can be dealt with later:
[WARN]	Conflict: k8s.io/apimachinery rev is currently d3c1641, but k8s.io/client-go wants 7080e31e90e981181435294bca96c80a37db8941
[WARN]	Conflict: github.com/golang/protobuf rev is currently c9c7427, but github.com/opencontainers/runc wants f7137ae6b19afbfd61a94b746fda3b3fe0491874
[WARN]	Conflict: k8s.io/client-go rev is currently a0a77784, but k8s.io/apiserver wants<PHONE_NUMBER>a98cbc6579b0d1cfb78c0fc4b3f035
[WARN]	Conflict: github.com/docker/go-units rev is currently v0.3.1, but github.com/opencontainers/runc wants 9b001659dd36225e356b4467c465d732e745f53d

Thank you.
tangent: the nfs e2e tests are quite fragile, I have not touched the glide.yaml under nfs/test/e2e for a while. But I will have to update it soon anyway to get tests running on kube 1.7 in CI. Naturally, upstream doesn't make it easy for outsiders to import the e2e framework.


How to use lm-evaluation-harness for distributed evaluation for extremely large size models

Can somebody please provide me with a way to use distributed evaluation on single or multiple tasks?

Hi @sanyalsunny111 ! Distributed eval (by way of transformers native pipeline parallelism support) is currently only supported in the BigScience fork here and that fork is incompatible with main. The process of porting it over here is still ongoing; see related issue #360 and port https://github.com/EleutherAI/lm-evaluation-harness/pull/381 - you could try running from the 381 branch but no guarantees yet 😄

Hey @jon-tow, Just to let you know your suggestion works for both small 1b and large 12b models for lamda_openai, wikitext and wnli tasks. Thank you very much sir :)
Just found this warning for wikitext : Token indices sequence length is longer than the specified maximum sequence length for this model (7614 > 2048). Running this sequence through the model will result in indexing errors.

Glad to hear! Just to reiterate: We don't guarantee this is 100% working so I would advise not to publish results from this branch yet if you're considering doing so 😄 (it could still be useful for sanity-checking downstream perf though).
Those warnings can be ignored; the tokens are manually truncated to avoid indexing errors.


[FHIR] Support implementation guides, custom operations, and extensions

There's multiple different extension points for extending the IBM FHIR Server with custom functionality:

Interceptors
IGs
Operations

Currently, users wishing to extend the server in this way must extend the server image with their own layer that adds the needed jar files to the userlib directory.
Potential ideas for improving on the current story:

Prepackage EVERYTHING in our base image.  Use config to enable/disable the extra functionality.

folks bringing their own extensions would still need to fall back to the current story (add a layer to docker image)

Prepackage just the fhir-smart interceptor (and its dependencies) and enable/disable that via config

A. keep it as a generic add-on and introduce some generic config for enabling/disabling interceptors (and maybe controlling order?)
B. weave it tighter into the server and enable/disable it right from the fhirServer/security section of the config
folks would need to fall back to the current story (add a layer to docker image) for everything else

Support/document usage of volumes for installing the extensions

Can we put the jar files in ConfigMaps and mount those?

A. they provide us with a ConfigMap name that follows our documented pattern and we resolve that
B. they provide us with some files somewhere and we somehow create a ConfigMap from those?
conflicting answers at https://stackoverflow.com/questions/55123261/hosting-jar-files-on-kubernetes-configmap ...seems to be a bit of a stretch--maybe a size limit of 1MB
as an example, see https://github.com/Alvearie/health-patterns/blob/main/helm-charts/fhir/chart/templates/configmap.yaml#L13-L17 which then gets mounted from the deployment

Some kind of feature manager that would install the extensions during startup

Can we piggyback on the Liberty feature manager?

would probably require us to package the extensions as "liberty features".
would still need a way for users to pass server.xml / configDropins (see #35)
assumption:  we could host the features somewhere (maven central?) and then liberty would be able to download and install them

Similar to point 3 and the one stackoverflow comment: the airflow Helm Chart allows loading custom plugins and workflow definitions (dags) from git repositories by syncing them to local files via a sidecar container: https://github.com/bitnami/charts/tree/master/bitnami/airflow#loading-plugins
In case of binary jars, an s3/cos endpoint that is polled/watched may be more appropriate though.


Moving to a new version of the gcc container, which now works on the …

…debian minimal dotnet container.

Accepting pull request.


feat: index genesis transactions

Depends on https://github.com/gnolang/gno/pull/1941

Related to https://github.com/gnolang/gno/pull/1941

@n0izn0iz
I think you can just add a special "genesis" fetch before we start the main run routines for fetching blocks / block result chunks, since for the genesis block we only need the block results (block 0 is unfetchable) as part of https://github.com/gnolang/gno/pull/1941

agree, would simplify, was planning on doing that

added tests in 763c68ac29fa7f90b43673205e0d9ba82bb6039f

improved tests in 0a31d61
it helped me catch nil deref corner cases, thanks

there is one remaining problem, the indexer should ignore genesis result if the node returns the well known "height must be greater than 0" otherwise we can't index test4 anymore

@n0izn0iz I'll fix up the tests on this branch 🙏

@n0izn0iz
I think we got the PR to a working state -- but there is a problem:
The indexer will break for networks that don't have the genesis results in their storage.
I've circumvented this problem by providing the genesis state fetch error as a soft one, which doesn't derail the indexer:
ca459d3


fix ch02

Hi. I have fixed two examples from the 2nd chapter.

ch02/grpc/service.proto
syntax = "proto2";
I had no time to check why AsyncClient crashes if syntax = "proto3" is used.

Most code from this chapter was moved to later ones written by Piotr so I'm assigning him. Also, we avoid Makefiles in our book because they're not portable in favor of CMake. I can help with providing CMakeLists for those changes.

Most code from this chapter was moved to later ones written by Piotr so I'm assigning him. Also, we avoid Makefiles in our book because they're not portable in favor of CMake. I can help with providing CMakeLists for those changes.

I can write CMakeLists and fix code a bit later.
I am also interested in the 5th chapter. It contains modules, but GCC 11 doesn't compile that code. I used an experimental build on Ubuntu because this version has not been released yet.
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test

I can write CMakeLists and fix code a bit later.
I am also interested in the 5th chapter. It contains modules, but GCC 11 doesn't compile that code. I used an experimental build on Ubuntu because this version has not been released yet.
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test

Awesome, thanks. You can peek at chapter 8 if you want to keep your CMake
style consistent with the rest of the book.
Regarding GCC11, I'm glad that it's finally available in a PPA as I had to
compile GCC trunk from sources. The code compiled on my build. Can you send
me the error message?
On Tue, Jan 19, 2021 at 8:15 PM gaal-dev<EMAIL_ADDRESS>wrote:

I can write CMakeLists and fix code a bit later.
I am also interested in the 5th chapter. It contains modules, but GCC 11
doesn't compile that code. I used an experimental build on Ubuntu because
this version has not been released yet.
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/PacktPublishing/Hands-On-Software-Architecture-with-Cpp/pull/12#issuecomment-763068715,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQFNMI2LGJLV73K3Q3ZNCLS2XK6BANCNFSM4SWKUONA
.

Awesome, thanks. You can peek at chapter 8 if you want to keep your CMake
style consistent with the rest of the book.
Regarding GCC11, I'm glad that it's finally available in a PPA as I had to
compile GCC trunk from sources. The code compiled on my build. Can you send
me the error message?
On Tue, Jan 19, 2021 at 8:15 PM gaal-dev<EMAIL_ADDRESS>wrote:

I can write CMakeLists and fix code a bit later.
I am also interested in the 5th chapter. It contains modules, but GCC 11
doesn't compile that code. I used an experimental build on Ubuntu because
this version has not been released yet.
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/PacktPublishing/Hands-On-Software-Architecture-with-Cpp/pull/12#issuecomment-763068715,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQFNMI2LGJLV73K3Q3ZNCLS2XK6BANCNFSM4SWKUONA
.

Can you send me the error message?
Yes, I can

gcc (Ubuntu 11-20210112-0ubuntu2) 11.0.0 20210112 (experimental) [master revision 1aff68d54c3:d081f4833df:248feb2fa2c0dfc8950566010b30351879c9d057]
$ cmake --build . Scanning dependencies of target 5_modules src/5_modules/merchant.cpp:3:1: error: global module fragment contents must be from preprocessor inclusion     3 | export module       | ^~~~~~ src/5_modules/merchant.cpp:3:1: error: ‘export’ may only occur after a module interface declaration src/5_modules/merchant.cpp:3:8: error: ‘module’ does not name a type     3 | export module       |        ^~~~~~ src/5_modules/merchant.cpp:3:8: note: ‘module’ was not recognized as a module control-line src/5_modules/merchant.cpp:6:1: error: ‘export’ may only occur after a module interface declaration     6 | export struct Merchant {       | ^~~~~~ In module imported at src/5_modules/store.cpp:11:8: merchant: error: failed to read compiled module: No such file or directory merchant: note: compiled module file is ‘gcm.cache/merchant.gcm’ merchant: note: imports must be built before being imported merchant: fatal error: returning to the gate for a mechanical issue compilation terminated. In module imported at src/5_modules/main.cpp:11:1: store: error: failed to read compiled module: No such file or directory store: note: compiled module file is ‘gcm.cache/store.gcm’ store: note: imports must be built before being imported store: fatal error: returning to the gate for a mechanical issue compilation terminated. gmake[2]: *** [CMakeFiles/5_modules.dir/build.make:76: CMakeFiles/5_modules] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/5_modules.dir/all] Error 2 gmake: *** [Makefile:103: all] Error 2

Can you send me the error message?
Yes, I can

gcc (Ubuntu 11-20210112-0ubuntu2) 11.0.0 20210112 (experimental) [master revision 1aff68d54c3:d081f4833df:248feb2fa2c0dfc8950566010b30351879c9d057]
$ cmake --build . Scanning dependencies of target 5_modules src/5_modules/merchant.cpp:3:1: error: global module fragment contents must be from preprocessor inclusion     3 | export module       | ^~~~~~ src/5_modules/merchant.cpp:3:1: error: ‘export’ may only occur after a module interface declaration src/5_modules/merchant.cpp:3:8: error: ‘module’ does not name a type     3 | export module       |        ^~~~~~ src/5_modules/merchant.cpp:3:8: note: ‘module’ was not recognized as a module control-line src/5_modules/merchant.cpp:6:1: error: ‘export’ may only occur after a module interface declaration     6 | export struct Merchant {       | ^~~~~~ In module imported at src/5_modules/store.cpp:11:8: merchant: error: failed to read compiled module: No such file or directory merchant: note: compiled module file is ‘gcm.cache/merchant.gcm’ merchant: note: imports must be built before being imported merchant: fatal error: returning to the gate for a mechanical issue compilation terminated. In module imported at src/5_modules/main.cpp:11:1: store: error: failed to read compiled module: No such file or directory store: note: compiled module file is ‘gcm.cache/store.gcm’ store: note: imports must be built before being imported store: fatal error: returning to the gate for a mechanical issue compilation terminated. gmake[2]: *** [CMakeFiles/5_modules.dir/build.make:76: CMakeFiles/5_modules] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/5_modules.dir/all] Error 2 gmake: *** [Makefile:103: all] Error 2

Looks like a compiler bug that showed up when the code was formatted. I pushed d807cf5 to fix this. Try compiling now.

Looks like a compiler bug that showed up when the code was formatted. I pushed d807cf5 to fix this. Try compiling now.

Much better now:) The code has been compiled successfully. But executing 5_modules caused its crash.
Segmentation fault (core dumped)

Much better now:) The code has been compiled successfully. But executing 5_modules caused its crash.
Segmentation fault (core dumped)

It seems GCC 11 is unstable. It often returns something like this when I change code.
free(): invalid pointer malloc(): unaligned tcache chunk detected c++: internal compiler error: Aborted signal terminated program cc1plus Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-11/README.Bugs> for instructions. gmake[2]: *** [CMakeFiles/5_modules.dir/build.make:76: CMakeFiles/5_modules] Error 4 gmake[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/5_modules.dir/all] Error 2 gmake: *** [Makefile:103: all] Error 2
This function "Stores get_favorite_stores_for(const CustomerId &customer_id) {" crashes 5_modules.
.date_added = system_clock::now() - 1h, .date_added = system_clock::now() - 12min,
Segmentation fault (core dumped)
I removed 1h and 12min and the application worked that's so strange.
.date_added = system_clock::now(), .date_added = system_clock::now(),
name: Handmade painted ceramic bowls, photo_url: http://example.com/beautiful_bowl.png, description: Hand-crafted and hand-decorated bowls made of fired clay, price: 1.230000, date_added: Thu Jan 21 09:58:09 2021 +03, featured: 1
name: Oscypek, photo_url: missing, description: Tasty smoked cheese from the Tatra mountains, price: 1.230000, date_added: Thu Jan 21 09:58:09 2021 +03, featured: 1

It seems GCC 11 is unstable. It often returns something like this when I change code.
free(): invalid pointer malloc(): unaligned tcache chunk detected c++: internal compiler error: Aborted signal terminated program cc1plus Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-11/README.Bugs> for instructions. gmake[2]: *** [CMakeFiles/5_modules.dir/build.make:76: CMakeFiles/5_modules] Error 4 gmake[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/5_modules.dir/all] Error 2 gmake: *** [Makefile:103: all] Error 2
This function "Stores get_favorite_stores_for(const CustomerId &customer_id) {" crashes 5_modules.
.date_added = system_clock::now() - 1h, .date_added = system_clock::now() - 12min,
Segmentation fault (core dumped)
I removed 1h and 12min and the application worked that's so strange.
.date_added = system_clock::now(), .date_added = system_clock::now(),
name: Handmade painted ceramic bowls, photo_url: http://example.com/beautiful_bowl.png, description: Hand-crafted and hand-decorated bowls made of fired clay, price: 1.230000, date_added: Thu Jan 21 09:58:09 2021 +03, featured: 1
name: Oscypek, photo_url: missing, description: Tasty smoked cheese from the Tatra mountains, price: 1.230000, date_added: Thu Jan 21 09:58:09 2021 +03, featured: 1

I created a new pull request with CMakeLists

I created a new pull request with CMakeLists

See another pull request

See another pull request


Remove Party model and related uk_political_parties project, migrate data to on-leaflet fields.

Partially done in #301 remaining work moved to https://github.com/DemocracyClub/electionleaflets/issues/302


Live stream "NDR" channels do not work

Which channel does not work correctly?

NDR Hamburg
NDR Mecklenburg-Vorpommern
NDR Niedersachsen
NDR Schleswig-Holstein

What is the problem?

[ ] does not load at all
[ ] shows always the same looping content
[ ] performance problem (stuttering or other)
[X] other problem (add description)

In the "Live" tab, the program title of "NDR Niedersachsen" is displayed for all NDR regional programs, even if another special regional television program is running at the same time.

As far as I can see, NDR is broadcasting the same content (NDR Niedersachsen) for all four states: https://www.ndr.de/fernsehen/livestream/ Maybe NDR is delivering the worldwide version of their stream (see https://www.ndr.de/mediathek/hilfe/Fernseh-Livestream-Fragen-und-Antworten,livestreamfaq100.html), but I don't know why this should be the case.
Does anybody see different (regional) content on the four NDR channels?

From 18:00 to 18:15 and from 19:30 to 20:00, NDR television broadcasts regional programs in regional windows.[^1]

The NDR offers a total of 5 different streams:

NDR Fernsehen Niedersachsen[^2]
NDR Fernsehen Hamburg[^2]
NDR Fernsehen Schleswig-Holstein[^2]
NDR Fernsehen Mecklenburg-Western Pomerania[^2]
NDR Fernsehen: Worldwide Livestream[^2]

I will try to take screenshots in the time slots as soon as possible.
[^1]: Page "NDR Fernsehen". In: Wikipedia - The free encyclopedia. Edit status: July 15, 2024, 14:58 UTC. URL: https://de.wikipedia.org/w/index.php?title=NDR_Fernsehen&oldid=246782490 (Retrieved: August 11, 2024, 11:23 UTC)
[^2]: Page "Livestream NDR Fernsehen: Fragen und Antworten | NDR.de - Mediathek - Hilfe"
URL: https://www.ndr.de/mediathek/hilfe/Fernseh-Livestream-Fragen-und-Antworten,livestreamfaq100.html Retrieved: August 11, 2024, 11:27 UTC)

I will try to take screenshots in the time slots as soon as possible.

I thought I watched a regional program this morning - but maybe it wasn't supposed to be.

I will try to take screenshots in the time slots as soon as possible.

I thought I watched a regional program this morning - but maybe it wasn't supposed to be.

In the mornings and on certain days of the week also at night, NDR repeats the 7:30 p.m. shows of all state programs of Norddeutscher Rundfunk and Radio Bremen one after the other, regardless of which station the viewer has chosen.

Contrary to the title display in the program overview in the "Live" tab, the following programs are actually being streamed at the time of the screenshots:

NDR Fernsehen Hamburg: Hamburg Journal 18:00
NDR Fernsehen Mecklenburg-Western Pomerania: Nordmagazin - Land und Leute
NDR Fernsehen Niedersachsen: Niedersachsen 18:00
NDR Fernsehen Schleswig-Holstein: Schleswig-Holstein 18:00

Thank you very much for verifying!
I'll move this issue to Zapp-Backend, because the channels urls are correct, but the program information is not. However, I am not sure if I can find the correct program information anywhere on the web (and machine readable on top).


sympy=1.0 requirement is blocking the upgrade to kwant 1.4

It would be great to use the new version of Kwant, there are some cool new features and parameter substitution became much faster.

Resolved by https://github.com/microsoft/qmt/pull/127


error installing kadot

pip install kadot
Collecting kadot
Using cached Kadot-0.1.6.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\Saumya\AppData\Local\Temp\pip-build-jx_xqoci\kadot\setup.py", line 8, in
long_description= open('README', 'r').read(),
File "C:\Users\Saumya\Anaconda3\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 2094: character maps to
----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in C:\Users\Saumya\AppData\Local\Temp\pip-build-jx_xqoci\kadot\

This is an encoding issue due to Windows. I will see how to solve that. 😉

I just submit a patch on Pypi (called 0.1.6b), can you try it ?

yes sure, in a minute.

in a minute. I closed the issue by mistake.

pip install kadot
Collecting kadot
Using cached Kadot-0.1.6.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\Saumya\AppData\Local\Temp\pip-build-wcg20grw\kadot\setup.py", line 8, in
long_description= open('README', 'r').read(),
File "C:\Users\Saumya\Anaconda3\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 2094: character maps to
----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in C:\Users\Saumya\AppData\Local\Temp\pip-build-wcg20grw\kadot\

oh wait, it works fine. But not through pip. I had to manually download, unzip and "python setup.py install" it.. Thanks a lot.

Perfect.
The problem was that Pypi doesn't support my version naming and consider the non-patched version like the latest. The successful command is pip install kadot=0.1.6b. This problem will be automatically patched when I will release 0.1.7.


Fixing RefreshOffsetScheduler was not started after restored from checkpointing

Current coverage is 75.58%

Merging #386 into master will increase coverage by +0.24% as of ed8f340

@@            master    #386   diff @@
======================================
  Files           46      46
  Stmts         4689    4689
  Branches       419     419
  Methods
======================================
+ Hit           3533    3544    +11
- Partial        179     180     +1
+ Missed         977     965    -12

Review entire Coverage Diff as of ed8f340

Powered by Codecov. Updated on successful CI builds.

LGTM


resin-image: Add usbutils package

Add usbutils package to aid debugging.
Change-type: minor
Changelog-entry: Add usbutils package
Signed-off-by: Will Newton<EMAIL_ADDRESS>

Shall we consider this change as minor?

@floion yes you're right, patch is more appropriate (just starting to properly understand versionbot!)


ARC: unable to induce kernel_oops or stack check fail errors from user mode

Steps to reproduce:
Pull https://github.com/zephyrproject-rtos/zephyr/pull/17589
And run tests/kernel/mem_protect/userspace
All cases need to succeed.
Right now, calling z_arch_except() from user mode results in an EV_PrivilegeV error.
The result is that the wrong error reason is reported.

Fixed by PR #18079


"Can't modify frozen string" error if working with ActiveSupport::HashWithIndifferentAccess

As I understand, ActiveSupport::HashWithIndifferentAccess after merging it with a regular Hash has all it's String keys frozen, and your gem is trying to modify a key if it is a String.
You should work with copies of those string keys, and do not try to modify them in place. Didn't you heard about pure functions? :)

Feel free to send a PR as many have already contributing to the usefulness of the gem.


Fix alias serialization for MongoDB

Fixes #1427 + add junit tests:
When querying for QFood.food.as(QFish.class).breed.eq("unknown")
I expect to see { "name" : "f1" , "breed" : "unknown"}
rather than { "name" : "f1" , "food.breed" : "unknown"}
Note this is my first commit on querydsl, so I hope I have a correct understanding of what "PathType.DELEGATE" is and how it should be interpreted.

Thanks a lot for the PR! In pull request commit messages it's not necessary to refer to the issue.
But the PR description should contain Fixes #1427, and the PR title could be something like Fix alias serialization for MongoDB.

Ok I renamed the PR

@johnktims @Shredder121 This looks ok to me. How about you?

Yes, looks good to me as well.

Looks fine to me. Thanks for the PR, @jotak !

Thanks for merging! sure i'll open another PR


Failed to start MI Debugger: pid or remoteDebugger is mandatory

launch.json has:
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "gdb",
            "request": "attach",
            "name": "attach me",
            "target": ":12345",
            "remote": true,
            "gdbpath": "d:\\msys64\\mingw64\\bin\\gdb-multiarch.exe",
        },
    ]
}

BTW: is it correct to set the "target": "extended-remote :12345" as seen in a different issue if I want to use extended-remote?

yes target: extended-remote can be used
You can see the special case here: https://github.com/WebFreak001/code-debug/blob/5151db04ee78063637cf273c1c1a75450a3cfc5e/src/backend/mi2/mi2.ts#L215

BTW: is it correct to set the "target": "extended-remote :12345" as seen in a different issue if I want to use extended-remote?

What worked for me:

"remote": false
pid must be specified by autorun script.. Because you can't specify it for target that starts with extended-remote.

Would it make sense to possibly add separate config options for launch.json , such as:

"extended-remote": true
"processId": 12345 or "pid": 12345

?
This is the config that worked for me for extended-remote use-case:
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "gdb",
            "request": "attach",
            "executable": "GdbSample",
            "cwd": "${workspaceFolder}/../../Install/Debug/Target-aarch64-xxxxx-linux-gnu/bin/",
            "name": "(gdb) Attach to Target",
            "target": "extended-remote <IP_ADDRESS>:2345",
            "remote": false,
            "gdbpath": "C:/msys64/mingw64/bin/gdb-multiarch.exe",
            "printCalls": true,
            "valuesFormatting": "parseText",
            "showDevDebugOutput": true,
            "autorun": [
                "attach 12345"
            ]
        }
    ]
}

Documentation was updated, inconsistencies handled with #330.


Optimization deleting declared dependencies is wrong

I noticed that your tool is removing dependencies if they are not referenced. This is wrong, take for example :
define('SCA.Shopping.Starter', ['A','B','C'], function(A) {
var theRestOfArgs = Array.prototype.slice.call(arguments, 1);
});
is transformed into:
SCAShoppingStarter = function (A) {
var theRestOfArgs = Array.prototype.slice.call(arguments, 1);
}(A);
This is not equivalent to requirejs where the variable theRestOfArgs contains [B, C] and in amdclean transformed code will be empty.
You shouln't perform this optimization or perform it only if the arguments name is not used inj the callback.
Good tool!! congrats and thanks!

Okay, I can look into making sure the params are passed.  Thanks for reporting this!

I need this fix urgently so I hope I can send you a pull request soon. Thanks

I can get a new release by Monday, if that works for you

oh, by monday is more than fine for me, thanks! very appreciated.
That's what i'm doing right now (listing all deps), but the thing is that I cannot release my code with that.
BTW, I think I've fixed the problem unfortunately I feel kind of dirty: in convertToFunctionExpression.js#255 y just added this fragment:
var callbackBody = amdclean.options.code.substring(callbackFunc.body.range[0], callbackFunc.body.range[1]);
if(/[^\w0-9_]arguments[^\w0-9_]/.test(callbackBody))
{
cbParams = dependencyNames;
}
This fix is working for me, but I'm afraid I've broken other use cases and certainly it breaks the unit tests :(

Don't worry about it, I'll take care of it this weekend

Thank you man, and congrats again for you code now that i've seen it!

Hi, I'm sorry to put this in this issue, but I have to mention it.
I've noticed that in README you mention that the gain is only in file size. So after using amdclean I was waiting to see smaller files but the real gain for us was CPU time wasted on dependency calculation - more visible in big projects and small devices.
I put some notes here http://themysteriesofjavascript.blogspot.com/2015/03/amdclean-not-documented-feature.html .
I recommend you to mention that in your README. I can share some profiling charts comparing this if you want. Regards.

@cancerberoSgx That's a really good point about eliminating the need for dependency resolution.  I would love to see your profiling charts.
Also, one of the reasons I originally built AMDclean was because I was writing a lot of JavaScript libraries, and wanted to use a module system without having to leave behind any trace of other third-party code (e.g. Browserify).  This is why the file size and readability is presented as a big pro.

I was testing @cancerberoSgx solution and one thing I found was that the mix of declared arguments and omited argumets may results in issues,
Take this code for instance:
define('a', function () {
'use strict';
return {};
});
define('b.tpl', function () {
'use strict';
return 'this is a test';
});
define('c', function () {
'use strict';
return {};
});
define('c', ['a', 'b.tpl', 'c'], function(a, b_tpl)
{
'use strict';
a;
b_tpl;
arguments;

});
"b_tpl" wil be replaced by "btpl",
I modified it a bit and now it does keep named ones and adds the others:
  var callbackBody = callbackFunc.body ? amdclean.options.code.substring(callbackFunc.body.range[0], callbackFunc.body.range[1]) : '';
  if (/[^\w0-9_]arguments[^\w0-9_]/.test(callbackBody)) {
    cbParams = cbParams.concat(dependencyNames.slice(cbParams.length));
  }

Other thing I found with this solution is that arguments may not be refering to the modules arguments but to some inner function arguments, I didnot solve that one tho :(
BTW, This is awesome code @gfranko, thanks for it!!!

I've just tested the fix from @juansilva and it works fine. Even unit tests pass OK.
I will try to solve the 'false positive' when an inner function uses 'arguments'. It is not a big problem but it would be perfect.
Will try to add unit tests for this issue and make a pull request since we need this issue to be solved urgently. Thanks.

added fix for this issue in https://github.com/gfranko/amdclean/pull/84/files . checking for 'false positives' while referencing 'arguments' from inside inner functions. Unit tests made.

Just to let you now that I've added some cpu profiling charts to my blog regarding gains in dependency resolution speed using big applications and slow devices: http://themysteriesofjavascript.blogspot.com/2015/03/amdclean-not-documented-feature.html .
BTW: do you have any news about this issue? Was the pull request good enough ?

@cancerberoSgx I just merged your pull request and released 2.5.0.  Also, would you mind sending a separate PR with updating the README with your performance findings about AMDclean?


[Feature] : Singin & signup theme adoption

What feature?

In i will change the light mode to dark the signin form cannot proper active theme.
If i will except for the mode can be changed form also adoptive theme like dark or light.

Add screenshots
Expert

In original

Record

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I agree to follow this project's Code of Conduct
[X] I want to work on this issue

Go ahead @sivaprasath2004


Add privacy policy for play store

Draft is here: https://github.com/resolvetosavelives/redapp/blob/add-privacy-policy/privacy-policy.md
We need to edit this, and merge into master. If there is a better place for the privacy policy (ex: website), we should put it there.
We can't release apps on the play store without a privacy policy.

The privacy policy is up on the simple.org. https://www.simple.org/privacy/

@dburka This is updated on the play store now. Thanks!


Add "is prepared" logic to taskmodule

An is_prepared attribute should signal the status of a taskmodule. Once prepare has been called is_prepared should be set to true, similarly when loaded with from_pretrained. A call to prepare when a taskmodule is already prepared should result in an exception.

This is implemented in #248.


Support for Displaying Multiple Timezones

Clear and concise description of the problem
Currently, it is only possible to show one column of times on the left-hand side of the calendar. That means you can't show 2 timezones at the same time. If two timezones could be shown, the "primary" timezone would still be the one that events line up with, while the secondary timezone would just be for visibility. I've included a screenshot as an example below.
Suggested solution
I don't know the internals of the package too well, but it seems that adding an optional secondary TimeGutter to TimeGrid along with a small change to TimeGutterHeader would enable this functionality.
Overriding the TimeGutterWrapper provides some flexibility, but the handling of how the values for that column are generated is not customizable from outside of the calendar.
Alternative
We have managed to get a proof-of-concept working by overriding TimeGutterWrapper, deep-copying the children rendered in the column, and changing the dates in the copy such that they are offset for the secondary timezone. This works but is quite hacky. The result can be seen in the screenshot below.
Additional context

Validations

[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Would you like to open a PR for this feature?

[ ] I'm willing to open a PR

Will be helpful to have a custom time gutter component instead of a wrapper.

Any updates on this? Really looking forward to this feature


Embroider Compatibility

Keeping track of tasks for getting this to work with embroider:
atm, when only having *.gjs files, and running with embroider, the ember-template-imports addon cannot be found:
Build Error (PackagerRunner) in components/switch.js

Module not found: Error: Can't resolve 'ember-template-imports' in '$TMPDIR/embroider/70b3f0/components'

This occurred in a file that had:
import { hbs } from 'ember-template-imports';

I'm also hitting this error even just using plain .js files with no .gjs at all 🤔

cc. @rwjblue – I'm happy to dig in and help get this sorted, as getting this working for our app is basically one of two things Up Next For Me™ this quarter.

One tip for someone who wants to work on this:
This package will need a babel plugin that rewrites from the specific template-imports formats to JS containing precompileTemplate. When you want to get the precompileTemplate function, use https://github.com/ef4/babel-import-util/. There are examples of how to use it here as well as a couple spots within embroider itself. It takes care of some otherwise tricky minutiae in telling babel to update its bindings so that this babel plugin will compose correctly with the others.

@dfreeman, I believe we can mark this as closed now? 🎉

Yes!


Forcing edge labels to avoid nodes

Hi Team,
I currently have a network implementation that shows organisational structure.  It is working well with the main settings being that nodes are fixed position with physics disabled at the node level, physics is on at the tree level for lines and it's set to use the 'barnesHut' resolver in default configuration.
We have recently developed a feature that adds new edges to the network (temporarily) to show the user a specific piece of information.  These additional edges are drawn with the following configuration:
{
    id: uuid(),
    from: //node id,
    to: //node id,
    label: 'node specific label',
    arrows: {
        to: {
            enabled: true,
            scaleFactor: 0.75
        },
        from: false
    },
    smooth: {
        enabled: true,
        type: 'horizontal'
    },
    width: 2,
    color: {
        color: '#f725e2',
        highlight: '#f725e2',
        opacity: 1
    },
    dashes: true,
    physics: true
}

The key difference is that these lines are drawn with the smooth setting as it gives a better overall look to the way they are drawn.  The labels on these lines will often print under an existing node, which we've noticed is fairly standard for fixed position nodes, however the issue here is that the labels are the import piece of user information we are attempting to show. In this use case it is not appropriate for the user to re-position the nodes as this feature is essentially an informational overlay on a fixed position network.
Is there a way to force the labels to avoid nodes given that physics is applied to the edges? Have we configured something incorrectly? If not I guess this is a feature request to allow some config that will force the labels to be printed in a visible position favouring the centre of the edge.
Thanks for any assistance you can provide.

In addition to the above - if the physics based avoidance is not possible at this time the other alternative would be to provide a method that returns the edge object (by edge id) containing the centre point coordinates for the edge. This would allow custom labels to be printed onto the edges and solve the issue of essentially z-index.


Update Kubernetes-in-Kubernetes example

Make it work with current kubeadm

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

examples/README.md, line 44 at r1 (raw file):

Watch progress of the cluster setup via the VM console:

bash

examples/README.md, line 50 at r1 (raw file):

After it's complete you can log into the master node:

bash

examples/README.md, line 62 at r1 (raw file):

kubectl get pods --all-namespaces -o wide -w
# Press Ctrl-C when all the pods are ready

bash

Comments from Reviewable

Review status: all files reviewed at latest revision, 3 unresolved discussions.

Comments from Reviewable

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 3 unresolved discussions, all commit checks successful.

Comments from Reviewable


Log format is inconsistent when using HashiCorp raft

Log format is inconsistent, making it harder to parse logs
I0424 14:40:59     1 masterclient.go:155] master: <IP_ADDRESS>:9433 masterClient adds volume 1
I0424 14:40:59     1 masterclient.go:176] + master <IP_ADDRESS>:9333 leader:false
2022-04-24T14:40:59.874Z [WARN]  raft: heartbeat timeout reached, starting election: last-leader-addr= last-leader-id=
2022-04-24T14:41:10.496Z [WARN]  raft: Election timeout reached, restarting election
2022-04-24T14:41:12.127Z [WARN]  raft: failed to get previous log: previous-index=28 last-index=27 error="log not found"
I0424 14:41:12     1 masterclient.go:178] - filer <IP_ADDRESS>:9533 leader:true
I0424 14:41:12     1 raft_server.go:82] max volume id 0 ==> 1
I0424 14:41:12     1 raft_server.go:82] max volume id 1 ==> 2
I0424 14:41:12     1 raft_server.go:82] max volume id 2 ==> 3

I've noticed it only on seaweedfs master. Perhaps the log that is using RFC3339Nano timestamp is produced by hashicorp raft library?

I just want to say that the RFC3339 format is definitely nicer than what it is now.


SBT doesn't resolve this

Hi,
I don't see that this is published in mavenrepository - can you please provide information on the resolver setup in SBT to use?
Thanks

This project is not published on maven central but on github directly, you need to add Conduktor Github maven registry in resolver list like
in SBT
resolvers += s"GitHub Conduktor Apache Maven Packages" at s"https://maven.pkg.github.com/conduktor/_/"

in maven
    <repositories>
        <repository>
            <id>github</id>
            <name>GitHub Conduktor Apache Maven Packages</name>
            <url>https://maven.pkg.github.com/conduktor/_/</url>
        </repository>
    </repositories>

Will add them to the README, thanks for noticing this.


Is it possible to disable chakra global styles?

We use RSI in an app that uses MUI for the rest of it's styling. This seems to work almost fine, except there are some global chakra styles that leak when rendering RSI which in turn impact our app styles (thinks like body font size, and some spacing get's messed up).
I've seen that chakra has a "disableGlobalStyles" prop that can be passed to the provider which the documentation suggests would avoid this sort of leak, so I'm wondering if there's a way this can be done with RSI?
I have tried to wrap RSI with a ChakraProvider with the said prop but it didn't have any impact. I'm wondering if there's any other ways to do this that anyone would know of, or if we could pass props that could be set specifically in the provider?
Thanks very much!

Hey @thenano, thanks for bringing this up, we can expose this flag if it would be helpful. PRs are welcome!

Thanks for the reply @masiulis! I had an initial hack at adding those flags to the provider and it didn't solve my problem, and also seemed to impact RSI styles negatively. I'll try and have a deeper look into it and report back.

@thenano Any luck on finding a way to disable the global styles? Otherwise, going to dive into myself and will post my findings

Hey @schembor I have managed to disable the global styles and cssRest by passing disableGlobalStyle: true, resetCss: false to both of the ChakraProvider s in the Providers component (not sure why there are 2 ChakraProvider).
This does fix the problem that I had, but it also messes up RSI styles which I think relies on some of the resets.
I did some further research and apparently it's possible to add an in place <CSSReset/> from chakra, but I haven't had a chance to test this out. Some discussion about it here: https://github.com/chakra-ui/chakra-ui/issues/2802#issuecomment-1186287297
Thanks!

Hey @schembor @thenano I didn't realise chakra was polluting global scope without a way to avoid it, that's pretty bad. We can definitely disable the global overrides and add our own.
From the comment:
1.) disableGlobalStyle - we do have table styles defined as global theme, so we cannot enable this flag. (We are planning to change table implementation in v5, but it doesn't fix the current problem)
2.) delete theme.styles.global - If we can do this before applying table styles, then we could delete just the defaults and keep the table styles. I have not checked what is in the default theme.styles.global though.
3.) resetCSS - this one should be enabled and we should copy https://github.com/chakra-ui/chakra-ui/blob/main/packages/components/css-reset/src/css-reset.tsx into our component with global styles fixed into this project until chakra fixes this.
4.) cssVarsRoot - this one should be added and we should use it in our forked code.
So what I think should be done is add resetCSS and cssVarsRoot, copy the /css-reset.tsx into this project, and fix the global styles. I can't promise when I would have time to do this, so PRs would be very much appreciated.

Would love to see this change implemented!
FWIW conditionally rendering the import hides the worst of the damage.  You can still see the style changing in the background when the modal opens however.
if (isOpen) {
  return <ReactSpreadsheetImport isOpen {...props} />

I have also use MUI for application styling. want to use this library for spreadsheets import. Can i use this without installing Chakra UI packages ?

Bumping this--are there still any plans to get a proper fix live?


[AutoPR compute/resource-manager] Add hyperVGeneration enum property to ImageProperties

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5740

This PR has been merged into https://github.com/Azure/azure-sdk-for-js/pull/2455


Fix Repackaging Configuration in the the DirectRunner

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Repackage the actually generated model classes rather than the previous
namespace.


Service Worker Invalidation

With 482c69287a9e1570eb535519449620715e00ac0b the base for service worker was implemented.
It caches the header and footer to serve it offline. But it combines it always with the content from the server for routes.
If the page updates this can become out of sync and needs to be invalidated. This is the proposal for a process regarding that:
Implement a versioning system, e.g. based on commit hashes. The server and the worker needs to be aware of its versions.
When a worker is registered and fetch is triggered, the route content is requested from the server.
The service worker should send its version to the server.

If the version of the client and the server match, the process can go on like now.
If the version of the client and the server do not match, we should invalidate the content.

In case the server version does not match, it should return a 205 status code instead of 200 to indicate the mismatch.
The service worker should in this case not respect the response of the server but just render footer and header. It should also inform the client JavaScript to not hydrate the application, as the DOM is not complete, but render to string.
The application should now work as expected with the old version cached in the client. Anyhow, it could fail at any point.
In this case, the client should listen to

All error events
route change events

If an error appears, the client should trigger a reload which should serve the application with it's latest version.
If a route change is triggered, the client should do a full-page reload instead of client-side navigation to receive the latest version from the server.
PS: Maybe it is worth delaying the sending of the cached header/ footer by ~50 ms. In case the user has a fast network connection and receives a response from the server in time with the information that it is outdated, we could even skip shipping the old version and request the new header and footer immediately, shipping it with the just requested page content.

Implemented with 147d9543d7133e2f10da38a0842954c340becbff and dc3e2607c6bf97132c724201b3dd21469d25e2d3.


Windows Defender SmartScreen blocks setup.exe

First time seeing this on my computer. I know your software is not anything malicious. Just wanted to open an issue because I have not found another one similar to this or anything related to it in your readme file. So yeah just in case other people run into this, they will see I already reported it!
Keep up the good work!
NoFailer
Version used: 0.6.5
File used: poe-overlay-Setup-0.6.5.exe

This is okay. My executables are signed using a Code Signing Certificate. Currently my certificate is not trusted by SmartScreen. Therefore you'll get the following pop-up.

Once my certificate is trusted by SmartScreen (this takes a while...) the warning will go away. To skip it -> click on "More Info":

Run anyway. But make sure the Publisher is "Nicklas Ronge". This ensures i've signed this executables and no one could altered it.

Thank you very much for the quick answer!


Link error under RHEL7 with ATS 9.1.1 and jemalloc.

@randall -- We had an issue with the linker when building ATS 9.1.1 under RHEL7. I had no problems with my development box, which is Ubuntu 20.04 LTS, but our build environment is still RHEL7 with the newer compiler installed. The problem was fixed when I reverted #8285 in our internal branch. We had previously built 9.0.2 and 9.1.0 with no issues as well. Any ideas?
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /root/trafficserver-9.1.1/src/tscore/.libs/libtscore.so: undefined reference to symbol '_ZdlPv'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/jemalloc521/lib/libjemalloc.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Can you see if https://github.com/apache/trafficserver/pull/8492 fixes things for you?

No, I cannot due to merge conflicts. This is because #8492 depends upon #8048, which is only in the 9.2.x branch or later. The possibility of #8492 was mentioned to my colleague on the slack channel earlier, but it seems to be a different issue since that issue was introduced in 9.2.x according to that issue's reporter in #8490.

Sorry about that. I'll rollback the change.

@pbchou When you get a chance, can you try #8533 ?

@randall -- We tested your PR #8533 against 9.1.x in our RHEL7 build environment. It was able to be built successfully.
@bryancall  -- By the way, do we still have RHEL7 in our CI environment? I understand it is getting old.


false Positive from manifest_whitespace_opening_bracket_before

I am using puppet-lint-manifest_whitespace-check (0.1.17).
I have Puppet-Code indented with two Space-Characters like this:
  [
    'a',
    'b',
  ].each |$i| { }

And I get:
ERROR: there should be a single space before an opening bracket on line 1 (check: manifest_whitespace_opening_bracket_before)

I consider this as a false Positive.

Additional problem: when using auto-fix, this gets "corrected" by appending the opening bracket to the end of the preceding non-empty line, so that:
include my::class

[
  'a',
  'b',
].each |$i| {}

gets corrected to:
include my::class [
  'a',
  'b',
].each |$i| {}

...which is a bit of a problem.

I believe this is corrected in the master branch

(and now in v0.2.1)


Giant negative movement numbers in 5E 1.2.0, 0.7.8

For most of my actors, there are no issues but this particular actor is having massive constantly increasing negative numbers for all speeds anytime the actor's inventory is changed. The effects keep multiplying in that user and they cannot be deleted.
Export of the 5E actor: https://we.tl/t-Oqq6jmEfe6

I have the same issue in 0.7.9; the "lightly encumbered" and "heavily encumbered" effects keep getting added and never removed, so I end up with tens of stacked "encumbered" effects.

I have the same issue in 0.7.9; the "lightly encumbered" and "heavily encumbered" effects keep getting added and never removed, so I end up with tens of stacked "encumbered" effects.

Known issue with the current implementation. I'm working on a fix but the holidays have kept me busy unfortunately.

Known issue with the current implementation. I'm working on a fix but the holidays have kept me busy unfortunately.

I've confirmed that this is a race condition caused when there are multiple clients open at the same time (which happens when there are multiple users logged in).
When an item is updated or added/removed, all clients simultaneously attempt to set the encumbrance, which causes them to stack. Because the current logic removes all previous effects and then adds its own, the stacking always happens whenever there are multiple clients open.
I attempted to fix this by updating the first found existing effect instead, but that does not solve the race condition that occurs when multiple clients try to create the effect at the same time, for the first time, or when switching between unencumbered and encumbered.
@VanirDev do you want to have a chat about how to solve this? I'm happy to have a stab at it on my own, but I'm new to Foundry development and you may have some insight that I don't. Contact me at<EMAIL_ADDRESS>if you're interested, otherwise I'll open another pull request once I've got a solution.

I've confirmed that this is a race condition caused when there are multiple clients open at the same time (which happens when there are multiple users logged in).
When an item is updated or added/removed, all clients simultaneously attempt to set the encumbrance, which causes them to stack. Because the current logic removes all previous effects and then adds its own, the stacking always happens whenever there are multiple clients open.
I attempted to fix this by updating the first found existing effect instead, but that does not solve the race condition that occurs when multiple clients try to create the effect at the same time, for the first time, or when switching between unencumbered and encumbered.
@VanirDev do you want to have a chat about how to solve this? I'm happy to have a stab at it on my own, but I'm new to Foundry development and you may have some insight that I don't. Contact me at<EMAIL_ADDRESS>if you're interested, otherwise I'll open another pull request once I've got a solution.

I've got a solution, and will be raising a pull request early this week once I've cleaned up my code.

I've got a solution, and will be raising a pull request early this week once I've cleaned up my code.

I've got a solution, and will be raising a pull request early this week once I've cleaned up my code.

Great work! I'd love to see how you resolved the race condition. I've been frustratingly trying to find a way to execute code from the server's perspective instead of on a per-client basis, alas that doesn't seem possible.

I've got a solution, and will be raising a pull request early this week once I've cleaned up my code.

Great work! I'd love to see how you resolved the race condition. I've been frustratingly trying to find a way to execute code from the server's perspective instead of on a per-client basis, alas that doesn't seem possible.

I've confirmed that this is a race condition caused when there are multiple clients open at the same time (which happens when there are multiple users logged in).
When an item is updated or added/removed, all clients simultaneously attempt to set the encumbrance, which causes them to stack. Because the current logic removes all previous effects and then adds its own, the stacking always happens whenever there are multiple clients open.

This is the same behaviour that is causing the error notifications that people are seeing, as when a client doesn't have permission to update the actor, it'll attempt to do so anyway and produce the error.

I've confirmed that this is a race condition caused when there are multiple clients open at the same time (which happens when there are multiple users logged in).
When an item is updated or added/removed, all clients simultaneously attempt to set the encumbrance, which causes them to stack. Because the current logic removes all previous effects and then adds its own, the stacking always happens whenever there are multiple clients open.

This is the same behaviour that is causing the error notifications that people are seeing, as when a client doesn't have permission to update the actor, it'll attempt to do so anyway and produce the error.

PR is open; I've got a game tomorrow night where I will be testing this.

PR is open; I've got a game tomorrow night where I will be testing this.

PR is open; I've got a game tomorrow night where I will be testing this.

Thanks for this, I'll review it tomorrow when I have a chance. Let me know how your session goes, I'll probably use my own players as guinea pigs come Wednesday.

PR is open; I've got a game tomorrow night where I will be testing this.

Thanks for this, I'll review it tomorrow when I have a chance. Let me know how your session goes, I'll probably use my own players as guinea pigs come Wednesday.


Error http2 general error: protocol error: frame with invalid size

I am not sure if it relates to the lack of ALPN support or not, but forced http2 connection from hyper client to https://nghttp2.org/ causes "frame with invalid size" error. The test server supported protocols are documented here
The same error is observed when I hit the server based on Jetty HTTP 2 server.
The reproducer is the following:
[package]
name = "test_hyper"
version = "0.1.0"

[dependencies]
hyper = "0.12"
hyper-tls = "0.2.1"
pretty_env_logger = "0.2.0"

Notice the client forces http2 only.
#![deny(warnings)]
extern crate hyper;
extern crate hyper_tls;
extern crate pretty_env_logger;

use std::env;
use std::io::{self, Write};

use hyper::Client;
use hyper::rt::{self, Future, Stream};

use hyper_tls::HttpsConnector;

fn main() {
    pretty_env_logger::init();

    // Some simple CLI args requirements...
    let url = match env::args().nth(1) {
        Some(url) => url,
        None => {
            println!("Usage: client <url>");
            return;
        }
    };

    let url = url.parse::<hyper::Uri>().unwrap();
    rt::run(fetch_url(url));
}

fn fetch_url(url: hyper::Uri) -> impl Future<Item=(), Error=()> {

    let https = HttpsConnector::new(4).unwrap();
    let client = Client::builder()
        .http2_only(true)
        .build::<_, hyper::Body>(https);

    client
        // Fetch the url...
        .get(url)
        // And then, if we get a response back...
        .and_then(|res| {
            println!("Response: {}", res.status());
            println!("Headers: {:#?}", res.headers());

            // The body is a stream, and for_each returns a new Future
            // when the stream is finished, and calls the closure on
            // each chunk of the body...
            res.into_body().for_each(|chunk| {
                io::stdout().write_all(&chunk)
                    .map_err(|e| panic!("example expects stdout is open, error={}", e))
            })
        })
        // If all good, just tell the user...
        .map(|_| {
            println!("\n\nDone.");
        })
        // If there was an error, let the user know...
        .map_err(|err| {
            eprintln!("Error {}", err);
        })
}

Run as:
cargo run https://nghttp2.org/

HTTP2 over TLS must be negotiated via ALPN according to the spec, so the server might be refusing to perform the handshake.

The server does alpn negotiation according to the description. The other
server (based on jetty in java) also does alpn negotiation. I had many
clients in various languages successfully communicating with my server but
rust client does not.
On Fri, 22 Jun 2018, 05:36 Steven Fackler<EMAIL_ADDRESS>wrote:

HTTP2 over TLS must be negotiated via ALPN according to the spec, so the
server might be refusing to perform the handshake.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hyperium/hyper/issues/1574#issuecomment-399184772,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADyZVW3yipUYVgaVKNer5o87yJZG1q2vks5t-9mZgaJpZM4UxZrF
.

The client isn't using ALPN.

@sfackler what should I change in the posted reproducer code in order to make it using ALPN?

You'd have to switch to a TLS implementation that supports ALPN such as hyper-openssl, and configure it to be turned on:
extern crate openssl;
extern crate hyper;
extern crate hyper_openssl;

use hyper::client::connector::HttpConnector;
use hyper_openssl::HttpsConnector;
use openssl::ssl::{SslMethod, SslConnector};

let mut ssl = SslConnector::builder(SslMethod::tls()).unwrap();
ssl.set_alpn_protos(b"\x02h2").unwrap();
let http = HttpConnector::new(4);
let connector = HttpsConnector::with_connector(connector, ssl);

(Just tossing this in here, while it's annoying to have configure manually, there is #1485 to discuss an API to allow enabling it more automatically.)

Thanks, I will try this.

Since this seems like it's not a bug in hyper, I'm going to close. There is #1485 to track adding ALPN support to the Client.

Could you please clarify one moment? I see hyper-tls uses native-tls, which uses openssl on Linux. Is it expected that the proposed change is already supported by native-tls by default?

native-tls doesn't yet support ALPN, but I'm going to be working on adding it after cutting a new release.

@sfackler, thank you! is there a ticket for native-tls to subscribe to? how long do you think it will take?

https://github.com/sfackler/rust-native-tls/issues/49
Not sure - the implementation needs to land in schannel-rs and then we need to figure out the semantics of how it works in native-tls. Shouldn't be more than a week or two though.

I wanted to use hyper with http2_only and using rustls. So I need to turn on ALPN for rustls. Haven't found a tutorial on this. I figured it out myself, thought this could help someone:
// imports, some may be not useful.
extern crate hyper;
extern crate hyper_rustls;
extern crate rustls;
extern crate webpki_roots;

use hyper::client::HttpConnector;
use hyper::header::HeaderValue;
use hyper::rt::{self, Future, Stream};
use hyper::{Body, Client, Method, Request};
use hyper_rustls::HttpsConnector;
use rustls::ClientConfig;
use std::io::{self, Write};

        let mut http = HttpConnector::new(2);
        http.enforce_http(false);
        let mut config = ClientConfig::new();
        config.set_protocols(&["h2".into()]);
        config
            .root_store
            .add_server_trust_anchors(&webpki_roots::TLS_SERVER_ROOTS);
        let https: HttpsConnector<HttpConnector> = (http, config).into();
        let client = Client::builder()
            .keep_alive(true)
            .keep_alive_timeout(None)
            .http2_only(true)
            .build::<_, hyper::Body>(https);


Bundler doesn't appear to tell worker where to look for bundled file

Bug report

What is the current behavior?
I have a worker which imports a local js file using the self.importScripts() syntax, however when I try to trigger it, I receive a 404 error in the browser console. The 404 due to the worker trying to read the path provided in my code, rather than a bundled version (specifically it looks for http://localhost:8081/maths/decomposition.js). This leads me to believe that when the project is bundled, it does not update the path in the self.importScripts() function.
The worker code is as follows:
self.onmessage = function ({data: question}) {
    console.debug("decomposer called");
    self.importScripts("../../maths/decomposition.js");
    let decomposer = new Decomposition(
        question.dataset1,
        question.dataset2,
        question.maxOrder
    );
    console.debug("Starting decomp");
    let startTime = Date.now();
    decomposer.overlap();
    decomposer.decompose();

    console.debug("That took:", (Date.now() - startTime)/1e3, "seconds");
    console.debug("fv1", decomposer.featureVector1Raw);
    console.debug("fv2", decomposer.featureVector2Raw);
    // Decomposition.printMatrix(concat(decomposer.featureVector1, decomposer.featureVector2));
    self.postMessage({decomposer});

};

I originally had been trying to import using the import { x } from y syntax but that gave the error "import declarations may only appear at the top level of a module".
The code calling the worker is:
            let url = new URL("./decompWorker.js", import.meta.url);
            console.log("url", url);
            const worker = new window.Worker(url);
            console.debug("worker made");
            worker.postMessage({
                question: {
                    dataset1: this.dataset1,
                    dataset2: this.dataset2,
                    maxOrder: this.maxOrder
                }
            });
            console.debug("message posted");
            worker.onmessage = ({ data: {answer}}) => {
                console.debug(answer);
            };

as part of a Vue component. I believe this is related to #15165 , but not identical. One workaround I did try was to just combine the worker and the decomposition.js file, but this resulted in the same import declaration error.
If the current behavior is a bug, please provide the steps to reproduce.

Create a Vue component with a worker
Create a worker.js file that tries to import a local js file
Run

What is the expected behavior?
The worker should load the imported file and use the functionality it provides.
The bundler should tell the import function the updated location of the imported file.

Other relevant information:
webpack version:  5.30.0
Node.js version:
Operating System: Windows 10
Additional tools: Vue.js

After including { type: 'module' } in the declaration of the worker, I instead get an error saying "Loading Worker from “http://localhost:8081/393a5da5702deb8346cc.js” was blocked because of a disallowed MIME type (“text/html”)."

After including { type: 'module' } in the declaration of the worker, I instead get an error saying "Loading Worker from “http://localhost:8081/393a5da5702deb8346cc.js” was blocked because of a disallowed MIME type (“text/html”)."

Also still has a 404 error, but this time it appears to have bundled correctly(?) but the js file doesn't appear to be there

let url = new URL("./decompWorker.js", import.meta.url);
console.log("url", url);
const worker = new window.Worker(url);

is not statizally analizable, you should always to use new Worker(new URL(...)), also avoid window prefix (or add them using options)
That is why it is not working, feel free to feedback

So I did try without window with the same result. I'm not sure what you mean by statically analyzable (I'm new to js), but does that mean it's impossible to have workers import libraries or other classes? It feels like that really limits their useability.

@finlaymh What is statically analizalbe, look at code:
const result = await import("./foo.js");

./foo.js is string, it means we don't need to evaluate other variables or context, just parse file -> get string -> search file and bundle it.
You have:
let url = new URL("./decompWorker.js", import.meta.url);
console.log("url", url);
const worker = new window.Worker(url);

url is variables and we don't know value (more complex example - you get variable from window or another global object, and we don't know it, evaluation can be hard or impossible).
Just change your code to:
const worker = new Worker(new URL("./decompWorker.js", import.meta.url));

That's what I originally had, I only split it up so I could log the url, moved it back and changed my import from
self.importScripts("../../maths/decomposition.js");

to
let Decomposition = import("../../maths/decomposition.js")

Which gives the same error I mention here https://github.com/webpack/webpack/issues/16090#issuecomment-1198012149
The worker is created fine, it just falls over when it tries to trigger the self.onmessage function (I don't see "decomposer called" outputted at all)

I've also just noticed it seems to be trying to request undefined.bundle.js which doesn't seem correct

We don't have self.importScripts("../../maths/decomposition.js");, only ESM
let Decomposition = import("../../maths/decomposition.js") is not worker, it is just async chunk
404 due invalid public path, remove publicPath from configuration, webpack by default create relative paths and known where you store files

AFAIK publicPath isn't in my config (assuming you mean webpack.config.js).
Is this line then invalid?
let Decomposition = import("../../maths/decomposition.js")

Line is valid, something wrong with static of your application (it can be due invalid public path and non standard place of a static directory), if you need help you can create small reproducible test repo (with your problems and what you expected) and I will help show you how to solve it

Line is valid, something wrong with static of your application (it can be due invalid public path and non standard place of a static directory), if you need help you can create small reproducible test repo (with your problems and what you expected) and I will help show you how to solve it


Unable to set animations on headers

I am unable to set animation on the headers of my gridView.
Below is the code
gridView.setOnHeaderClickListener(new OnHeaderClickListener() {
		@Override
		public void onHeaderClick(AdapterView<?> arg0, View arg1, long arg2) {
			Log.d(TAG, "Header clicked ");
			Animation anim = AnimationUtils.loadAnimation(
					AddCardsGridActivity.this, R.anim.slide_in_left);
			arg1.startAnimation(anim);

		}
	});

However there is no problem when I try to animate the grid item itself.
How can I make the animation work for the headers ? or is it not possible ?
Please advise.

This project is no longer supported and has been replaced by SuperSLiM. While SuperSLiM is still in heavy development, I already consider it much better and more stable than StickyGridHeaders. SuperSLiM also sees regular versioned releases.