Split into gradle-dist and gradle-run

As a platform provider I want to use gradle to run some pre-build and post-build steps.  It is important that my pre-/post-build steps are factored out as separate gradle invocations as each invocation is run with different parameters.
Describe the Enhancement
The gradle buildpack performs two steps to provide a build-time gradle binary.  These are

Requests that a JDK be installed
Links the ~/.gradle to a layer for caching

The provision of gradle could be handled by a gradle-dist buildpack
The other steps would then be handled by a gradle-run buildpack.
Possible Solution
I would like to know if splitting the buildpack makes any sense.
The existing gradle buildpack would become a meta-buildpack.  The components of which could then be re-sequenced by platform providers in their own custom build orders.
Motivation
A real world use-case would use gradle-dist to provide a gradle binary.  Then a pre-build step would validate properties about any provided gradlew file before a subsequent gradle-run.

I'm not sure I follow your use case. It sounds like you want to run gradle multiple times?
Can you expand or maybe provide an example of what you're wanting to do? I'd like to focus on the use case before we talk about how best to do that.

What we would like to be able to do is add a layer that supplies it's own gradle wrapper.  In order for that to be possible, we need to run gradle wrapper --distributionUrl=... which means we need the gradle distribution and then we want to run the application build phase using the gradle wrapper that the separate layer contributed.

Hmm, ok. That's a little different than what we typically get, where users provide the gradle wrapper.
So does this sum up the workflow:

Install gradle
Run command to add gradle wrapper
Run build with gradle wrapper

As compared to what we do presently:

User provides gradle wrapper with the app
Run build with gradle wrapper

I can say I personally have no interest in splitting the buildpack up. The Java buildpacks mirror the technologies that we support, and breaking them down more complicates things. It would also present a big migration challenge in terms of how we'd go from what we have now to more buildpacks.
I'll let my other @paketo-buildpacks/java-maintainers chime in with their thoughts too.
What we can do now is this:

Install the latest gradle
Use a grade wrapper if it exists
Run gradle commands

Without too much fuss, we could add support to install an arbitrary Gradle version. Like if you fed in the distribution URL, we could install that version of Gradle. The only caveat is that it would require Internet access, but then so would using the grade command to install the wrapper.
If we did that, then you could perhaps simplify things to:

Install specific gradle
Run build with gradle

That is assuming the whole exercise of installing the Gradle wrapper is so that you can get the specific version of Gradle you need to run your project. If that's not a valid assumption, let me know.

In a perfect world what we want to do is: extract the distribution URL from the gradle wrapper properties file that is present in the project if one is present, validate it against our trusted list of distributions, and if it is trusted, then pass that distributionUrl onto the gradle buildpack for installation.  And, in cases where no gradle wrapper properties file is present, then we are content with using the default gradle distribution provided by the buildpack.

Gotcha. Yes, I think you could do exactly that with a custom buildpack.
You can add it to the list of buildpacks somewhere before the gradle buildpack. The detect script could look for build.gradle (or some other clues) and if present read the distribution URL. If it's in the approved list, pass detection. If it's not fail detection. That would prevent builds and fail early.
Your build process would probably be able to do nothing, cause it would only run if detect passes and if it passes the distribution URL would already be OK. Then the standard gradle buildpack would run and do its thing.

I think we can close this issue. In our case, we will add a layer that runs before this layer to generate a new gradle wrapper installation with the desired distribution. Then this layer can proceed normally with no changes required.


Error message displayed in sort by feature of detail view screen of all modules under sales and purchase modules

sales module-estimate,sales order,sales return,delivery challan,invoices,
purchase module-Expense,bills and purchase order

issue fixed!


phonegap run ios --device launches on simulator

Overview
phonegap run ios --device launches on ios simulator rather than device when device is plugged in.
Steps to Reproduce
phonegap create testapp
cd test
phonegap run ios --device

os x version 10.8.4
xcode 4.6.3
ios version 6.1.4
ios-sim version 1.7

I am seeing this behaviour resurface...
Cordova: 4.3.0
iOS Platform: 3.8.0
I have a fully provisioned device, etc.
I can go into the Xcode project and run from there, but even if I close that with the target set to a device rather than the emulator, it stills deploys to the sumulator...

You mean the cordova-cli. phonegap-cli does not have a 4.3.0 reversion released, thus is the wrong issue tracker for this.
In any case I just ran cordova run ios --device in  a new project, it deployed to device correctly. Make sure you have iso-deploy 1.4.0 installed as well, if not it errors out.

@shazron Thank, just as you have said


Not supported on every platforms

The documentation should state that this doesn't work for libraries that targets .NET Core / Standard.

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

ID: d865cd9f-35dc-d50b-391b-c216f21e8c3f
Version Independent ID: ae717506-9483-cfae-32c4-9d81db174946
Content: ISafeSerializationData(Object) Interface (System.Runtime.Serialization)
Content Source: xml/System.Runtime.Serialization/ISafeSerializationData.xml
Product: dotnet-api
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

Thanks, @Crono1981, for your feedback. We'll investigate. In the meantime, I'll assign your issue to the backlog. @ViktorHofer, can you help?

Code Access Security (CAS) and all of its members aren't supported on .NET Core: SecurityCriticalAttribute. Therefore the code samples already strongly indicate that this won't work. That said, a hint that this only works on frameworks that support CAS probably doesn't hurt.


RSSI is not reported on ZHA

Hello,
Any way to report  the RSSI on ZHA ?

@islamessam As I know, it is present but hidden by default in ZHA.

Thanks alot for your reply. Yes it is hidden but when I enable it it always show.Only the LQI is reporting from 0 to 254On 5 Jul 2024 6:25 am, ptvo @.***> wrote:
@islamessam As I know, it is present but hidden by default in ZHA.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>


Implementation of encryption keys features, Issue #10

What does this PR do?
This PR implements feature #10 by passing key parameter from client to the methods which need keys. Keys are asked from the user in the client and passed to the methods that need them. If method requires keys and user doesn't give them, error will be thrown.
Where should the reviewer start?
Looking at the changes to the client and to the API.
How should this be manually tested?
Using the client and not giving a key to a method which requires key will result in error message. Leaving the key empty for a method which doesn't require key causes no error.
What are the relevant tickets?
Closes issue #10

Is there any way to test a method with a key?

@ylimiky, I had to revert your merge because your fork is not updated with the latest version of develop. Please sync your fork and create a new PR to implement your changes.


Can you fix it plugins stunnel ? It causes OPNSENSE to shut down the machine.

System Information:
User-Agent Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
FreeBSD 13.1-RELEASE-p7 stable/23.1-n250430-7eb6eb035df SMP amd64
OPNsense 23.1.6 982c0e24c
Plugins os-acme-client-3.16 os-bind-1.26_4 os-c-icap-1.7_3 os-clamav-1.8 os-crowdsec-1.0.4 os-ddclient-1.12 os-dnscrypt-proxy-1.13 os-etpro-telemetry-1.6_1 os-grid_example-1.0_1 os-haproxy-4.1 os-igmp-proxy-1.5_2 os-intrusion-detection-content-et-open-1.0.1 os-intrusion-detection-content-pt-open-1.0_1 os-intrusion-detection-content-snort-vrt-1.1_1 os-maltrail-1.10 os-net-snmp-1.5_2 os-netdata-1.2_1 os-ntopng-1.2_2 os-qemu-guest-agent-1.2 os-redis-1.1_2 os-rspamd-1.12_1 os-shadowsocks-1.0_2 os-sslh-1.0 os-theme-cicada-1.34 os-web-proxy-sso-2.2_2 os-zerotier-1.3.2_4
Time Sat, 22 Apr 2023 04:02:11 +0700
OpenSSL 1.1.1t  7 Feb 2023
Python 3.9.16
PHP 8.1.18
PHP Errors:
[22-Apr-2023 03:53:45 Asia/Bangkok] Error: Call to undefined function openssl_crl_new() in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:97
Stack trace:
#0 /usr/local/etc/inc/plugins.inc(304): stunnel_refresh_crls(false)
#1 /usr/local/opnsense/scripts/stunnel/generate_certs.php(90): plugins_configure('crl')
#2 {main}
[22-Apr-2023 03:53:48 Asia/Bangkok] Error: Call to undefined function openssl_crl_new() in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:97
Stack trace:
#0 /usr/local/etc/inc/plugins.inc(304): stunnel_refresh_crls(false)
#1 /usr/local/opnsense/scripts/stunnel/generate_certs.php(90): plugins_configure('crl')
#2 {main}
dmesg.boot:
Copyright (c) 1992-2021 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 13.1-RELEASE-p7 stable/23.1-n250430-7eb6eb035df SMP amd64
FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)
VT(efifb): resolution 1280x800
CPU: Common KVM processor (2494.27-MHz K8-class CPU)
Origin="GenuineIntel"  Id=0xf61  Family=0xf  Model=0x6  Stepping=1
Features=0x1783fbff
Features2=0x80202001
AMD Features=0x20100800
AMD Features2=0x1
Hypervisor: Origin = "KVMKVMKVM"
real memory  =<PHONE_NUMBER> (8192 MB)
avail memory =<PHONE_NUMBER> (7823 MB)
Event timer "LAPIC" quality 100
ACPI APIC Table:
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s)
random: unblocking device.
ioapic0  irqs 0-23
Launching APs: 1 2 3
random: entropy device external interface
wlan: mac acl policy registered
kbd1 at kbdmux0
WARNING: Device "spkr" is Giant locked and may be deleted before FreeBSD 14.0.
kvmclock0:
Timecounter "kvmclock" frequency<PHONE_NUMBER> Hz quality 975
kvmclock0: registered as a time-of-day clock, resolution 0.000001s
efirtc0:
efirtc0: registered as a time-of-day clock, resolution 1.000000s
smbios0:  at iomem 0x7e9d4000-0x7e9d401e
smbios0: Version: 2.8, BCD Revision: 2.8
aesni0: No AES or SHA support.
acpi0:
acpi0: Power Button (fixed)
cpu0:  on acpi0
atrtc0:  port 0x70-0x77 irq 8 on acpi0
atrtc0: registered as a time-of-day clock, resolution 1.000000s
Event timer "RTC" frequency 32768 Hz quality 0
hpet0:  iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 100000000 Hz quality 950
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x608-0x60b on acpi0
pcib0:  port 0xcf8-0xcff on acpi0
pci0:  on pcib0
vgapci0:  mem 0xc0000000-0xc0ffffff,0xc224b000-0xc224bfff at device 1.0 on pci0
vgapci0: Boot video device
uhci0:  port 0xd300-0xd31f irq 16 at device 26.0 on pci0
usbus0 on uhci0
usbus0: 12Mbps Full Speed USB v1.0
uhci1:  port 0xd2e0-0xd2ff irq 17 at device 26.1 on pci0
usbus1 on uhci1
usbus1: 12Mbps Full Speed USB v1.0
uhci2:  port 0xd2c0-0xd2df irq 18 at device 26.2 on pci0
usbus2 on uhci2
usbus2: 12Mbps Full Speed USB v1.0
ehci0:  mem 0xc224a000-0xc224afff irq 19 at device 26.7 on pci0
usbus3: EHCI version 1.0
usbus3 on ehci0
usbus3: 480Mbps High Speed USB v2.0
hdac0:  mem 0xc2240000-0xc2243fff irq 16 at device 27.0 on pci0
pcib1:  mem 0xc2249000-0xc2249fff irq 16 at device 28.0 on pci0
pcib1: failed to allocate initial I/O port window: 0xd000-0xdfff
pci1:  on pcib1
pcib2:  mem 0xc2248000-0xc2248fff irq 16 at device 28.1 on pci0
pci2:  on pcib2
pcib3:  mem 0xc2247000-0xc2247fff irq 16 at device 28.2 on pci0
pci3:  on pcib3
pcib4:  mem 0xc2246000-0xc2246fff irq 16 at device 28.3 on pci0
pci4:  on pcib4
uhci3:  port 0xd2a0-0xd2bf irq 16 at device 29.0 on pci0
usbus4 on uhci3
usbus4: 12Mbps Full Speed USB v1.0
uhci4:  port 0xd280-0xd29f irq 17 at device 29.1 on pci0
usbus5 on uhci4
usbus5: 12Mbps Full Speed USB v1.0
uhci5:  port 0xd260-0xd27f irq 18 at device 29.2 on pci0
usbus6 on uhci5
usbus6: 12Mbps Full Speed USB v1.0
ehci1:  mem 0xc2245000-0xc2245fff irq 19 at device 29.7 on pci0
usbus7: EHCI version 1.0
usbus7 on ehci1
usbus7: 480Mbps High Speed USB v2.0
pcib5:  at device 30.0 on pci0
pci5:  on pcib5
pcib6:  mem 0xc1800000-0xc18000ff irq 21 at device 1.0 on pci5
pci6:  on pcib6
virtio_pci0:  port 0x90c0-0x90ff mem 0x80000c000-0x80000ffff irq 20 at device 3.0 on pci6
vtballoon0:  on virtio_pci0
virtio_pci1:  port 0x9080-0x90bf mem 0xc1602000-0xc1602fff,0x800008000-0x80000bfff irq 21 at device 8.0 on pci6
virtio_pci2:  port 0x9000-0x907f mem 0xc1601000-0xc1601fff,0x800004000-0x800007fff irq 23 at device 10.0 on pci6
vtblk0:  on virtio_pci2
vtblk0: 8192MB (16777216 512 byte sectors)
virtio_pci3:  port 0x9100-0x911f mem 0xc1600000-0xc1600fff,0x800000000-0x800003fff irq 23 at device 18.0 on pci6
vtnet0:  on virtio_pci3
vtnet0: Ethernet address: a6:b2:0a:c5:fb:03
vtnet0: netmap queues/slots: TX 1/256, RX 1/512
000.000152 [ 450] vtnet_netmap_attach       vtnet attached txq=1, txd=256 rxq=1, rxd=512
pcib7:  mem 0xc1801000-0xc18010ff irq 22 at device 2.0 on pci5
pci7:  on pcib7
pcib8:  mem 0xc1802000-0xc18020ff irq 23 at device 3.0 on pci5
pci8:  on pcib8
pcib9:  mem 0xc1803000-0xc18030ff irq 20 at device 4.0 on pci5
pci9:  on pcib9
isab0:  at device 31.0 on pci0
isa0:  on isab0
ahci0:  port 0xd240-0xd25f mem 0xc2244000-0xc2244fff irq 16 at device 31.2 on pci0
ahci0: AHCI v1.00 with 6 1.5Gbps ports, Port Multiplier not supported
ahcich0:  at channel 0 on ahci0
ahcich1:  at channel 1 on ahci0
ahcich2:  at channel 2 on ahci0
ahcich3:  at channel 3 on ahci0
ahcich4:  at channel 4 on ahci0
ahcich5:  at channel 5 on ahci0
acpi_syscontainer0:  on acpi0
vmgenc0:  on acpi0
acpi_syscontainer1:  port 0xb2-0xb3 on acpi0
acpi_syscontainer2:  port 0xcd8-0xce3 on acpi0
acpi_syscontainer3:  port 0x620-0x62f on acpi0
acpi_syscontainer4:  port 0xcc0-0xcd7 on acpi0
atkbdc0:  port 0x60,0x64 irq 1 on acpi0
atkbd0:  irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0:  irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
WARNING: Device "psm" is Giant locked and may be deleted before FreeBSD 14.0.
psm0: model IntelliMouse Explorer, device ID 4
attimer0:  at port 0x40 on isa0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
Timecounters tick every 10.000 msec
ZFS filesystem version: 5
ZFS storage pool version: features support (5000)
ugen5.1:  at usbus5
ugen1.1:  at usbus1
ugen7.1:  at usbus7
ugen2.1:  at usbus2
uhub0 on usbus5
uhub0:  on usbus5
uhub1 on usbus7
uhub1:  on usbus7
uhub2 on usbus2
uhub2:  on usbus2
ugen6.1:  at usbus6
ugen0.1:  at usbus0
uhub3 on usbus1
uhub3:  on usbus1
uhub4 on usbus0
uhub4:  on usbus0
uhub5 on usbus6
uhub5:  on usbus6
ugen3.1:  at usbus3
ugen4.1:  at usbus4
uhub6 on usbus3
uhub6:  on usbus3
uhub7 on usbus4
uhub7:  on usbus4
Trying to mount root from zfs:ZFS/ROOT/default []...
uhub0: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub3: 2 ports with 2 removable, self powered
uhub4: 2 ports with 2 removable, self powered
uhub5: 2 ports with 2 removable, self powered
uhub7: 2 ports with 2 removable, self powered
Root mount waiting for: usbus3 usbus7
Root mount waiting for: usbus3 usbus7
uhub1: 6 ports with 6 removable, self powered
uhub6: 6 ports with 6 removable, self powered
ugen7.2:  at usbus7

https://github.com/opnsense/plugins/blob/f920b48a94705cc6577221f293b7796f5f0feaf7/security/stunnel/src/etc/inc/plugins.inc.d/stunnel.inc#L97

hi
PHP Errors:
[22-Apr-2023 13:44:33 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/opnsense/scripts/syslog/list_applications.php(35): plugins_syslog()
#1 {main}
[22-Apr-2023 13:45:33 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/sbin/pluginctl(153): plugins_interfaces()
#1 {main}
[22-Apr-2023 13:45:34 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/console.inc(59): plugins_devices()
#1 /usr/local/etc/rc.bootup(74): is_interface_mismatch()
#2 {main}
[22-Apr-2023 13:45:35 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/opnsense/scripts/syslog/list_applications.php(35): plugins_syslog()
#1 {main}
[22-Apr-2023 13:45:55 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/opnsense/scripts/stunnel/generate_certs.php(90): plugins_configure('crl')
#1 {main}
[22-Apr-2023 13:45:55 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/system.inc(690): plugins_configure('monitor', true)
#1 /usr/local/etc/rc.routing_configure(46): system_routing_configure(true)
#2 {main}
[22-Apr-2023 13:45:57 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/opnsense/scripts/stunnel/generate_certs.php(90): plugins_configure('crl')
#1 {main}
[22-Apr-2023 13:46:54 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/util.inc(110): plugins_services()
#1 /usr/local/etc/inc/util.inc(192): service_by_name('syslog-ng', Array)
#2 /usr/local/etc/inc/util.inc(274): service_control_get('syslog-ng', Array)
#3 /usr/local/sbin/pluginctl(135): service_control_restart('syslog-ng', Array)
#4 {main}
[22-Apr-2023 13:46:55 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/opnsense/scripts/syslog/list_applications.php(35): plugins_syslog()
#1 {main}
[22-Apr-2023 13:46:57 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/util.inc(110): plugins_services()
#1 /usr/local/etc/inc/util.inc(192): service_by_name('cron', Array)
#2 /usr/local/etc/inc/util.inc(274): service_control_get('cron', Array)
#3 /usr/local/sbin/pluginctl(135): service_control_restart('cron', Array)
#4 {main}
[22-Apr-2023 13:46:58 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/util.inc(110): plugins_services()
#1 /usr/local/etc/inc/util.inc(192): service_by_name('sysctl', Array)
#2 /usr/local/etc/inc/util.inc(274): service_control_get('sysctl', Array)
#3 /usr/local/sbin/pluginctl(135): service_control_restart('sysctl', Array)
#4 {main}
[22-Apr-2023 13:47:59 Asia/Bangkok] ParseError: syntax error, unexpected identifier "©" in /usr/local/etc/inc/plugins.inc.d/stunnel.inc:177
Stack trace:
#0 /usr/local/etc/inc/legacy_bindings.inc(172): plugins_run('return_gateways...')
#1 /usr/local/opnsense/scripts/OPNsense/Monit/gateway_alert(52): return_gateways_status()
#2 {main}
dmesg.boot:
Copyright (c) 1992-2021 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 13.1-RELEASE-p7 stable/23.1-n250430-7eb6eb035df SMP amd64
FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)
VT(efifb): resolution 1280x800
CPU: Common KVM processor (2494.29-MHz K8-class CPU)
Origin="GenuineIntel"  Id=0xf61  Family=0xf  Model=0x6  Stepping=1
Features=0x1783fbff
Features2=0x80202001
AMD Features=0x20100800
AMD Features2=0x1
Hypervisor: Origin = "KVMKVMKVM"
real memory  =<PHONE_NUMBER> (8192 MB)
avail memory =<PHONE_NUMBER> (7823 MB)
Event timer "LAPIC" quality 100
ACPI APIC Table:
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s)
random: unblocking device.
ioapic0  irqs 0-23
Launching APs: 1 2 3
random: entropy device external interface
wlan: mac acl policy registered
kbd1 at kbdmux0
WARNING: Device "spkr" is Giant locked and may be deleted before FreeBSD 14.0.
kvmclock0:
Timecounter "kvmclock" frequency<PHONE_NUMBER> Hz quality 975
kvmclock0: registered as a time-of-day clock, resolution 0.000001s
efirtc0:
efirtc0: registered as a time-of-day clock, resolution 1.000000s
smbios0:  at iomem 0x7e9d4000-0x7e9d401e
smbios0: Version: 2.8, BCD Revision: 2.8
aesni0: No AES or SHA support.
acpi0:
acpi0: Power Button (fixed)
cpu0:  on acpi0
atrtc0:  port 0x70-0x77 irq 8 on acpi0
atrtc0: registered as a time-of-day clock, resolution 1.000000s
Event timer "RTC" frequency 32768 Hz quality 0
hpet0:  iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 100000000 Hz quality 950
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x608-0x60b on acpi0
pcib0:  port 0xcf8-0xcff on acpi0
pci0:  on pcib0
vgapci0:  mem 0xc0000000-0xc0ffffff,0xc224b000-0xc224bfff at device 1.0 on pci0
vgapci0: Boot video device
uhci0:  port 0xd300-0xd31f irq 16 at device 26.0 on pci0
usbus0 on uhci0
usbus0: 12Mbps Full Speed USB v1.0
uhci1:  port 0xd2e0-0xd2ff irq 17 at device 26.1 on pci0
usbus1 on uhci1
usbus1: 12Mbps Full Speed USB v1.0
uhci2:  port 0xd2c0-0xd2df irq 18 at device 26.2 on pci0
usbus2 on uhci2
usbus2: 12Mbps Full Speed USB v1.0
ehci0:  mem 0xc224a000-0xc224afff irq 19 at device 26.7 on pci0
usbus3: EHCI version 1.0
usbus3 on ehci0
usbus3: 480Mbps High Speed USB v2.0
hdac0:  mem 0xc2240000-0xc2243fff irq 16 at device 27.0 on pci0
pcib1:  mem 0xc2249000-0xc2249fff irq 16 at device 28.0 on pci0
pcib1: failed to allocate initial I/O port window: 0xd000-0xdfff
pci1:  on pcib1
pcib2:  mem 0xc2248000-0xc2248fff irq 16 at device 28.1 on pci0
pci2:  on pcib2
pcib3:  mem 0xc2247000-0xc2247fff irq 16 at device 28.2 on pci0
pci3:  on pcib3
pcib4:  mem 0xc2246000-0xc2246fff irq 16 at device 28.3 on pci0
pci4:  on pcib4
uhci3:  port 0xd2a0-0xd2bf irq 16 at device 29.0 on pci0
usbus4 on uhci3
usbus4: 12Mbps Full Speed USB v1.0
uhci4:  port 0xd280-0xd29f irq 17 at device 29.1 on pci0
usbus5 on uhci4
usbus5: 12Mbps Full Speed USB v1.0
uhci5:  port 0xd260-0xd27f irq 18 at device 29.2 on pci0
usbus6 on uhci5
usbus6: 12Mbps Full Speed USB v1.0
ehci1:  mem 0xc2245000-0xc2245fff irq 19 at device 29.7 on pci0
usbus7: EHCI version 1.0
usbus7 on ehci1
usbus7: 480Mbps High Speed USB v2.0
pcib5:  at device 30.0 on pci0
pci5:  on pcib5
pcib6:  mem 0xc1800000-0xc18000ff irq 21 at device 1.0 on pci5
pci6:  on pcib6
virtio_pci0:  port 0x90c0-0x90ff mem 0x80000c000-0x80000ffff irq 20 at device 3.0 on pci6
vtballoon0:  on virtio_pci0
virtio_pci1:  port 0x9080-0x90bf mem 0xc1602000-0xc1602fff,0x800008000-0x80000bfff irq 21 at device 8.0 on pci6
virtio_pci2:  port 0x9000-0x907f mem 0xc1601000-0xc1601fff,0x800004000-0x800007fff irq 23 at device 10.0 on pci6
vtblk0:  on virtio_pci2
vtblk0: 8192MB (16777216 512 byte sectors)
virtio_pci3:  port 0x9100-0x911f mem 0xc1600000-0xc1600fff,0x800000000-0x800003fff irq 23 at device 18.0 on pci6
vtnet0:  on virtio_pci3
vtnet0: Ethernet address: a6:b2:0a:c5:fb:03
vtnet0: netmap queues/slots: TX 1/256, RX 1/512
000.000220 [ 450] vtnet_netmap_attach       vtnet attached txq=1, txd=256 rxq=1, rxd=512
pcib7:  mem 0xc1801000-0xc18010ff irq 22 at device 2.0 on pci5
pci7:  on pcib7
pcib8:  mem 0xc1802000-0xc18020ff irq 23 at device 3.0 on pci5
pci8:  on pcib8
pcib9:  mem 0xc1803000-0xc18030ff irq 20 at device 4.0 on pci5
pci9:  on pcib9
isab0:  at device 31.0 on pci0
isa0:  on isab0
ahci0:  port 0xd240-0xd25f mem 0xc2244000-0xc2244fff irq 16 at device 31.2 on pci0
ahci0: AHCI v1.00 with 6 1.5Gbps ports, Port Multiplier not supported
ahcich0:  at channel 0 on ahci0
ahcich1:  at channel 1 on ahci0
ahcich2:  at channel 2 on ahci0
ahcich3:  at channel 3 on ahci0
ahcich4:  at channel 4 on ahci0
ahcich5:  at channel 5 on ahci0
acpi_syscontainer0:  on acpi0
vmgenc0:  on acpi0
acpi_syscontainer1:  port 0xb2-0xb3 on acpi0
acpi_syscontainer2:  port 0xcd8-0xce3 on acpi0
acpi_syscontainer3:  port 0x620-0x62f on acpi0
acpi_syscontainer4:  port 0xcc0-0xcd7 on acpi0
atkbdc0:  port 0x60,0x64 irq 1 on acpi0
atkbd0:  irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0:  irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
WARNING: Device "psm" is Giant locked and may be deleted before FreeBSD 14.0.
psm0: model IntelliMouse Explorer, device ID 4
attimer0:  at port 0x40 on isa0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
Timecounters tick every 10.000 msec
ZFS filesystem version: 5
ZFS storage pool version: features support (5000)
ugen2.1:  at usbus2
ugen3.1:  at usbus3
ugen7.1:  at usbus7
ugen6.1:  at usbus6
uhub0 on usbus2
uhub0:  on usbus2
ugen0.1:  at usbus0
uhub1 on usbus7
uhub1:  on usbus7
uhub2 on usbus6
uhub2:  on usbus6
ugen4.1:  at usbus4
ugen5.1:  at usbus5
uhub3 on usbus3
uhub3:  on usbus3
uhub4 on usbus0
uhub4:  on usbus0
ugen1.1:  at usbus1
uhub5 on usbus1
uhub5:  on usbus1
uhub6 on usbus4
uhub6:  on usbus4
uhub7 on usbus5
uhub7:  on usbus5
Trying to mount root from zfs:ZFS/ROOT/default []...
uhub0: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub4: 2 ports with 2 removable, self powered
uhub5: 2 ports with 2 removable, self powered
uhub6: 2 ports with 2 removable, self powered
uhub7: 2 ports with 2 removable, self powered
Root mount waiting for: usbus3 usbus7
Root mount waiting for: usbus3 usbus7
uhub1: 6 ports with 6 removable, self powered
uhub3: 6 ports with 6 removable, self powered
ugen7.2:  at usbus7


docs: improve FAQ - communication between projects

The Issue
FAQ https://ddev.readthedocs.io/en/stable/users/usage/faq/#can-different-projects-communicate-with-each-other is a bit hard too read. Everything is in one paragraph
How This PR Solves The Issue
Use paragraphs, trying to improve readability
Manual Testing Instructions
https://ddev--6238.org.readthedocs.build/en/6238/users/usage/faq/#can-different-projects-communicate-with-each-other
Automated Testing Overview
none
Related Issue Link(s)
Release/Deployment Notes

There are just a few markdownlint problems here, https://github.com/ddev/ddev/actions/runs/9208669142/job/25331380502
Thanks!

Ready for review - tried to separate the two use cases (connect to db, connect via http/s) better and make it more readable. Happy to follow your suggestions if this doesn't fit the DDEV docs style! :)

I changed the formatting for ordered list and used either/or instead of just or. I couldn't make a suggestion because I made changes for untouched lines.

:+1:
(Ah cool, thanks very much - didn't know how to use the ordered list properly. Without indentation textlint gave me the warning "start with 1." on 2.)


Virtus::Attribute#value_coerced? not being used

Today I found out about this method and by doing a git grep "value_coerced?" I couldn't spot any use of it. Is it for some future feature or has it been forgotten?
On top of that, using the Custom Attributes example from README, is this code really expected to raise an error?
user = MyAppClass::User.new
user.info = {"email" =><EMAIL_ADDRESS>
TypeError: can't convert Hash into String
	from /home/fabio/.rvm/gems/ruby-1.8.7-p334@virtus/gems/json-1.6.5/lib/json/common.rb:148:in `initialize'
	from /home/fabio/.rvm/gems/ruby-1.8.7-p334@virtus/gems/json-1.6.5/lib/json/common.rb:148:in `new'
	from /home/fabio/.rvm/gems/ruby-1.8.7-p334@virtus/gems/json-1.6.5/lib/json/common.rb:148:in `parse'
	from (irb):11:in `coerce'
	from ./virtus/attribute.rb:191:in `set'
	from ./virtus/attributes_accessor.rb:60:in `info='
	from (irb):25

I mean, should we check if the value is an instance of the target class on custom attributes #coerce method (MyAppClass::Attributes::JSON in this case) or should Virtus bypass value coercion and just set the value? If the check is needed, the example should probably be updated to something like:
module MyAppClass
  module Attributes
    class JSON < Virtus::Attribute::Object
      primitive Hash

      def coerce(value)
        if value.is_a? Hash
          value
        else
          ::JSON.parse value
        end
      end
    end
  end
end

I'm asking this because I noticed that on my current project we have some custom attributes that have that kind of checking on #coerce method in order to use the coerced value right away on specs.

@emmanuel  it looks like you added Virtus::Attribute#value_coerced? about a month ago. What's it's purpose? It doesn't look like anything in Virtus is using it.
It's marked as part of the private API, which means nothing outside of Virtus should be relying on it. If something is, then we should probably update it to have @api private in the docs.
Also maybe this is a case where the actual implementation of testing whether a value was properly coerced or not should be pushed off to the coercion libs. Worst case we keep the Virtus::Attribute#value_coerced? method, but just have it delegate all the work to the coercion libs. Best case we can get rid a method that nothing uses.

AFAIR #value_coerced? was added as a convenient method for the case mentioned in the issue.
Regarding custom attributes - I used this example to show that you can implement coercion in the attribute class (kind of like a DM1-style) but the preferred way of handling coercions is to use Virtus::Coercion classes, either extend the existing ones or add new.
The philosophy behind the coercion system is very simple - for every kind of object that may "come in" we have a dedicated Virtus::Coercion class that can handle all sorts of coercions. Every coercion class inherits from Virtus::Coercion::Object which provides default coercion behavior but you are free to override it in your custom classes (that's what most of the built-in classes already do). There's also this trick in Virtus::Coercion::Object that when coercion is not needed then the value will be returned as-is. For example when you call Virtus::Coercion::String.to_string passing in a string object then it will just be returned. This helped us eliminating the need for explicit checks in virtus if the value needs to be coerced or not (the if/else code smell) - it was a pretty cool refactor actually :)

hum... so this is the preferred way of doing it then?


Draft: wrapping calls in runBocking lifted up from Mapbox.kt

runBlocking using the main dispatcher replaced with withContext. Affected methods are now suspended, and calls to them are wrapped in runBlocking without a specified dispatcher.
Extracted anonymous LocationUpdatesObserver implementation in CorePublisher to internal class for readability.
Resolves #680

Closing this, as no fix is needed


Is there a way to use UniqueCommentTextProvider in SettingsViewController

First, Great work!!
New to this, and have a quick question regarding the example provided:
In Do Not Disturb VC, there is this UniqueCommentTextProvider, how can that be used in SettingsViewController ? (it does not allow now as the former is a collection view cell, while the latter is mainly on a tableview) - so the question could also be: how to write a similar UniqueCommentTextProvider for collectionviewcell ?
Thanks ahead!!

hmm?
now UniqueCommentTextProvider is used for UICollectionView. If you want to add UniqueCommentTextProvider to UITableViewCell，we can use SingleTableViewCellProvider, SingleUITableViewCellProvider or AnimatablePartionSectionTableViewProvider.
for example:
class SingleCommentTextTableViewProvider: SingleUITableViewCellProvider {

    let textLabel = UILabel()

    override init() {
        super.init()
        ...
    }

}

If you want to create UniqueCommentTextProvider for UITableView & UICollectionView, this is maybe not support. Maybe you need add more wrap class.
But I will think about this feature on 3.x. (maybe not, because UITableView and UICollectionView have different method).

Thanks @DianQK .
I was trying to do that by subclassing SingleUITableViewCellProvider , but it seems that it does not have sizeForItemAt as SingleUICollectionViewCellProvider has to set appropriate height.

Correct me if i am wrong :) :
I am guessing that SingleUITableViewCellProvider is missing a function, like sizeForItem: atIndexPath: or heightForItem: atIndexPath, which needs to set open var itemHeight: ((UITableView) -> CGFloat?)? based on cell index, and the height of actual string in the cell label.


Do internal consistency check in initializer

Based on https://github.com/tomlokhorst/Xcode.swift/pull/12
The XCProjectFile initializer should do a internal consistency check after loading the project file. To prevent runtime crashes on one of the many ! used throughout the code.
I haven't tested this, but my guess is, this should work:

Every 24 character alphanumeric String object reference "somewhere" in the complete object graph is an object reference, and that GUID key should exist in the objects list.
Every object GUID key in the objects should be referenced somewhere in the complete object graph.

If either of these fails, an error like this can be generated:
- BuildFile (46880B8819C43A87006E1F66) references missing fileRef 3EACC98E19EE6D4300EB3C5E
- FileReference `AppDelegate.cpp` (288765A40DF7441C002DB57D) is not used in any BuildFile.

Perhaps a merge conflict?

As a second step, the initializer can take an extra parameter unsafeIgnoreInconsistency: Bool so that the current behaviour can be returned.
Perhaps with a better error message: fatalError("Can't find key '3EACC98E19EE6D4300EB3C5E' in objects, ignored in internal inconsistency check. Perhaps a merge conflict?")

Merged in release/2.0 branch which will be released when Swift 4/Xcode 9 is available.


Fractional NFT ownership

We would like to explore the possibilities of fractionalizing NFTs in a manner that protects from the usual pitfalls of naive implementations, ensuring that the original NFT can be reconstituted, while retaining fairness for all owners of NFT fractions.
This is a call for open experimentation with solutions, thus we will list the required features, and a few potential approaches as guidelines.
Requirements

The protocol should be resistant to token loss or minority obstruction.

Even if a majority stake in the NFT is burned or lost, there should be a way for the remaining active stakeholders to (over time) regain majority and reconstitute the NFT.
If a minority stakeholder is unreasonably blocking a majority decision to reconstitute, fair methods for buyout should be available.

Any such measure should be resistant to manipulation by potential buyers attempting to trigger a fire sale

Avenues meriting exploration

Issuance on a bonding curve

New stakes are issued incrementally on a bonding curve, diluting existing stakes
On a market with buy pressure, stakers need to keep actively buying to preserve their stake
Food for thought

Income may be distributed among existing holders, to offset the dilution of their stake
How token buyback on the curve could be implemented along this mechanism
How do different curve shapes affect the economics of the system

Harberger tax

Holders of stakes in the NFT always have an open sell order at a self-assessed price
Each stakeholder pays a tax (lazily netted) to other holders based on this sell price

Setting a low sell price could potentially earn an income, but risks being bought out

"RICKS", an approach for on-demand dilution through recurrent issuance
"Mortys", Martingale shares for a fair randomized settlement process
Another, simple, approach is to allow a threshold of holders to vote for the NFT to be put to auction.

Judging criteria
Potential impact: Envisioned impact of your project
Novelty: Innovativeness of the project
Technical: Does the code work? Is it secure?
Design and UX: How is the look and feel and how intuitive is the design?
Track requirements:
Submissions must be open source (MIT license)
Submission with a working prototype must be deployed live on the current testnet
Submissions must list the addresses of their token contracts
Prize
Prize (1 team)
$7,500 in tez (XTZ) at the time of payout
On bounty deliverables
We would like to provide guidelines on what we expect to see out of the hackathon. We are aware that the topics we're putting up for bounties are complex, and scope might have to be defined narrowly to allow delivery within the hackathon's timeframe.
The concrete deliverables we expect out of a bounty application are:

Whitepaper describing the mechanism, with analysis from economic and game theoretical perspectives

The analysis doesn't have to be in-depth at this stage, but we want to see that thought was put into the idea

Decentralized Minimum Viable Product showcasing all key components of the mechanism

Prioritize backend completeness over frontend flashiness
Write clean code following best practices
Cleanly separate various components of your architecture
Document enough to allow reviewers to fully understand what you did

Writeup on what the product backlog for reaching what you'd consider 'completion' looks like

Keep in mind that the purpose of your deliverables are to convince people almost as smart as yourselves that your idea is viable, and you are capable of delivering a reliable, working product.
Developer resources
For those who are completely new to Tezos development, the dev portal is a good place to start https://developers.tezos.com/
Tacode, a p2p learning platform for Tezos teaches you how to build a Dapp on Tezos while earning tez
https://tacode.dev
OpenTezos is an open-source wiki on all topics Tezos
https://opentezos.com/
A guide how to mint NFTs on Tezos and how to build a simple NFT platform
https://medium.com/ecad-labs-inc/how-to-mint-nfts-on-tezos-using-taquito-and-pinata-15a407078495
A react provider for Dapps to easily setup connection to Beacon/Taquito wallets
https://github.com/tz-contrib/components-library/tree/develop/packages/react-wallet-provider
Awesomelist for Tezos
https://github.com/tz-contrib/awesome-tezos
Tezos Stack Exchange is a useful resource to where you can see answers to technical questions regarding Tezos
https://tezos.stackexchange.com/
If you do not find answers to your technical questions on the Tezos Stack Exchange, join the Tezos Developers telegram channel and ask away
https://t.me/TezosDevelopers

I put my ethereum address by mistake. I cannot edit it on Gitcoin.
This is the correct one: tz1Qv5SvBMyvwPJ1Ro9T9xr3fDpfd29GgrHp

I put my ethereum address by mistake. I cannot edit it on Gitcoin.
This is the correct one: tz1Qv5SvBMyvwPJ1Ro9T9xr3fDpfd29GgrHp

I have requested it to gitcoin to be changed! Congratulation on your prize, as soon as your address is correct we will distribute the prize.


Unable to install on iOS 1.0.1

What happened?
I tried to run pod install on my Flutter project with realm: ^1.0.1, but it failed with an error message:
[!] Unable to install vendored xcframework realm_dartfor Podrealm, because it contains both static and dynamic frameworks
Xcode - develop for iOS and macOS (Xcode 14.2)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 14C18
• CocoaPods version 1.11.3
just like #1023
Repro steps

flutter clean
flutter pub get
flutter pub run realm generate
flutter run or pod install

Version
1.0.1
What Atlas Services are you using?
Local Database only
What type of application is this?
Flutter Application
Client OS and version
Xcode - develop for iOS and macOS (Xcode 14.2)     • Xcode at /Applications/Xcode.app/Contents/Developer     • Build 14C18     • CocoaPods version 1.11.3
Code snippets
No response
Stacktrace of the exception/crash you're getting
No response
Relevant log output
No response

I managed to fix this by gem uninstall -aIx and gem install cocoapods. Probably just updating all the gems would have fixed it too. It is a bug in upstream cocoapods: https://github.com/CocoaPods/CocoaPods/issues/10332#issuecomment-1257749952

I managed to fix this by gem uninstall -aIx and gem install cocoapods. Probably just updating all the gems would have fixed it too. It is a bug in upstream cocoapods: CocoaPods/CocoaPods#10332 (comment)

Thanks a lot, it works


Add 64-bit offset support for std::io traits

To make effective use of larger stable storage size, it would be useful to manipulate stable storage via std::io::Read and std::io::Write traits.

This commit fixes this by introducing a new StableIO structure that implements both std::io::Read, and std::io::Write. The existing logic for StableWriter and StableReader is moved under this structure, andStableWriter and StableReader are reimplemented as wrappers around StableIO.
The motivation for this approach was to allow backwards compatibility with existing API, while layering the new functionality/API on top.
This also fixes https://github.com/dfinity/cdk-rs/issues/334.
If you're interested, I can submit a PR.

A further iteration on was made by my colleague @dmidem https://github.com/dmidem/cdk-rs/commit/653892c8f5546cbf1bbd4d1c509443bd4df3389a to improve the readability by splitting logic into several files.
In general happy to make the appropriate cleanup/changes if this is functionality that seems relevant to cdk-rs.

Thanks for the suggestion. Please file a PR.

Thanks @lwshang created a PR. Happy to incorporate any feedback.


Query regarding usage of bytes in grpc-c

Hi Ajay,
I am using a bytes in proto and allocating memory(using malloc) while sending raw bytes to peer. Will GRPC-C free this memory or does application should free it.
Thanks and Regards
Raghu. S

Hi Raghu,
Application will have to free this data. grpc-c will free just the context and other internal structures.
Thanks.


.env problem

after running project I got an error no environment variable CELERY_BROKER_URL.
after searching I have found a file in .envs/merge.py
I think you should add a note to documentation to run this file after creating project

The CELERY_BROKER_URL has now a default value.


Application Proxy Connector has 200 concurrent outbound connections

From the article, it mentions that "By default, each connector is limited to 200 concurrent outbound connections.".
https://learn.microsoft.com/en-us/azure/active-directory/app-proxy/application-proxy-high-availability-load-balancing#traffic-distribution-across-connectors
Question:

How to change the concurrent outbound connection value in App Proxy Connector?
is this setting applicable to the connector that is configured with forward proxy only? Or, is the setting also applied with outbound connection via outbound firewall?
https://learn.microsoft.com/en-us/azure/active-directory/app-proxy/application-proxy-release-version-history#new-features-and-improvements-1

Thanks.

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

ID: d2b0891e-1805-5d91-bc69-3ec1b7ffd69f
Version Independent ID: cfb34c83-a26f-2171-b7f9-8a5c904e5189
Content: High availability and load balancing - Microsoft Entra application proxy - Microsoft Entra
Content Source: articles/active-directory/app-proxy/application-proxy-high-availability-load-balancing.md
Service: active-directory
Sub-service: app-proxy
GitHub Login: @kenwith
Microsoft Alias: kenwith

@simonkw2000
Thanks for your feedback! We will investigate and update as appropriate.

Hi @simonkw2000
To change the concurrent outbound connection value in App Proxy Connector, you can edit the ApplicationProxyConnectorService.exe.config file located at C:\Program Files\Microsoft AAD App Proxy Connector. You can add the following line to the appSettings section of the file to set the maximum number of concurrent outbound connections:
<add key="MaxOutboundConnections" value="200" />

You can change the value to any number that suits your needs. This setting is applicable to all connectors, regardless of whether they are configured with a forward proxy or outbound firewall.
It's important to note that increasing the number of concurrent outbound connections may impact the performance of the connector and the backend application. Therefore, it's recommended to test and monitor the performance after changing this setting.
Let me know if you have any further questions.

Thanks for the information. A suggestion to add this information in the article, so that others will know from it. Thanks.

@simonkw2000
We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation


ISPN-11436 Fix licenses for server

https://issues.redhat.com/browse/ISPN-11436

This is now ready

What is the issue, not clear from the JIRA

I added a description of the issue on the Jira. Check the docs/licenses/licenses.html and compare it with the contents of the lib directory


Fake items (layout placeholders, duplicated items) do not show widget item overlays.

The 'Layout placeholders' that this plugin creates for items that you don't have in your bank currently do not show the text from the Item Identification plugin. For example the magic seed in this image is the only real placeholder I have in my bank.

This is tricky because the way item identification, and other item overlay plugins, work, is by detecting item widgets and drawing on top of them. For layout placeholders to show this text, they would have to be actual item widgets. The existing layout placeholders are just graphics drawn on screen. I chose this route because I figured there could be issues creating fake items in the bank. iirc this confused the bank value plugin, but there could be others, so I'd have to do some more thinking about how this could be done safely, or if it should be done at all.
This also affects duplicated items as the duplicates are also just graphics. This is very noticeable if you duplicate an item with an overlay, like a rune pouch. So, it would be nice to fix this for sure.


Create an OWNERS file for integration2 folder.

Also fix the wrong alias in the top-level pkg file.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: geeknoid
If they are not already assigned, you can assign the PR to them by writing /assign @geeknoid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pkg/OWNERS
tests/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: nmittler
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pkg/OWNERS [nmittler]
tests/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ozevren: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
3f231b8821986cd1a2032dde8eecb2db3a4aef37
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: nmittler, sebastienvas
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pkg/OWNERS [nmittler]
tests/OWNERS [sebastienvas]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ozevren: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
3f231b8821986cd1a2032dde8eecb2db3a4aef37
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test e2e-simple


Getting 3 errors out of 11 while testing pyrouge

Hi everyone!
While testing if everything is installed correctly, running:
python -m pyrouge.test
I've got  3 errors out if 11.
As I understood the error occurs when execution perl script ROUGE-1.5.5.pl
OSError: [Errno 8] Exec format error: '/home/olha/Desktop/GNLP/Project/fast_abs_rl/ROUGE-1.5.5/ROUGE-1.5.5.pl'
E./tmp/tmpf95nxjbp/config_test.xml data/config_test.xml
...

Ran 11 tests in 0.396s
FAILED (errors=3)
Any ideas?
Any help would be appreciated!

@OlhaOlha  How did you fix this ?

@OlhaOlha how did you resolve this?

Nvm. in my case, I forgot a step in the installation of Rouge. Follow this guide, and make sure you do step 6
https://poojithansl7.wordpress.com/2018/08/04/setting-up-rouge/
If there's already a WordNet-2.0.exc.db file you'll have to delete it and recreate the symbolic link.


Consider using DataFrame or xarray internally

Currently the data is stored in COO form with

.row & .column for the 2D indexing
.data as a numpy structured array which essentially is a table, able to contain different data types.

This functionality is also provided by pandas DataFrames or xarray Datasets which would bring more functionalities and make the code more readible. Main questions are:

Effort worth it?
How about performance?

This is (or was) tested in #4 .
While this makes part of the code more accessible, performance is much better when using numpy structured arrays. In particular slicing was much faster.


SW-3430 Fix species template download and species import resolutions

the response needed to be parsed for csv template
the payload for import resolutions needed to be an entity instead of search param

Thanks @charlie-tf


target: zephyr: Allow parallel build of Zephyr

If we are building JerryScript from some other makefile that passes
down a -j option to make we should respect that when we build Zephyr.
JerryScript-DCO-1.0-Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

Travis reported an error:
Signed-off-by message is incorrect. The following line should be at the end of the b057840 commit's message: 'JerryScript-DCO-1.0-Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

I'm not sure I understand what's missing. I have a JerryScript-DCO in the commit message as the last thing.

I think the problem is the <> around the email address.

Ah, thanks.. was missing that bit.

LGTM


zoom does not work in combination with logarithmic yaxis with more than one series

Description
Zooming seems to be broken with logarithmic scaling.

Steps to Reproduce

More than one series
Use yAxis for both series, happens automatically or via new seriesName Array
Set yAxis to logarithmic = true
Try to zoom by selecting area with mouse

Expected Behavior
Zooming to selected area as normal
Actual Behavior
Selected area is show, than freeze with exception in console:
apexcharts:6 Uncaught TypeError: Cannot read properties of undefined (reading 'niceMax')
at apexcharts:6:246152
at Array.forEach ()
at i.value (apexcharts:6:246061)
at i.value (apexcharts:6:240941)
Firefox: Selection can not be finished
Chrome: Freeze
Works if logarithmic is not set.
Screenshots
Freeze after selection is finished.

Reproduction Link
https://codepen.io/ms20de/pen/LYvWgyV

This is fixed in yesterdays pull request #4341, in response to issue #4340.
Apologies for not catching it in the initial versions of the seriesName-as-an-array feature. Zooming works in 3.48.0 with the traditional seriesName-as-a-string-only style.


weird navigation path

In dubin at least, in sumulation LeQuad behave like that :

Similar behaviour occurs for DIRECT_TO navigation

fixed in #331


Getting 0 accuracy on customized dataset

I am getting zero accuracies on all metrics during training and the validation phase. The commends I run were:
python train.py cfg/expo-eraser.data  cfg/yolo-pose-pre.cfg cfg/darknet19_448.conv.23
cp backup/expo-eraser/model.weights backup/expo-eraser/init.weights
python valid.py cfg/expo-eraser.data cfg/yolo-pose.cfg backup/expo-eraser/model_backup.weights
Like the name of the dataset suggests, I was not testing on an item that would be difficult for the algorithm.
The error sounds most likely a scale issue, but the mesh I created is indeed in meter. I also acquired the mesh myself, and I am very certain about the correctness of the RT transformations and the 2D projections.
I do have 2 things unclear though:

I normalized all 2D pixels and range, e.g. if the center of the object is (340,240)  on a 640*480 image, the value I provided in the label file is 0.5 0.5, is this the right practice?
About the 8 corners of the 3D bounding box, while the axis aligned bounding box on the ground truth pose frame satisfies  [[min_x, min_y, min_z], [min_x, min_y, max_z], [min_x, max_y, min_z], [min_x, max_y, max_z], [max_x, min_y, min_z], [max_x, min_y, max_z], [max_x, max_y, min_z], [max_x, max_y, max_z]], this is not satisfied anymore as the corners will get transformed with the subsequent frames?

Did you manage to solve the problem? I am also getting 0% accuracy as it seems:
`019-03-20 14:12:14    Number of test samples: 60
tensor to cuda : 0.000999
predict : 0.011994
get_region_boxes : 0.015990
eval : 0.035156
total : 0.064140
2019-03-20 14:12:20    Mean corner error is 355.253784
2019-03-20 14:12:20    Acc using 5 px 2D Projection = 0.00%
2019-03-20 14:12:20    Acc using 0.0103 vx 3D Transformation = 0.00%
2019-03-20 14:12:20    Acc using 5 cm 5 degree metric = 0.00%
2019-03-20 14:12:20    Translation error: 18381.882744, angle error: 125.722093`

Nope, I checked all my labeling and couldn't find what is not correct.

Did you manage to solve the problem? I am also getting 0% accuracy as it seems:
019-03-20 14:12:14 Number of test samples: 60
tensor to cuda : 0.000999
predict : 0.011994
get_region_boxes : 0.015990
eval : 0.035156
total : 0.064140
2019-03-20 14:12:20 Mean corner error is 355.253784
2019-03-20 14:12:20 Acc using 5 px 2D Projection = 0.00%
2019-03-20 14:12:20 Acc using 0.0103 vx 3D Transformation = 0.00%
2019-03-20 14:12:20 Acc using 5 cm 5 degree metric = 0.00%
2019-03-20 14:12:20 Translation error: 18381.882744, angle error: 125.722093

#83 closing the duplicate.

Did you manage to solve the problem? I am also getting 0% accuracy as it seems:
019-03-20 14:12:14 Number of test samples: 60
tensor to cuda : 0.000999
predict : 0.011994
get_region_boxes : 0.015990
eval : 0.035156
total : 0.064140
2019-03-20 14:12:20 Mean corner error is 355.253784
2019-03-20 14:12:20 Acc using 5 px 2D Projection = 0.00%
2019-03-20 14:12:20 Acc using 0.0103 vx 3D Transformation = 0.00%
2019-03-20 14:12:20 Acc using 5 cm 5 degree metric = 0.00%
2019-03-20 14:12:20 Translation error: 18381.882744, angle error: 125.722093

How did you solve the problem?I have met the same problem.Thank you!
@F2Wang


Add new workflow step to validate previous release

The idea is that for every new release involving a fuel-core upgrade, we run our e2e tests against the test/dev networks:

Once for the previous release (current, soon to be previous)
Once for PR in question (next release)

This should provide answers to these questions before releasing a fuel-core upgrade:

Is the previous release still working with dev and test nets?
Is the new release working with dev and test nets?

I think this covers recent discussions. Otherwise, feel free to edit the description.
cc @Torres-ssf @nedsalk @petertonysmith94 @FuelLabs/sdk-ts


progress bar enhancing

it would be better if it presented as a single line,
instead of printing every change in a separate line.

you should take a lookmat issue #119 .


Introduce a TTIR decomposition pass

Create a  TTIR decomposition pass in mlir (see more here: https://github.com/tenstorrent/tt-mlir/issues/914)
Implement an IndexOp that will be decomposed into a SliceOp. I chose not to use DRR in mlir for the decomposition of IndexOp since it involves modifying its attributes to adapt to SliceOp, and DRR is not very flexible in that regard. However, I plan to use DRR in the future for simpler decompositions.

@jserbedzijaTT I noticed that you put this pass at the end of the TTIR pipeline. This can cause issues because we verify that the result type of every op is equal to the type of the DPS operand for it. I believe in the TTIRLayout pass we populate tensor memory layout attributes in the return types of all TTIR ops. The DPS operands are provided using tensor.empty which is in the tensor dialect, not TTIR. This is an issue because when we create a new op in your decompose pass, we will likely clone the output type. The DPS operand will have the same shape but not the memory layout attributes. So, upon verification the compile will fail.
To fix this we can put the pass at the beginning of the pipeline.

I've opened a PR to merge into this branch: https://github.com/tenstorrent/tt-mlir/pull/1104
It comes with a new ConvolutionOp which is a very high level representation of any convolution. I've added a decomposition pass for this op which will convert it to a Conv2d op if it is eligible. I've also included some fixes that caused my decomposition pass to not work. These would be:

Adding a couple extra legal dialects, and the tensor::EmptyOp
Moving this before TTIRLayoutPass since that adds layout information to op result types, which will not match the types of the DPS operands created by tensor::EmptyOp. Since this pass creates new ops the verification will be run and fail if this is not moved ahead. Or if we change how we verify DPS and result types.

@jserbedzijaTT I noticed that you put this pass at the end of the TTIR pipeline. This can cause issues because we verify that the result type of every op is equal to the type of the DPS operand for it. I believe in the TTIRLayout pass we populate tensor memory layout attributes in the return types of all TTIR ops. The DPS operands are provided using tensor.empty which is in the tensor dialect, not TTIR. This is an issue because when we create a new op in your decompose pass, we will likely clone the output type. The DPS operand will have the same shape but not the memory layout attributes. So, upon verification the compile will fail.
To fix this we can put the pass at the beginning of the pipeline.

Yeah, let's move this to the beginning of the passes. This needs to be done before everything, in order to legalize narrow TTIR set of ops as soon as possible.


Fix PodDisruptionBudget not obeying highAvailability flag

Description
Ticket: https://dt-rnd.atlassian.net/browse/DAQ-2140
Fixes https://github.com/Dynatrace/dynatrace-operator/issues/4008
Currently the highAvailability flag does not control the creation of the PodDisruptionBudget
How can this be tested?
set highAvailability to false in values file -> make manifest -> check if the PDB is there

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 64.60%. Comparing base (b1fa5e4) to head (e5f18d6).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4013   +/-   ##
=======================================
  Coverage   64.60%   64.60%
=======================================
  Files         397      397
  Lines       26387    26387
=======================================
  Hits        17047    17047
  Misses       8017     8017
  Partials     1323     1323

Flag
Coverage Δ

unittests
64.60% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


add buildrun cancel

Changes
This is complimentary to, though not required by, https://github.com/shipwright-io/build/pull/809 in
addressing  https://github.com/shipwright-io/build/issues/54
/kind feature
Submitter Checklist

[ ] Includes tests if functionality changed/was added
[ ] Includes docs if changes are user-facing
[ ] Set a kind label on this PR
[ ] Release notes block has been filled in, or marked NONE

See the contributor guide
for details on coding conventions, github and prow interactions, and the code review process.
Release Notes
Add cancel buildrun option

FYI I'm going to borrow from the unit tests for openshift's analogous cancel build command from its CLI and incorporate them here.
Could serve as a template for adding tests in for pre-existing code.

side note:  while tkn taskrun cancel provides no args at this time, oc cancel-build has some options:
Options:
      --dump-logs=false: Specify if the build logs for the cancelled build should be shown.
      --restart=false: Specify if a new build should be created after the current build is cancelled.
      --state=[new,pending,running]: Only cancel builds in this state

initial reaction:  all have some level of interest but I'm also not 100% of the opinion that we have to take on any of them, at least initially with this PR; if we don't,  wait for feedback as openshift build v1 users migrate to shipwright and/or add a separate issue to note them.

additional note:  this has been discussed in some internal team meetings, and @otaviof and I have had some discussion on a few implementation alternatives, but for general awareness, I plan on updating this PR with some form of inspection of the buildrun when using the -F / follow options with shp build run so that when the pipe on the pod logs is closed, some indication that the buildrun is canceled will be provided.

I've pushed the change to augment log following if a buildrun is canceled (through in deleted for good measure)
going to
/hold
since my shipwright-io/build PR has not merged yet, and I wanted to leverage the IsCanceled method, so I manually patched that vendor bump in.
once https://github.com/shipwright-io/build/pull/809 merges I'll vendor it in properly.
A snippet of the log:
$ shp build run buildpack-nodejs-build -F
Pod 'buildpack-nodejs-build-9k9sp-5bjhb-pod-9nhkx' is in state "Pending"...
Pod 'buildpack-nodejs-build-9k9sp-5bjhb-pod-9nhkx' is in state "Pending"...
Pod 'buildpack-nodejs-build-9k9sp-5bjhb-pod-9nhkx' is in state "Pending"...
[place-tools] 2021/07/12 19:25:17 Copied /ko-app/entrypoint to /tekton/tools/entrypoint
[source-default] 2021/07/12 19:25:18 warning: unsuccessful cred copy: ".docker" from "/tekton/creds" to "/": unable to create destination directory: mkdir /.docker: permission denied
[source-default] {"level":"info","ts":1626117920.4266548,"logger":"git","msg":"ssh","path":"/usr/bin/ssh","version":"OpenSSH_8.0p1, OpenSSL 1.1.1g FIPS  21 Apr 2020"}
[source-default] {"level":"info","ts":1626117920.4312348,"logger":"git","msg":"git","path":"/usr/bin/git","version":"git version 2.27.0"}
[source-default] {"level":"info","ts":1626117920.4454648,"logger":"git","msg":"git-lfs","path":"/usr/bin/git-lfs","version":"git-lfs/2.11.0 (GitHub; linux amd64; go 1.14.4)"}
[source-default] {"level":"debug","ts":1626117920.4455638,"logger":"git","msg":"/usr/bin/git clone --quiet --no-tags --single-branch --depth 1 -- https://github.com/shipwright-io/sample-nodejs /workspace/source"}
[source-default] {"level":"debug","ts":1626117921.464589,"logger":"git","msg":"/usr/bin/git -C /workspace/source submodule update --init --recursive --depth 1"}
[source-default] {"level":"debug","ts":1626117921.5359373,"logger":"git","msg":"/usr/bin/git -C /workspace/source rev-parse --verify HEAD"}
[prepare] GGMsleep
[build-and-push] rpc error: code = NotFound desc = an error occurred when try to find container "2485a45b709fad5d4d8433214da6a14395c9608af000222f9ed6050a1dc13d71": not found
[prepare] rpc error: code = NotFound desc = an error occurred when try to find container "9f2c014a1041d191d2e112cd20733a83ffa2d101b5a05a892f05caab4346069c": not found
BuildRun 'buildpack-nodejs-build-9k9sp' has been canceled.
$

ok
/hold cancel
as I've vendored in the recently merged shipwright-io/build changes for cancelling builds
any takers on code review @coreydaley @otaviof @alicerum @HeavyWombat ?

I'm on the case!

I'm on the case!
On Thu, Jul 15, 2021 at 2:29 PM Gabe Montero @.***>
wrote:

ok
/hold cancel
as I've vendored in the recently merged shipwright-io/build changes for
cancelling builds
any takers on code review @coreydaley https://github.com/coreydaley
@otaviof https://github.com/otaviof @alicerum
https://github.com/alicerum @HeavyWombat
https://github.com/HeavyWombat ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/shipwright-io/cli/pull/22#issuecomment-880920945, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABGTNTPHHZGWC4SY6MZHQILTX4SI3ANCNFSM46V772VQ
.

/approve

Are there any tests that should go along with this for the new command?

Yeah I'm hesitant to devise tests for pkg/shp/cmd/* until we completely move off of the dynamic client and onto static clients per https://github.com/shipwright-io/cli/issues/24
That said we may need to get on that before we add to many more verbs
@otaviof @alicerum FYI

Otherwise I've pushed updates for comments from @coreydaley (who is on PTO) for the remaining items from him I'm in line with.
/assign @alicerum
/assign @otaviof
Can between the two of you all take a look at this one and see if you all have anymore input.
Once I get agreement from you all on the raw content, I can squash / sort commits as needed and we can officially l-g-t-m
thanks

awesome thanks @otaviof !


WIP: Add support for iOS and Bluetooth printing

I'm opening this primarily for discussion and so you can see the differences that I have brought upon the plugin in getting it to work for our needs.
I would also like to double check and verify that I'm not clobbering your original functionality in any way, because that might be a bit of a step back.
The majority of the added code and files comes from Brother's example projects themselves, and as such, there may be some unnecessary additions.  The files were copied as is, and I only modified a few of them to suit my purposes.
There are currently some issues with iOS and bluetooth.  Specifically, iOS requires a modal popup for selecting or pairing with a bluetooth printer.  This modal popup, seemingly, is inconsistent at best.  Half the time selecting the printer doesn't seem to do anything.  Due to the issues I have encountered with iOS, as well as the workflow for selecting the printer being different, I have disabled the iOS bluetooth printing aspects.
These additions have removed some of the hard-coding that existed in the project.  As such, methods like findNetworkPrinters now returns a list of objects specifying the Discovered Printers.  You now have to manually set the printer by calling setPrinter and providing one of the printers returned from findNetworkPrinters, findPrinters, or findBluetoothPrinters.
Changes Overview

Add Bluetooth support for Android
Add Library support for iOS
Change findNetworkPrinters to return a list of Discovered Printers
Add the ability to specify which printer to print to with setPrinter
Add saved preferences on calls to setPrinter (This means that last printer selected will be saved into user preferences for the App itself, and will not need to be reset on launch, unless the address or something changes.)
Modify callback behavior of printViaSDK to return after success or failure.
Update version to 0.0.4
Rename plugin from com.threescreens.cordova.plugin.brotherPrinter to cordova-brother-label-printer
Add package.json file to support newer cordova plugin syntax.

TODO

Label size is currently hard-coded and specified on calls to setPrinter
The supported printer list only contains printers I have tested personally, Brother QL-720NW and Brother QL-820NWB.  With changes to allow for the changing of the label type, this would likely support all brother label printers, but it needs to be tested by someone with access.

Out of Scope

Print queue.  Brother Label Printers can only accept a single connection at a time, and as such can only print one job at a time.  A simple print queue can be made with Promises, but that's for the end user to implement.

@Ayiga this is some very good stuff! well done.
I don't know if @gordol will respond in time for the pull request, I've also forked a copy of this project and would like to know if you maybe can drop a pull request on my copy please? I'm busy with a warehouse scanning app and can do with this code!
Thanks and keep up the good work

niiiiiiceee. give me a bit to review, please. this is great stuff though, thanks!

methods like findNetworkPrinters now returns a list of objects specifying the Discovered Printers. You now have to manually set the printer by calling setPrinter and providing one of the printers returned from findNetworkPrinters, findPrinters, or findBluetoothPrinters.

Heh, that's pretty much how I actually had it originally when I hacked this together for an MVP that required it. I just pushed an array of printers through Cordova to JS and showed a list to choose from. However, the client asked us to hard-code the printer because we were deploying a bunch of these label printers along w/ an Android device to a bunch of end users. It was deemed too annoying to have them pick, so I just hard coded it. <_<

Print queue. Brother Label Printers can only accept a single connection at a time, and as such can only print one job at a time. A simple print queue can be made with Promises, but that's for the end user to implement.

Indeed! This can be an issue, depending on your deployment. It wasn't an issue for the project I did when I first created this, because we deployed the printer and device that prints along with a portable hotspot, and our device was the only device on the network with the printer, and our app only allowed one print at a time, in serial, as the printing was part of a user workflow.

@Ayiga can you please document the new plugin methods in the readme?

I changed the merge base to dev... going to accept this as-is, but let's get the readme up to date, and do some testing!

i put some placeholders in the readme for the docs...

@Ayiga This is looking really good :+1: .
Excellent work!  :1st_place_medal:


Standard hash to generate index of contract being snapshotted

Is your feature request related to a problem?
The current selection of the indexes of the pair contracts to snapshot out of the entire list available to the Uniswap V2 data market uses a non-standard hash function that may be unavailable or differ in its output when porting to other languages, frameworks or runtimes.
https://github.com/PowerLoom/snapshotter-lite-v2/blob/da390aad5b7a180183d6a62f68b4c515429562c2/snapshotter/modules/computes/trade_volume.py#L73-L79
Describe the solution you'd like
Use a standard one like keccak256.
Describe alternatives you've considered
NA
Additional context
NA

For reference: one of the open PRs on sequencer-dequeuer suggests the implementation of the index selection with keccak256.

This has been implemented in the specific compute branches of the data markets:
https://github.com/PowerLoom/snapshotter-computes/blob/ebb5bbf66122de45fae10c9ef908102e010a8b24/utils/helpers.py#L45-L51
https://github.com/PowerLoom/snapshotter-computes/blob/bcb435176282df66dcf7c94077491e7596337487/utils/helpers.py#L26-L32


Clarifying the file input format

Hi, I recently came across your article in Blood Advances and I'm interested in trying your program. I installed everything and the test ran successfully with all the outputs specified by your wiki. However, I'm confused about what input I should be giving to the program. Your wiki says that it should be raw counts, but when I looked through your text.csv file, it can't possibly be raw counts since they're not all integer values. In your supp, you converted your data to logCPM, normalized to TMM, and then standardized. Can you please clarify the format of my input? Also, will it be alright to feed in a dataset with all ensemble genes or should I also filter out noncoding/low count genes first? Thank you for your help and for this interesting software! It's an analysis that I had discussed with my PI before, but I lacked the informatics skills to do it.

Hi Ann, thanks for your interest! To answer your questions:

The counts in the test files are quantified by Salmon, which reports estimated counts and may be non-integers. TALLSorts doesn't enforce a need for counts inputs to be integers, and is robust to different counts quantification methods.
The default TALLSorts classification model essentially picks out and weights the most informative genes, a list of which can be found in Supp Table S6. So it doesn't matter if your input matrix is pre-filtered or not.

Hello! I have a follow-up query on the normalization question posed by @anncsun. Is converting data to logCPM, normalizing to TMM, and then standardizing required before running TALLSorts, or are these steps performed by the TALLSorts -s sample.csv function? Thank you!


Zenject 6.6.0 UWP compilation error

Got compilation errors with Zenject 6.6.0 under Unity 2017.4.24f1 UWP build under .NET 4.6:
Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs(105,22): error CS0428: Cannot convert method group 'ContainsGenericParameters' to non-delegate type 'bool'. Did you intend to invoke the method?

(Filename: Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs Line: 105)

Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs(141,42): error CS0428: Cannot convert method group 'ContainsGenericParameters' to non-delegate type 'bool'. Did you intend to invoke the method?

(Filename: Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs Line: 141)

Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs(148,46): error CS0428: Cannot convert method group 'ContainsGenericParameters' to non-delegate type 'bool'. Did you intend to invoke the method?

(Filename: Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs Line: 148)

Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs(148,30): error CS1662: Cannot convert lambda expression to intended delegate type because some of the return types in the block are not implicitly convertible to the delegate return type

(Filename: Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs Line: 148)

Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs(242,28): error CS0428: Cannot convert method group 'ContainsGenericParameters' to non-delegate type 'bool'. Did you intend to invoke the method?

(Filename: Assets\Plugins\Zenject\Source\Util\ReflectionInfoTypeInfoConverter.cs Line: 242)

solved them by uncommenting
#define ZEN_DO_NOT_USE_COMPILED_EXPRESSIONS
I think these are reflection baking related and it doesn't work on WSA?
Got in the logs:

Zenject reflection baking skipped because it is not currently supported on WSA platform!

Thanks for reporting this.  I've fixed this in https://github.com/svermeulen/Extenject with 1b319c762ec77a4b75e38151fe224d1005d1e261 and will add it to 6.6.1


question for uniform matcher

according to your code, the uniform matcher seems calculate the L1 distance between pred_bbox/anchor with target among batch imgs. but i think it should be computed within single img. another question is that i do not understand the fusion method of the anchor indices and the pred_box indices, why simply add the two indices?https://github.com/megvii-model/YOLOF/blob/61a8accf957dceef11ea8029f121922b5f60901e/playground/detection/coco/yolof/yolof_base/uniform_matcher.py#L77

Hi,
For the first question, the indexes are actually selected in each image. Using batch is an implementation to avoid loop calculation.
For the second question, you can refer to the answer here.

thanks for your answer! and i wonder whether it is suitable for light-weighted model such as yolov4tiny, and i am in experiment, the result is not well, i simply changed the backbone to the  yolov4tiny's, the map only got 13.8 as the input size is 320. could you give any suggestions?

Hi, we did not train tiny models before. But I am happy to help get reasonable results.
Could you provide more details about your modification? The backbone file, pre-trained models, and config file will be helpful.

i simply change the backbone according to the yolov4tiny, and the anchor of 512 is deleted since the limited img size. btw, the activation is replaced by leakyrelu. other setting is the same as cpsdarknet53-dc5.
class DarkNet(Backbone):
"""DarkNet backbone.
Refer to the paper for more details: https://arxiv.org/pdf/1804.02767
Args:
    depth (int): Depth of Darknet, from {53}.
    num_stages (int): Darknet stages, normally 5.
    with_csp (bool): Use cross stage partial connection or not.
    out_features (List[str]): Output features.
    norm_type (str): type of normalization layer.
    res5_dilation (int): dilation for the last stage
"""

arch_settings = {
    53: (DarkBlock, (1, 1, 1))
}

def __init__(self,
             depth,
             with_csp=True,
             out_features=["res5"],
             norm_type="BN",
             res5_dilation=1):
    super(DarkNet, self).__init__()
    if depth not in self.arch_settings:
        raise KeyError('invalid depth {} for resnet'.format(depth))
    self.with_csp = with_csp
    self._out_features = out_features
    self.norm_type = norm_type
    self.res5_dilation = res5_dilation

    self.block, self.stage_blocks = self.arch_settings[depth]
    self.inplanes = 64

    self._make_stem_layer()

    self.dark_layers = []
    for i, num_blocks in enumerate(self.stage_blocks):
        planes = 128 * 2 ** i
        dilation = 1
        stride = 2
        if i == 4 and self.res5_dilation == 2:
            dilation = self.res5_dilation
            stride = 1
        if not self.with_csp:
            layer = make_dark_layer(
                block=self.block,
                inplanes=self.inplanes,
                planes=planes,
                num_blocks=num_blocks,
                dilation=dilation,
                stride=stride,
                norm_type=self.norm_type
            )
        else:
            layer = make_cspdark_layer(
                block=self.block,
                inplanes=self.inplanes,
                planes=planes,
                num_blocks=num_blocks,
                is_csp_first_stage=True if i == 0 else False,
                dilation=dilation,
                norm_type=self.norm_type
            )
            layer = CrossStagePartialBlock(
                self.inplanes,
                planes,
                stage_layers=layer,
                is_csp_first_stage=True if i == 0 else False,
                dilation=dilation,
                stride=stride,
                norm_type=self.norm_type
            )
        self.inplanes = planes
        layer_name = 'layer{}'.format(i + 1)
        self.add_module(layer_name, layer)
        self.dark_layers.append(layer_name)

    # freeze stage<=2
    # for p in self.conv1.parameters():
    #     p.requires_grad = False
    # for p in self.bn1.parameters():
    #     p.requires_grad = False
    # for p in self.layer1.parameters():
    #     p.requires_grad = False
    # for p in self.layer2.parameters():
    #     p.requires_grad = False

def _make_stem_layer(self):
    self.conv1 = nn.Conv2d(
        3,
        32,
        kernel_size=3,
        stride=2,
        padding=1,
        bias=False
    )
    self.bn1 = get_norm(
        self.norm_type, 32, eps=1e-4, momentum=0.03
    )
    # self.act1 = Mish()
    self.act1 = LeakyReLU()

    self.conv2 = nn.Conv2d(
        32,
        self.inplanes,
        kernel_size=3,
        stride=2,
        padding=1,
        bias=False
    )
    self.bn2 = get_norm(
        self.norm_type, self.inplanes, eps=1e-4, momentum=0.03
    )
    self.act2 = LeakyReLU()

def forward(self, x):
    outputs = {}
    x = self.conv1(x)
    x = self.bn1(x)
    x = self.act1(x)
    x = self.conv2(x)
    x = self.bn2(x)
    x = self.act2(x)

    for i, layer_name in enumerate(self.dark_layers):
        layer = getattr(self, layer_name)
        x = layer(x)
    outputs[self._out_features[-1]] = x
    return outputs

def output_shape(self):
    return {
        "res3": ShapeSpec(
            channels=512, stride=16 if self.res5_dilation == 2 else 32
        )
    }

Ok, I will try it.

Thx for your reply! Another question is that wheather the multi-scale training and swa are included?

Multi-scale training is supported by Detectron2. You can refer to this repo for swa.
The results for the multi-scale training and saw are not included in this repo. You can try them yourself.

thx a lot! i find that when i change the test img size from 608 to 320, the performance drops a lot. map drops from 43.2 to 34.5. The performance degradation is significant in small and medium object (small object map drops from 22.8 to 11.8, medium object map drops from 47.2 to 36.4). compare to yolov4 with the input size of 320, the small object detection of yolof is not satisfying, is there any suggestions to improve is?

You may need to re-train YOLOF with small image sizes. The provided pre-train model is trained with relatively large image sizes (from 512 to 768), which is not suitable to test with image size 320.


fix(get physical card): bad margins affecting personal details addres…

Details

This PR fixes the extra margin on the address page of the personal details
Fixed Issues

$ https://github.com/Expensify/App/issues/31704
PROPOSAL:

Refactor get physical card flow margins in order to fix the extra padding of 20px on address form.

Tests

Go to Settings > Profile > Personal Details
Click on Address
Notice the padding is no longer present

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Reviewing from https://expensify.slack.com/archives/C01GTK53T8Q/p1700696725278979?thread_ts=1700662727.617069&cid=C01GTK53T8Q

@situchan I am already available. I will take care of review

Ah ok, @abdulrahuman5196 please go ahead

Kindly add the platform videos. @pac-guerreiro

@pac-guerreiro Kindly add screenshots for all platforms, so that we know this change won't break anything else.

@abdulrahuman5196 It is done! Sorry for the wait!

Waiting on @abdulrahuman5196's review!

Hi, Will review in my morning.

Thanks @abdulrahuman5196!

@pac-guerreiro
This PR has also changes to Physical card pages, but still none of the screenshots are present in the authors checklist.
Anyways for time sake I will continue testing.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/46707890/520152d5-6625-448f-9b22-8bd4ab1c708d

Android: mWeb Chrome

https://github.com/Expensify/App/assets/46707890/ed7a8ad7-0627-4a45-a4fe-beb44d6e6222

iOS: Native

https://github.com/Expensify/App/assets/46707890/c5bea954-266e-4e9c-9299-b39e8d4197b3

iOS: mWeb Safari

https://github.com/Expensify/App/assets/46707890/ac9b1327-22cc-41f6-ac37-f30ff6136dcb

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/46707890/dae84b4c-931f-4a0b-8ab6-2c895f84a1cc

MacOS: Desktop

https://github.com/Expensify/App/assets/46707890/2b553527-3714-4a24-812f-aee17136455c

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to production by https://github.com/mountiny in version: 1.4.5-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


29 public discourse

This branch contains work in progress on #29 public discourse analysis:

In the current implementation, you can collect and preprocess articles from the Guardian using 03_public_discourse_data_collection_and_preprocessing.py
You can then identify key related terms and phrases and how they are used together with the terms of interest using 04_key_phrases_over_time.py
Most utility functions reside in discours_utils.py within analysis
I've uploaded
article_text_heat_pumps.csv
so that the analysis can be performed without setting up Guardian API account

Checklist:

[ ] I have refactored my code out from notebooks/
[x] I have checked the code runs
[ ] I have tested the code
[x] I have run pre-commit and addressed any issues not automatically fixed
[ ] I have merged any new changes from dev
[ ] I have documented the code

[x] Major functions have docstrings
[ ] Appropriate information has been added to READMEs

[x] I have explained the feature in this PR or (better) in output/reports/
[x] I have requested a code review

Hey @djyldyz, I guess this an old/obsolete PR and can be closed without merging?

Hi there, yes, the code from this PR was incorporated into smaller more specific PRs.


Figure out a way to enable nodes in distributed graphs to send html snippets to the UI of the user who owns the root subgraph.

rendered combined root & leaf graph onto main page.


Make unyt checking more robust and bug fixes

This PR was originally limited to replacing kwargs CBMC parameters with MoveSet CBMC parameters, but has since grown to include other fixes/nits and (hopefully) more robust checking on the unyt_arrays in particular.
See commit messages for a more complete description of all the changes.
Tests are passing but I still want to check coverage and go examine with a closer inspection prior to merging.

@rmatsum836 Do you think we are good to merge this? This has been working pretty well for me.

My bad, I forgot about this notification.  Yes, I think this is good to merge.  I tested it out a couple weeks ago and it was working well for me.