Error while building fuzi_q

i am getting below error when i tried to build fuzi_q
root@ubuntu:~/fuzi_q# make
[  7%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer.c.o
[ 15%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer_frames.c.o
[ 23%] Building C object CMakeFiles/fuzy_q_core.dir/lib/client.c.o
/root/fuzi_q/lib/client.c: In function ‘fuzi_q_start_connection’:
/root/fuzi_q/lib/client.c:96:27: error: passing argument 5 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ makes pointer from integer without a cast [-Werror=int-conversion]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                           ^~~~~~~~~~~~
      |                           |
      |                           uint64_t {aka long unsigned int}
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:18: note: expected ‘const char **’ but argument is of type ‘uint64_t’ {aka ‘long unsigned int’}
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |     ~~~~~~~~~~~~~^~~~~~~~~~~
/root/fuzi_q/lib/client.c:96:41: error: passing argument 6 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ from incompatible pointer type [-Werror=incompatible-pointer-types]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                                         ^~~~~~~~~~~~
      |                                         |
      |                                         const char **
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:41: note: expected ‘uint32_t *’ {aka ‘unsigned int *’} but argument is of type ‘const char **’
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |                               ~~~~~~~~~~^~~~~~~~~~~~~~
/root/fuzi_q/lib/client.c:95:9: error: too many arguments to function ‘picoquic_demo_client_get_alpn_and_version_from_tickets’
   95 |     if (picoquic_demo_client_get_alpn_and_version_from_tickets(fuzi_q_ctx->quic, PICOQUIC_TEST_SNI, alpn,
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:101:5: note: declared here
  101 | int picoquic_demo_client_get_alpn_and_version_from_tickets(picoquic_quic_t* quic,
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [CMakeFiles/fuzy_q_core.dir/build.make:104: CMakeFiles/fuzy_q_core.dir/lib/client.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:90: CMakeFiles/fuzy_q_core.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
root@ubuntu:~/fuzi_q#

am i missing anything here? @huitema

Have you tried compiling the latest version of picoquic before compiling fuzi-q?

yes,i tried latest version of picoquic only

picoquic git log
commit 510e031eda698e6d3ade377226dfea3644be771b (HEAD -> master, origin/master, origin/HEAD)
Merge: 349fb2ec 0d0f31c5
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 28 22:25:58 2023 -0800

    Merge pull request #1605 from private-octopus/pathch-tie-issues

    Fix time issues

picotls git log
commit df13092f6c5c2f08c5227e096a1590603229dfc8 (HEAD -> master, origin/master, origin/HEAD)
Merge: 020bca0 6ea0811
Author: Kazuho Oku<EMAIL_ADDRESS>Date:   Mon Dec 4 10:45:37 2023 +0900

    Merge pull request #497 from kazuho/pull/497

    Replace the TLS_AEGIS_256_SHA384 ciphersuite with TLS_AEGIS_256_SHA512

fuzi_q git log
root@ubuntu:~/fuzi_q# make
[  7%] Building C object CMakeFiles/fuzy_q_core.dir/lib/client.c.o
/root/fuzi_q/lib/client.c: In function ‘fuzi_q_start_connection’:
/root/fuzi_q/lib/client.c:96:27: error: passing argument 5 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ makes pointer from integer without a cast [-Werror=int-conversion]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                           ^~~~~~~~~~~~
      |                           |
      |                           uint64_t {aka long unsigned int}
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:18: note: expected ‘const char **’ but argument is of type ‘uint64_t’ {aka ‘long unsigned int’}
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |     ~~~~~~~~~~~~~^~~~~~~~~~~
/root/fuzi_q/lib/client.c:96:41: error: passing argument 6 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ from incompatible pointer type [-Werror=incompatible-pointer-types]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                                         ^~~~~~~~~~~~
      |                                         |
      |                                         const char **
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:41: note: expected ‘uint32_t *’ {aka ‘unsigned int *’} but argument is of type ‘const char **’
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |                               ~~~~~~~~~~^~~~~~~~~~~~~~
/root/fuzi_q/lib/client.c:95:9: error: too many arguments to function ‘picoquic_demo_client_get_alpn_and_version_from_tickets’
   95 |     if (picoquic_demo_client_get_alpn_and_version_from_tickets(fuzi_q_ctx->quic, PICOQUIC_TEST_SNI, alpn,
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:101:5: note: declared here
  101 | int picoquic_demo_client_get_alpn_and_version_from_tickets(picoquic_quic_t* quic,
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [CMakeFiles/fuzy_q_core.dir/build.make:104: CMakeFiles/fuzy_q_core.dir/lib/client.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:90: CMakeFiles/fuzy_q_core.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q# git log
commit f7da9ea94c336c2f6b51d4f9762f532b7018fa54 (HEAD -> main, origin/main, origin/HEAD)
Merge: 852f444 6a5ca08
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Fri Sep 22 20:18:36 2023 -0700

    Merge pull request #21 from private-octopus/weird-assembly

    Add minicrypto library in FindPTLS

commit 6a5ca08893f4e680a1581f7ad74b1b0aabe3311a (origin/weird-assembly)
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Fri Sep 22 20:06:23 2023 -0700

    Fix call to sha256 (lower case)

commit e9316dbc9bf53a0c3b1aa789ba6c48e449632448
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Fri Sep 22 18:15:08 2023 -0700

    always use the latest version of picotls

this is the commit having issues
https://github.com/private-octopus/picoquic/commit/f4e2b8ef2c870441b5d47414bf3f7d9055c8df61
root@ubuntu:~/picoquic# git log
commit f4e2b8ef2c870441b5d47414bf3f7d9055c8df61 (HEAD)
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Wed Dec 27 16:35:39 2023 -0800

    Ticket store uses tls time

commit 349fb2ecd1a5392436c5fb2dc2b760e5b224332d (origin/improve-coverage)
Merge: a5acc71f ae367ec2
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 22:04:35 2023 -0800

    Merge pull request #1602 from private-octopus/improve-coverage

    Improve coverage of the text logger functions

commit ae367ec23f53a4d273f319081da3553763d59f48
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 21:30:20 2023 -0800

    Fix integer overflow with new token

commit d16a068a90a551c0465ad37cafc2e02a234551e5
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:54:33 2023 -0800

    Work around the optimizer

commit a2770ce34fe760a8263d58532067831db89e1a79
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:28:33 2023 -0800

    Add zero-effect mbdedtls load.

commit 339fc522b2fa38b79675ecd4b40d85566a436049
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:17:52 2023 -0800

    Fix of binlog and textlog ref

commit 5520ec4e4f0e5fa066503f36c80bf153a41320b4
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 18:32:33 2023 -0800
root@ubuntu:~/picoquic#
root@ubuntu:~/picoquic# cd -
/root/fuzi_q
root@ubuntu:~/fuzi_q# make
[  7%] Building C object CMakeFiles/fuzy_q_core.dir/lib/client.c.o
/root/fuzi_q/lib/client.c: In function ‘fuzi_q_start_connection’:
/root/fuzi_q/lib/client.c:96:27: error: passing argument 5 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ makes pointer from integer without a cast [-Werror=int-conversion]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                           ^~~~~~~~~~~~
      |                           |
      |                           uint64_t {aka long unsigned int}
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:18: note: expected ‘const char **’ but argument is of type ‘uint64_t’ {aka ‘long unsigned int’}
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |     ~~~~~~~~~~~~~^~~~~~~~~~~
/root/fuzi_q/lib/client.c:96:41: error: passing argument 6 of ‘picoquic_demo_client_get_alpn_and_version_from_tickets’ from incompatible pointer type [-Werror=incompatible-pointer-types]
   96 |         proposed_version, current_time, &ticket_alpn, &ticket_version) == 0) {
      |                                         ^~~~~~~~~~~~
      |                                         |
      |                                         const char **
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:103:41: note: expected ‘uint32_t *’ {aka ‘unsigned int *’} but argument is of type ‘const char **’
  103 |     char const** ticket_alpn, uint32_t* ticket_version);
      |                               ~~~~~~~~~~^~~~~~~~~~~~~~
/root/fuzi_q/lib/client.c:95:9: error: too many arguments to function ‘picoquic_demo_client_get_alpn_and_version_from_tickets’
   95 |     if (picoquic_demo_client_get_alpn_and_version_from_tickets(fuzi_q_ctx->quic, PICOQUIC_TEST_SNI, alpn,
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /root/fuzi_q/include/fuzi_q.h:30,
                 from /root/fuzi_q/lib/client.c:31:
/root/picoquic/picohttp/democlient.h:101:5: note: declared here
  101 | int picoquic_demo_client_get_alpn_and_version_from_tickets(picoquic_quic_t* quic,
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [CMakeFiles/fuzy_q_core.dir/build.make:104: CMakeFiles/fuzy_q_core.dir/lib/client.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:90: CMakeFiles/fuzy_q_core.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
root@ubuntu:~/fuzi_q#

last working commit
https://github.com/private-octopus/picoquic/commit/349fb2ecd1a5392436c5fb2dc2b760e5b224332d
root@ubuntu:~/picoquic# git log
commit 349fb2ecd1a5392436c5fb2dc2b760e5b224332d (HEAD, origin/improve-coverage)
Merge: a5acc71f ae367ec2
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 22:04:35 2023 -0800

    Merge pull request #1602 from private-octopus/improve-coverage

    Improve coverage of the text logger functions

commit ae367ec23f53a4d273f319081da3553763d59f48
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 21:30:20 2023 -0800

    Fix integer overflow with new token

commit d16a068a90a551c0465ad37cafc2e02a234551e5
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:54:33 2023 -0800

    Work around the optimizer

commit a2770ce34fe760a8263d58532067831db89e1a79
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:28:33 2023 -0800

    Add zero-effect mbdedtls load.

commit 339fc522b2fa38b79675ecd4b40d85566a436049
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 20:17:52 2023 -0800

    Fix of binlog and textlog ref

commit 5520ec4e4f0e5fa066503f36c80bf153a41320b4
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 18:32:33 2023 -0800

    Fix binlog after changes in tests

commit 67ec005773ce5806e75add1b00d9538561a22220
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Thu Dec 21 18:15:40 2023 -0800
root@ubuntu:~/picoquic#
root@ubuntu:~/picoquic#
root@ubuntu:~/picoquic#
root@ubuntu:~/picoquic# cd -
/root/fuzi_q
root@ubuntu:~/fuzi_q# cmake .
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Picoquic/include: /root/picoquic/picoquic;/root/picoquic/loglib;/root/picoquic/picohttp
-- Picohttp library: /root/picoquic/libpicoquic-core.a;/root/picoquic/libpicoquic-log.a;/root/picoquic/libpicohttp-core.a
-- picotls/include: /root/picotls/include
-- picotls libraries: /root/picotls/libpicotls-core.a;/root/picotls/libpicotls-openssl.a;/root/picotls/libpicotls-fusion.a;/root/picotls/libpicotls-minicrypto.a
-- root:
-- OpenSSL_VERSION: 3.0.2
-- OpenSSL_INCLUDE_DIR: /usr/include
-- OpenSSL_LIBRARIES: /usr/lib/x86_64-linux-gnu/libssl.so;/usr/lib/x86_64-linux-gnu/libcrypto.so
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /root/fuzi_q
root@ubuntu:~/fuzi_q# make
[  7%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer.c.o
[ 15%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer_frames.c.o
[ 23%] Building C object CMakeFiles/fuzy_q_core.dir/lib/client.c.o
[ 30%] Building C object CMakeFiles/fuzy_q_core.dir/lib/server.c.o
[ 38%] Building C object CMakeFiles/fuzy_q_core.dir/lib/context.c.o
[ 46%] Linking C static library libfuzy_q_core.a
[ 46%] Built target fuzy_q_core
[ 53%] Building C object CMakeFiles/fuzi_q_tests.dir/tests/basic_test.c.o
[ 61%] Building C object CMakeFiles/fuzi_q_tests.dir/tests/context_tests.c.o
[ 69%] Linking C static library libfuzi_q_tests.a
[ 69%] Built target fuzi_q_tests
[ 76%] Building C object CMakeFiles/fuzi_q.dir/src/fuzi_q.c.o
[ 84%] Linking C executable fuzi_q
[ 84%] Built target fuzi_q
[ 92%] Linking C executable fuzi_qt
[100%] Built target fuzi_qt
root@ubuntu:~/fuzi_q#

Sorry about that. I should have updated fuzi-q after updating picoquic. Fixed in PR #28

able to complie now
root@ubuntu:~/fuzi_q# make
[  7%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer.c.o
[ 15%] Building C object CMakeFiles/fuzy_q_core.dir/lib/fuzzer_frames.c.o
[ 23%] Building C object CMakeFiles/fuzy_q_core.dir/lib/client.c.o
[ 30%] Building C object CMakeFiles/fuzy_q_core.dir/lib/server.c.o
[ 38%] Building C object CMakeFiles/fuzy_q_core.dir/lib/context.c.o
[ 46%] Linking C static library libfuzy_q_core.a
[ 46%] Built target fuzy_q_core
[ 53%] Building C object CMakeFiles/fuzi_q_tests.dir/tests/basic_test.c.o
[ 61%] Building C object CMakeFiles/fuzi_q_tests.dir/tests/context_tests.c.o
[ 69%] Linking C static library libfuzi_q_tests.a
[ 69%] Built target fuzi_q_tests
[ 76%] Building C object CMakeFiles/fuzi_q.dir/src/fuzi_q.c.o
[ 84%] Linking C executable fuzi_q
[ 84%] Built target fuzi_q
[ 92%] Building C object CMakeFiles/fuzi_qt.dir/src/fuzi_qt.c.o
[100%] Linking C executable fuzi_qt
[100%] Built target fuzi_qt
root@ubuntu:~/fuzi_q#
root@ubuntu:~/fuzi_q# git log
commit 8c15c9ff179000afa5b6e218938c34d82525075e (HEAD -> main, origin/main, origin/HEAD)
Merge: f7da9ea db9fa44
Author: Christian Huitema<EMAIL_ADDRESS>Date:   Sat Dec 30 12:51:33 2023 -0800

    Merge pull request #28 from private-octopus/align-picoquic-december-2023

    Fix call to ticket retrieval

Thank you @huitema


hello world in chinese

adding hello world in chinese

ISO Correct ✅
Spellings Correct ✅
Approved

hey @alhuang2 what is your account #?

It's  08b8b85b3a63615d295fd123ce7b7209b3650c550db6dccdf355ed6dbc048ec7
Thanks!
On Thu, Nov 5, 2020 at 11:20 PM Justin Kim<EMAIL_ADDRESS>wrote:

hey @alhuang2 https://github.com/alhuang2 what is your account #?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/thenewboston-developers/Website/pull/480#issuecomment-722922037,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADUYMOWYWIJCRSMHHH63TE3SOOPUDANCNFSM4TL3YATQ
.

Referring to issue id #351


Bug when using ESP32 with Arduino ESP32 V2.0.2 (based on esp-idf v4.4)

Flashing using esp tool is OK
esptool.exe --chip esp32 --port COM6 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0xe000 boot_app0.bin 0x1000 Programm.ino.bootloader.bin 0x10000 Programm.ino.bin 0x8000 Programm.ino.partitions.bin
But when esp web tools are used (V6.1.1, V5.3.0 tested too) the endless reset loop is shown in terminal log:
rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:12804
ho 0 tail 12 room 4
load:0x40080400,len:3032
entry 0x400805e4

Manifest file used:
{
  "name": "Program",
  "version": "11",
  "builds": [
    {
      "chipFamily": "ESP32",
      "parts": [
        { "path": "Programm.ino.bootloader.bin", "offset": 4096 },
        { "path": "Programm.ino.partitions.bin", "offset": 32768 },
        { "path": "boot_app0.bin", "offset": 57344 },
        { "path": "Programm.ino.bin", "offset": 65536 }
      ]
    }
  ]
}

Flashing with ESP32 download tool (V3.8.8) is also OK:
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0030,len:1184
load:0x40078000,len:12804
ho 0 tail 12 room 4
load:0x40080400,len:3032
entry 0x400805e4
Booting...

Another important observation:

If I flash Arduino-ESP32 V1.0.6 based software using esptool or esp32 downloader, then I can update via OTA to Arduino-ESP32 V2.0.2 based software and it works.
If I flash Arduino-ESP32 V1.0.6 based software using web tools, then I can update via OTA to Arduino-ESP32 V2.0.2 based software BUT it doesnt work (the same error as above).

I am very curious to this one, as I do get this with my own development building ESP32 v2.0.2.
So I guess it may have to do with wrong bootloader file, incorrect offset, etc.

Well, I use exactely the same files and offsets as esptool uses. It must be difference inthe flash process, I suppose...

Have you tried flash mode dout (with the corresponding bootloader file)?

I have identifiend the problem a little bit: In the bootloader.bin file, that is flashed to addr 0x1000, the fourth byte is 0x2F. When I am flashing using esptool or ESP32 downloader, it is also 0x2F in the flash (at addr. 0x1003, check reading back with esptool). When flashing using web tools, it is 0x2F.
Double check:

flashing using web tool -> not OK
then flashing just the bootloader at addr. 0x1000 using ESP32 downloader --> now it works.

So it seems that web tool somehow change this byte from 0x2F to 0x20 while flashing.

Can you also check the file you're flashing?
What if ESP32 downloader does set a bit there based on the flash mode, where the web flasher does just copy it?

Of course I have cheked it, the oroginal file has correct 0x2F.

The really strange thing here is that I'm experiencing similar behavior when flashing from my IDE and when I flash the built file via Espressif's downloader tool. But only if I work with 16M images. (or built for 16M flash)
If I flash a build made for 4M flash it works just fine, regardless whether I flash it to a 4M or 16M flash unit.
This is happening since Arduino ESP32 v2.0.2
So it seems as if there is something funky with the boot sequence in this newer Arduino ESP32 config and I have no idea anymore where to look for.
I can still try to flash it using the IDE => will boot-loop
And then flash the bootloader file as you did.

Just installed Tasmota32-OdroidGo via WebInstaller https://arendst.github.io/Tasmota-firmware/ Deleted flash, device started with no problem. It is a 16Mbyte flash device and 10Mbyte is used with LittleFS

OK, it works, for example, when compiled with DOUT and 40 MHz and the respective bootloader is used (it has already 0x20 in the fourth byte).

Yes, using the bootloader with the same flash mode and speed where the firmware is build is necessary.

ESP Web Tools uses ESP Web Flasher to flash the image. There is some image patching logic in there: https://github.com/NabuCasa/esp-web-flasher/blob/main/src/esp_loader.ts#L769-L844

Thank you, now everything make sense: ESP Web Flasher alsways change the fourth byte to 0x20 (dio, 40 MHz). Apparently Arduino-ESP32 V2.0.2 based firmware do not accept this change and can not be executed. If it is already based on bootloader tat has 0x20, then nothing is changed by ESP Web Flasher during flashing process and it works fine.
The question is: why the ESP Web Flasher do this change? The code says "For now we always select 40m, a common value supported by many flash chips and ESP boards" and it was probably ok for arduino-ESP32 V1.0x based code, but is not OK for Arduino-ESP32 V2.0.x based code.

Patching flash mode and speed is ALWAYS https://github.com/NabuCasa/esp-web-flasher/blob/main/src/esp_loader.ts#L817-L820 a bad idea (imho a bug).
It cripples devices AND there are devices which are NOT working with mode DIO.
The mode which works for all is only DOUT.

We didn’t write the flashing code. We ported the Adafruit code to be able to re-use it in other NPM packages (this one!) and added compression. I don’t understand that part of the code and would need in understanding what needs to be changed.
ESPFlasher doesn’t have this option. How do other flash tools do this?

I think Adafruit has introduced this bin file modification because they know their hardware. The (probably most original) tool for ESP32 from espressif (ESP32 flash downaload tool) has basically two options (selectable by a checkbox):

either to change bin files according to the chip capabilities detected (but I dont know what exactely they change),
or not to change anything in bin files (=the user is responsbile to use the hardware that is compatible to the bin files)

I think this second option would be the best for a tool that is general and is not intended for a dedictaed hardware. --> Just delete these lines from teh code.
The firs option can be basically introduced (ba a kind of option), the condition is however that we would know exactely what and how to change in bin files. The present code does not do it apparently in a right way, generally.

Espressif's "download tool" does have a checkbox to not change the things you try to flash.

yes, fast fix, remove the patching.

[...]

I think this second option would be the best for a tool that is general and is not intended for a dedictaed hardware. --> Just delete these lines from teh code. The firs option can be basically introduced (ba a kind of option), the condition is however that we would know exactely what and how to change in bin files. The present code does not do it apparently in a right way, generally.

Not 100% sure that is the best option, as it seems there is also some dependency on the used crystal.
At least on ESP8266 the crystal can be 26 or 40 MHz. It looks like this may also be true for ESP32, but so far I have not seen (or not remember to have seen) 26 MHz crystals.

There is the information from espressif (https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/bootloader.html)
Now it is clear why the behaviour is different for Arduino-ESP32 V2.0.2 (esp-idf 4.4) based SW and Arduino-ESP32 V1.0.x (esp-idf 3.x) based SW. This is also a clear argument to remove this code (because just changing the boatloader header is meaningles since esp-idf V4.0).
"Each ESP-IDF application or bootloader .bin file contains a header with CONFIG_ESPTOOLPY_FLASHMODE, CONFIG_ESPTOOLPY_FLASHFREQ, CONFIG_ESPTOOLPY_FLASHSIZE embedded in it. These are used to configure the SPI flash during boot.
The First stage bootloader in ROM reads the Second stage bootloader header information from flash and uses this infomation to load the rest of the Second stage bootloader from flash. However, at this time the system clock speed is lower than configured and not all flash modes are supported. When the Second stage bootloader then runs, it will reconfigure the flash using values read from the currently selected app binary’s header (and NOT from the Second stage bootloader header). This allows an OTA update to change the SPI flash settings in use.
Bootloaders prior to ESP-IDF V4.0 used the bootloader’s own header to configure the SPI flash, meaning these values could not be changed in an update. To maintain compatibility with older bootloaders, the app re-initializes the flash settings during app startup using the configuration found in the app header."

That does explain A LOT!!
Thanks!


Support prettier 2.3

@adamzapasnik I made a start here, but wasn't able to complete it unfortunately: https://github.com/adamzapasnik/prettier-html-templates/pull/48


Problem about train_partseg

ModuleNotFoundError: No module named 'models.Hengshuang'??

I have tested with hydra==1.2.0 with no problems, can you pull the latest code and try again?

I wil try that.Thanks for your reply!

我尝试过pip install hydra-core --upgrade 也成功了
但是依旧有这样的错误  怎么会 module not found?

classifier = getattr(importlib.import_module('models.{}.model'.format(args.model.name)), 'PointTransformerSeg')(args).cuda()
    #######################
    ####error executing job with overridrs:[]
    ##### modulenotFoundERROR: no module named   'models.Hengshuang '

------------------ 原始邮件 ------------------
发件人:                                                                                "qq456cvb/Point-Transformers"                                                                                @.>;
发送时间: 2023年4月4日(星期二) 中午12:24
@.>;
<EMAIL_ADDRESS>主题: Re: [qq456cvb/Point-Transformers] Problem about train_partseg (Issue #37)
I have tested with hydra==1.2.0 with no problems, can you pull the latest code and try again?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Make sure you have exported current directory to env variable PYTHONPATH

Hi,
You can currently borrow the code from L133 of train_cls.py to test the results. In order to visualize, you can use visdom with labels set. I will update test files once I have more time.


[e2e]: generic release main default slsa3

Repo: https://github.com/slsa-framework/example-package/tree/v24.0.504
Run: https://github.com/slsa-framework/example-package/actions/runs/9072676889
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.release.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.release.main.default.slsa3.yml
Trigger: release
Branch: v24.0.504
Date: Tue May 14 02:15:54 UTC 2024

Repo: https://github.com/slsa-framework/example-package/tree/v24.0.505
Run: https://github.com/slsa-framework/example-package/actions/runs/9088956271
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.release.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.release.main.default.slsa3.yml
Trigger: release
Branch: v24.0.505
Date: Wed May 15 02:19:17 UTC 2024
Tests are passing now. Closing this issue.


Is there a way to access to the fullKeyList ?

Hello,
I need to load the keys dynamically so I would loop over a struct to get the keys to load.
But I could have the same key at multiple locations in my struct.
So I need to be able to detect if my current key is already defined in my serializer to avoid throwing an exception.
Here is part of my code :
serializer = new JSONSerializer()
    .asInteger( "clientId" )
    .asInteger( "dateEnd" )
    .asInteger( "dateStart" )
    .asString( "publishTarget" )
    .asString( "ip" )
    .asString( "language" )
    ...
;

for (key in struct){
    if (NOT structKeyExists( serializer.fullKeyList, key)){
        serializer = serializer.asAny(key);
    }
}

Is the fullKeyList available outside the component or do I have to add a getter ?
Cédric

How can you have the same key in a struct more than once? Isn't a struct key unique by definition? Would you please show how you are defining your struct?

The same key could be at different levels with structs containing structs


[Feature Request] Update admin tools dockerfile to run under non-root user

Please update admin tools dockerfile to run under non-root user like it's done with the server dockerfile.

Could you elaborate on why this is an issue?

It's best practise to not run things as root that don't need it. It reduces the risk of vulnerabilities that can be used to escape the container.

Interesting, I thought that rootless mode was enough.
This is what I found: https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html.
It looks like the recommendation is to run as non-root, no matter if you run as rootless.


[1.19] backport #19971 SDS: reduce cost of secret update

Commit Message:
Backport #19971
Signed-off-by: Yuchen Dai<EMAIL_ADDRESS>Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

/wait

/retest

It seems the macos failure is unrelated
ERROR: /Users/runner/work/1/s/source/exe/BUILD:23:16: Linking source/exe/envoy-static failed: (Aborted): cc_wrapper.sh failed: error executing command
  (cd /private/var/tmp/_bazel_runner/3d1a7f52fd47fc9a8db71770aacd13e5/sandbox/darwin-sandbox/3950/execroot/envoy && \
  exec env - \
    APPLE_SDK_PLATFORM=MacOSX \
    APPLE_SDK_VERSION_OVERRIDE=12.1 \
    PATH=/usr/local/bin:/opt/local/bin:/usr/bin:/bin \
    XCODE_VERSION_OVERRIDE=<IP_ADDRESS>C100 \
  external/local_config_cc/cc_wrapper.sh @bazel-out/darwin-fastbuild/bin/source/exe/envoy-static-2.params)
Execution platform: @local_config_platform//:host

Use --sandbox_debug to see verbose messages from the sandbox
clang: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]

/retest

/retest

I tried building this locally to debug, and realized I can't build 1.19 on mac at all, because something in cmake_external for zlib can't find cmake in the PATH.

@ggreenway And the issue at your side and in this macos ci are irrelevant because CI failed at the last step linking envoy-static binary
Does it mean there are two issues?

@ggreenway And the issue at your side and in this macos ci are irrelevant because CI failed at the last step linking envoy-static binary
Does it mean there are two issues?

I think my local issue is because cmake is at /opt/brew/bin, which I think is not standard but it is in my PATH, but bazel/cmake overrides my PATH. It fails for me very early in the build, so that doesn't affect CI.
It just means I can't help debug it locally.

@ggreenway im wondering if we can land this address the macos fail separately - checking the postsubmit queue for this branch, it seems the error was already there

@phlax that's fine with me.

Great! @ggreenway Will you merge this?

Great! @ggreenway Will you merge this?

No, I don't have permission. You need a repo-admin to do it. cc @mattklein123 or @alyssawilk or @lizan

Can we make sure to get a tracking bug for the test failure?

@alyssawilk I created issue
I can create another backport to verify :)

Thanks @lambdai !  assigned it to the release folks :-)


Locked rake version to ~11.3.0

@rtyler
Rake 12.0 replaced "last_comment" with "last_description".
This describes the issue and possible fix:
http://stackoverflow.com/questions/35893584/nomethoderror-undefined-method-last-comment-after-upgrading-to-rake-11
Rather than upgrade rspec to 3.5.x and risk changes to test behavior, I've locked rake to the last version before 12.0.

lol ruby


don't pull pop item off queue until client confirms complete with processing

Queue Adapter needs to support two phased pop

this has now been implemented through 33e71d086c04bbfbfd3a68ecd646106d5bf362f4


Fix routine leak

Description
writeLoop routine can be leaked if the connection is lost when there is no writing packet.
So, writeLoop should also be stopped if readLoop is stopped.
And, closeWriteLoopCh should be closed, even if netConn.Close() returned error.
Additional resources
After running the system using webrtc.PeerConnection for a while on the real environment, pprof could find routine leaks.
goroutine profile: total 92
79 @ 0x42dcbb 0x43da76 0x78de46 0x45b161
#	0x78de45	github.com/pion/sctp.(*Association).writeLoop+0x1b5	/go/pkg/mod/github.com/pion/sctp@v1.6.4/association.go:426

2 @ 0x42dcbb 0x42dd63 0x404e8d 0x404c65 0x79b63b 0x7ab3f6 0x45b161
#	0x79b63a	github.com/pion/sctp.(*Association).onRetransmissionFailure+0x41a	/go/pkg/mod/github.com/pion/sctp@v1.6.4/association.go:2003
#	0x7ab3f5	github.com/pion/sctp.(*rtxTimer).start.func1+0x175			/go/pkg/mod/github.com/pion/sctp@v1.6.4/rtx_timer.go:158

The number of the writeLoop routine seems increased after retransmission failure: T1-init on my environment.
Heap memory was also leaked like:

and these memory leaks disappeared after applying this PR.

Codecov Report

Merging #56 into master will increase coverage by 0.1%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master      #56     +/-   ##
=========================================
+ Coverage   75.68%   75.79%   +0.1%
=========================================
  Files          43       43
  Lines        2612     2611      -1
=========================================
+ Hits         1977     1979      +2
+ Misses        512      509      -3
  Partials      123      123

Impacted Files
Coverage Δ

association.go
81.56% <100%> (+0.27%)
:arrow_up:

Continue to review full report at Codecov.

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

@enobufs I have addressed your comment. PTAL

Thanks @at-wat for your contribution!


Swackets not working properly in CSS

No clue at all as to why this would happen, but Swackets simply do not work in CSS projects.

Hmm weird, i'll look into it thanks!
Sorry for inbconvience.

I've looked into this thanks Spaghetti..
Unfortunately due to the way Atom tokenizes syntax it is unable to label braces in that format, it treats them as a property-list with the braces outside of the syntax (its very weird if you check text editor DOM inspect element) because of this inconvient syntaxing I cannot highlight them as braces under the current structure. I originally tried to identify & label swackets similarly to a token parser and just iterate through entire text contents (but that is way too slow to be feasible ATM) so piggyback on Atom's existing syntax tokenizer in the dom... so long story short I cannot fix this reliabily whilst keeping it even close to viable, for now sorry. Just cross your fingers and maybe one day (Atom 1.1 etc) there may be a feasible update to allow CSS swackets, sorry!


Tensor operations: solve and dot

implementation of the operation: solve and dot between TensorMap and TensorBlock.

dot: gives a TensorMap y = dot(X,w) where y has the same keys as X and w.
The blocks inside y are the dot product of the corresponding blocks in X and w, they have the same samples of the blocks in X and the properties of the blocks in w.
solve: given two TensorMaps it finds the w s.t.  y = dot(X,w). The keys are always the same for all the TensorMaps. The TensorBlocks of w have the samples of y and the properties of x.

thinks to do

[ ] try linear model with soap
[ ] now solve does automatically lstq if the input matrices are not squares, we might want to have two functions.
[ ] run test with pythorch

I also added few help functions that we might want to eliminate:

has_any_gradient () -> return len(self.gradients_list()) > 0
I was just tired of typing len(self.gradients_list()) > 0, I didn't use that much more in a notebook I have where I tested stuff

compare_blocks: it compares two TensorBlocks creating a dictionary I used in the tests and to debug it is a bit of a mess and created for that purpose, but it was useful to find bugs

https://github.com/lab-cosmo/equistore/pull/52 should fix the remaining build error.


Export extension API

Hey,
I want to use your API from my extension tonka3000/vscode-qt-tools. Because I saw the file api.ts in the   src folder I assumed that I can get your API via exports, but when I get your extension the exports is undefined.
const cmaketools = vscode.extensions.getExtension("ms-vscode.cmake-tools");
if (cmaketools && cmaketools.isActive) {
	const bd = cmaketools.exports.buildDirectory();
	console.log(bd);
}

I check the activate function in extension.ts as found a TODO comment. Is it planed to export the API.
I have a feature request which depends on that information from your extension.
Greetings
Tonka

Thank you for your request.  This is a duplicate of #494.  Please go upvote that issue so we can track the demand.
It is on the backlog but not currently planned.  It was disabled when we took over maintainer responsibilities, but we haven't prioritized re-enabling it yet.  It was removed in anticipation of multi-root support which we later completed.
In the meantime, there are a few commands available you can call that may provide the information you need or allow you to drive the extension to a limited degree.


Possibility to use the library in Celery

Using billiard library instead of multiprocessing (where billiard is just a fork) adds ability to use this library with Celery for periodical scraping.
Tested and works well.

This seems like an useful addition!


Alpha blending

Hi guys!
We have a problem with the alpha channel and how flat polygons are rendered without a background (transparent one) and a simple leaftlet layer behind.
Let's see an example:

How it should be:

How it is:

I've made some changes to tangram adding a new blend option called depthinlay (I know, the name is the worst, sorry), to add the alpha channel and depth_write option just like an opaque but adding the src_alpha and dst_alpha just like an overlay or inlay.
I don't know if this is the best way to do this, could you help me on this problem? (Also changing the name of the option if it is necessary a new option).
Thank you guys!

Hey @donflopez, thanks, could you provide more info on how you think the blending should occur, channel-wise? Is this only an issue that affects a raster/leaflet background behind?
Trying to better understand the problem - I've found it very finicky to get the WebGL blending options (and interaction with Canvas and HTML elements behind it) to work for all the different use cases!
Unfortunately I do not think the proposed solution here will work on its own. The reason we cannot usually have depth write on in conjunction with blending is that blending is highly dependent on draw order (which Tangram reorders based on tiles, grouping by style/shader program, and blend options). It may work by chance in your example, but if translucent geometry in front is drawn before any geometries behind it, the ones that are behind will never be drawn (because they will fail the depth test).
This post provides some background, and also explains why we have the add and multiply options for blend:
http://www.openglsuperbible.com/2013/08/20/is-order-independent-transparency-really-necessary/
There are specific issues for WebGL around how it is composited with the background, and those may be affecting your case (and we may be able to address those directly). This post provides some info:
http://webglfundamentals.org/webgl/lessons/webgl-and-alpha.html
Another option for your specific case may be one of the existing blend options, along with the blend_order parameter - unfortunately, the interaction of blending and ordering can be an Achilles' heel of WebGL/Tangram, it has definitely been one of the trickier aspects :)

Hi @bcamper!
Thank you! I'm starting with WebGL, so I tried to solve it for my self, sorry. I'll explain the problem that we have here.
We have to apply opacity and composition operations, like add, multiply... and we are using Tangram for the data layer and leaflet for the basemap.
Let's start with the opacity:
With mapnik, having two polygons with an opacity of 0.5, the result is the next one.

With tangram this is the result.

With my... hack/modification/thing? What I have is the same color that mapnik, but the hidden part of the polygon doesn't appear making the color more dark like .75 of opacity (It is also happening on tangram without modifications).

What if I use multiply or add?
Multiply:

Add:

Do I need to set a different lights?
Do you think that we have to use tangram to paint the base layer too to avoid this problem?
Could be something wrong with my configuration?
Thank you!

Hi @donflopez – looks like there are a couple of things happening here, including a possible bug!
I tried to replicate your setup using the current Tangram build, so if there are bugs introduced in your branch my experiment won't address them.
First, assuming you have two polygons (the US polygon, and a second polygon) it looks as though they're being pre-composited somehow – in other words they are both being drawn as opaque, and then the result of that operation is given an alpha of its own. Shapes drawn with alpha should composite over each other properly with the overlay or inlay blend modes (add and multiply ignore alpha).
However, when investigating this, I found that Tangram may be processing alpha incorrectly even when used properly: an alpha value of .5 results in a completely opaque polygon. So this may be causing the precompositing problem, and may also be related to the color differences you saw between the mapnik and Tangram results.
I have a test scene here which I think replicates your setup – in this case I'm bringing the raster layer in as a Tangram source, but it should behave the same when drawn as a separate Leaflet layer:
https://mapzen.com/tangram/play/?scene=https%3A%2F%2Fgist.githubusercontent.com%2Fanonymous%2F2b06f1bfa5a916612667a655130a133f%2Fraw%2F9391c30c5c81863ae81d0c45f13709d680f12976%2Fscene.yaml#4.971/36.393/-78.869
You can test the behavior by manipulating the blend mode, as well as the alpha in the color values (eg. the last number of [0, 0, 0, .3]). We're going to take a look at that suspicious overlay alpha behavior here as well.

Hi @meetar! Thank you!
In your example, there are two different layers one for the US polygon and one for the other, in my example those polygons are in the same layer.
The screenshots are made with your tangram branch, not mine (except the third one).
Ok! I can see that over .5 the alpha is not working. I've made this other tries.
Two layers, one with the two polygons (US and the other at the right) and the other one with a tiny polygon over the others.
First, layer (US + Big Polygon) with 0.1 opacity, the other (tiny polygon) with 0.05 opacity.
This is the result:

We can see another polygon that doesn't exist in the dataset (maybe matching with some tiles).
The expected result is too different with those levels of alpha.

Thanks @donflopez – we're taking a close look at the alpha code now.

Thanks to you! If you need me to try something else, just ping me!

Should be fixed by 47fc96cfebd62d4283436ee484e51dda09a4dde4, which will be in the v0.11.1 release.

Hi @bcamper, thank you!
I've been using the fix and I can appreciate that now, the colour is correct but the alpha is still being weird.
I'm a noob on this, but I think that you've missed to multiply the _color.a to the material.xx.a. It seems more opaque as more polygons are piled up. I've added it to light.js and another problem appear, the tiles of the middle looks brighter than the outer ones, could it be related with the material?
Probably, what I'm saying makes no sense, sorry! I'm trying to help you and minimize the effort by your side.
Thank you again!!

Hi @donflopez - there may be some misunderstanding as to expected behavior.
With standard blending (e.g. blend: overlay), it is expected that total opacity will increase where multiple partially transparent surfaces are stacked. In the shader, the _color is the initial vertex color assigned in the draw block, and color is the final computed output color. Since color.a is initialized to _color.a, additional multiplications by material properties would be undesirable.
Note that the add and multiply blend modes offer alternatives.
Can you please provide more information and examples as to the use case you are trying?
Likewise, it is hard to know what is happening with the "darker tiles" screenshot without a more complete example. I have not seen behavior like that before, but I also can't tell how the scene is constructed or what code it is running (0.11.0, master, modified master, etc.).

Yes @bcamper, I didn't explain it correctly, sorry.
With your actual master code my example looks like this: Video Link

Multiplying by _color.a (your actual master + my changes): Video Link

As you can appreciate the first GIF show more opaques layers, making them practically full opaque, but you also can notice the difference between the middle and the outers tiles this is more visible in the second GIF.
Thank you!

Hi @donflopez - thanks, but I don't think we can offer any further feedback unless you can provide the scene files for these examples - perhaps there's an unexpected interaction between materials or lighting, but it's hard for us to know because it doesn't look similar to our own test results. Can you please provide?

Hi @bcamper, don't worry, I've uploaded my demo so you can just play with it.
https://cartodb.github.io/tangram-carto/
Press GO button and play! It is using your tangram.min.js version from -> https://mapzen.com/tangram/tangram.min.js, in my examples I've used your master tangram branch.
The example is in gh-pages branch... so you can download it an make whatever you want.
Thank you all!

@donflopez if you can just export your final scene object, that would probably work for us. For example, if scene is the Tangram scene object:
copy(JSON.stringify(scene.config))
Then paste into a file.

Hi @meetar & @bcamper!! Of course, thanks!!
Here is the config
Let me know if there is something more that I can do.
Thank you guys!

Hi guys, I'm so sorry, we found the error.
We have a buffer for the tiles, so we are repainting the tiles and the alpha was not working as expected! It was our fault.
Sorry for waste your time.
Now another issue is revealed, how can we work with buffer? Do you support it?
Thank you!

The buffer will always be drawn. This should be fine for some cases like lines, and plenty of polygon cases (Mapzen tiles currently have the buildings layer unclipped by tile boundaries, so building polygons extend past the tile and some portions are duplicated between tiles). Could you try clipping your polygons to the tile boundary (or at least the ones you want to draw with alpha)?

hey @bcamper, I think the question is wider, as you know some vector tiles providers use vector tiles with buffers (mainly because mapbox libraries work in that way). In our case we can generate tiles without buffer but that's not going to be the general rule so the question is will tangram support vector tiles with buffers?

@javisantana, for most rendering cases (all the ones we've had for our own tiles + base maps, anyway), there haven't been any issues with buffering and as I said we do buffer some elements. I've also used Tangram with Mapbox's buffered tiles without problems.
For this alpha case specifically, the border rendering/overlap is an issue, yes (that we jut haven't run into ourselves yet). I don't currently know of any easy solution to that, since the rendering mechanism of Tangram is somewhat different -- it paints the entire tile in 3d space unclipped, vs. masking the tile against the border (with a stencil buffer... also harder to do properly with arbitrary 3d view such as in Tangram ES). We can certainly think about what such a technique would mean for Tangram, but I suspect that in addition to being a large change, it could conflict with other assumptions in the rendering pipeline.
Can you better explain what you see as the need for buffering on those polygons? I know that Mapbox GL (and possibly Mapnik, can't recall) needs buffering on lines to produce proper joins (BTW this is a case where Tangram actually doesn't need buffered lines because it renders without a stencil -- the lines from adjacent tiles line up pixel for pixel, when you use a stencil, you're actually chopping off part of the line you want at the tile border). Is that the case for polygons like these? (Side note, there's definitely some inefficiency in having such a large buffer as you have now, even if you're stenciling it out, there's a lot of overdraw where the same screen pixels are being partially processed multiple times.)
Another transparency technique I've been meaning to experiment with more is stippling or "screen door". It's certainly less flexible, but is still in use in a fair number of video games due to the complexity of mixing arbitrary 3d geometry with alpha (which is closer to Tangram's architecture as well). This article provides a nice example: http://n00body.squarespace.com/journal/2009/9/14/stippled-alpha.html

There is no need for buffering but the thing is most of the cached tiles out there will have buffers (not as larger as the ones we have now because of a bug)
As I said we don't need them in our case (but for labeling) and I don't see this as something really important for rendering basemaps but datavis is a kind of different

and possibly Mapnik, can't recall

Yes - each tile (or metatile) is rendered independently of others, so it has to have any objects from other tiles which would influence the look of the edges.
The same will be true for Mapbox GL producing server-side raster tiles, and probably the same for server-side raster tiles from Tangram ES.

Yep, alpha (more important for dataviz) is a different case, we'll give it some thought.
For labels, it's true that we have sub-optimal label placement with regard to tile edges in Tangram JS currently. In Tangram ES, label placement is done in screen-space, so labels across tiles are aware of one another; we expect to move to this method for JS as well.
For rasters we have not entirely decided on a method, but yes, will likely include some form of meta-tiling (and many Tangram features like perspective building extrusion are not really compatible with static rasters anyway... though there are some fun use cases for static maps and we have that planned).

Going to close this as a PR, and open an issue specifically for alpha + buffering.

See #469.


Add how to actually start a server to the docs

Please add how to actually run the server to the documentation

Auto-generated docs were published a while ago. :)
http://xsc.github.io/thrift-clj/


Plugin triggered by a custom action with "Enable rollback" disabled running inside transaction

Regarding Custom Action's section:  https://learn.microsoft.com/en-us/power-apps/developer/data-platform/scalable-customization-design/database-transactions#custom-actions
The behavior is not fully documented.
Documentation says:
"Enable Rollback not set
The custom action won’t act within a transaction."
However, it not totally true. There is a exception scenario if call this Custom Action from a async Workflow.  Suggestion is to add the scenario to this part of documentation, like this:
There is an exception when the Custom Action is called from an async Workflow
How to test it:

Create a custom action with "Enable rollback" disabled

Create and Register a Synchronous  plugin, Pre Operation stage, on the previous Custom Action message

Create an Asynchronous Workflow with a step to run the custom action

Scenario 1)  Not documented
The Async Workflow runs a call to the custom action (with "Enable rollback" disable), which triggers the pre-operation sync plugin.
Result: plugin runs inside transaction, different from what is documented
Scenario 2) Properly documented
Instead of an Async Workflow as described above, if a Cloud Flow or External application runs a web api call to the same custom action (with "Enable rollback" disable), which triggers same pre-operation sync plugin
Result: plugin runs outside transaction, as documented

[Enter feedback here]

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

ID: 75ddb79a-82d5-611f-787d-72a2294614ff
Version Independent ID: 876520c5-b0e2-4874-f815-f42d0e2fd611
Content: Scalable Customization Design: Database Transactions (Microsoft Dataverse) - Power Apps
Content Source: powerapps-docs/developer/data-platform/scalable-customization-design/database-transactions.md
Service: powerapps
Sub-service: dataverse-developer
GitHub Login: @rogergilchrist
Microsoft Alias: jdaly

Thanks for your comment, @robertoilidio. This issue has been assigned to the doc author for review.

@robertoilidio I believe the documentation is correct, but...
If a transaction has started from which the custom action was called, then the custom action and any plug-in invoked by the action will be in-transaction.
In your scenario, the async workflow started the transaction that invoked the custom action.
If the caller of the custom action is not in transaction, then what is stated in the documentation is correct.

@robertoilidio Thanks for the feedback.


/lib/x86_64-linux-gnu/libstdc++.so.6: cannot allocate memory in static TLS block

Description
One of our workflows runs a bunch of Python tests against a Django application with MySQL as the backend. One of our tests has suddenly started to fail today with the following error message as the underlying cause:

/lib/x86_64-linux-gnu/libstdc++.so.6: cannot allocate memory in static TLS block

Looking at what has changed since an earlier successful test run 9 hours earlier, the only thing I can find is that the ubuntu-20.04 virtual environment has changed from version 20211129.1 to 20211209.3.
I can see the 20211209.3 version has a change in the MySQL client version: https://github.com/actions/virtual-environments/pull/4708/files. Is it possible the above error can be contributed to this?
We are caching built wheels between workflow runs. I have tried a test run without the cache to make sure this isn't caused by a Python wheel built against the 20211129.1 virtual environment not working with the libraries available in 20211209.3, but that also failed.
Is there any way to run a specific version of the ubuntu-20.04 virtual environment to verify that it indeed is the version upgrade that is causing this problem?
Virtual environments affected

[ ] Ubuntu 18.04
[X] Ubuntu 20.04
[ ] macOS 10.15
[ ] macOS 11
[ ] Windows Server 2016
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
20211209.3
Is it regression?
20211129.1
Expected behavior
We shouldn't get errors from the low-level C++ standard library about not being able to allocate memory when running our Python tests.
Actual behavior
We get a stack trace with the following as a conclusion:

/lib/x86_64-linux-gnu/libstdc++.so.6: cannot allocate memory in static TLS block

The stack trace relates to Django instantiating a MySQL client.
Repro steps
This happens in a proprietary software project where 1 test out of 4503 fails. I am unfortunately not able to provide more specific guidance on how to reproduce this. Links can however be provided to private workflow runs that are failing.

Hello @Tenzer. Thanks for reporting, but this is a common error message which can be caused by multiple reasons. Unfortunately, it will be difficult to investigate the issue without logs or repro environment. Please provide them to allow us to investigate it.

We are running into the same problem.
A Python unit test that relies on MySQL fails with the same error message, and it ran fine with 20211129.1. No changes have been made to the unit test, or any other related part of our setup.
You can see our working/failing runs here:

Successful run (Dec 8)
Failing run (Dec 13)

@nikolai-frolov I can't easily make a reproduction environment of the test in question, which is partly why I created this report in case other people also experienced the same issue.
For now, we are skipping the single test that fails when run in GitHub Actions.
@MarcelGerber Thanks for sharing!

It seems some dependency started to request more than 2Kb allocated by default TLS storage.
The workaround is to change of shared libraries loading by adding
export LD_PRELOAD=/lib/x86_64-linux-gnu/libstdc++.so.6:$LD_PRELOAD before the running unit tests.
Forked workflow file: https://github.com/akv-demo/etl/commit/c2451658239354971c03edd05757ffb09af76a4e#diff-ee49282f461b4c8ad179f79dd5bcdf93124561074c64a771366caf93e99b9320
And the corresponding success build: https://github.com/akv-demo/etl/actions/runs/1581866053

@Tenzer does the suggested workaround works for you? Can i close the issue?

Yes, it does work, thank you. Would it be possible to get it baked into the virtual environment, or should it alternately be documented somewhere?
We've since seen the same issue on another repository which also use a Python code base that accesses a MySQL database, so I can't help but wonder how many people this might affect.

@Tenzer I was not able to locate the exact shared library that caused the problem - it is not reproducible on the small projects. It seems the problem either should be addressed to the python team or we need to gather more input on the same issue to isolate the dependency. Moreover the problem can go away on the next dependency upgrade.
Meanwhile this issue can be used for the documenting the problem.

Just as an FYI, I've run into this error today (https://github.com/CSHS-CWRA/RavenPy/pull/146). At first, I thought it was related to libgdal, but thankfully that's not the case:

Not working
Working

Small update: the export LD_PRELOAD=/lib/x86_64-linux-gnu/libstdc++.so.6:$LD_PRELOAD workaround seems to fix the issue. It's already in my workflows (https://github.com/CSHS-CWRA/RavenPy/blob/master/.github/workflows/main.yml)

I confirmed the problem is caused by this PR
https://github.com/actions/virtual-environments/pull/4674/files
that installed mysql 8.0.26
The build with 8.0.27 reinstlalled from ubuntu repo passes the problematic build:
https://github.com/akv-demo/etl/runs/4615186862?check_suite_focus=true

@Tenzer we have provided a workaround in this announcement. Sorry for the inconvenience
https://github.com/actions/virtual-environments/issues/4799

@Tenzer I'm going to close the issue as the workaround is provided. We will update the announcement once the issue is resolved.
Please feel free to contact us if you have any concerns.
Thank you!

Ok Great.
Thanks @Madhavan @.***>
On Mon, Jan 10, 2022 at 2:17 PM Mikhail Timofeev @.***>
wrote:

Closed #4733 https://github.com/actions/virtual-environments/issues/4733
.
—
Reply to this email directly, view it on GitHub
https://github.com/actions/virtual-environments/issues/4733#event-5864261699,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXFGVRCUHAUCKWQ5V4Y7733UVKMJBANCNFSM5J6QVFOQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: @.***
.com>


Support resizing of local avatars

Description
When I see the size=84 parameter in the URL I think gitea should send 84x84 pixel big icon. But I see, that Gitea is sending 290x290 pixel big icon.

With 2000+ organizations it's need ~10 seconds, 2000+ requests and some MB's.

Gitea Version
1.17.1
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.25.1
Operating System
Ubuntu 20.04.4
How are you running Gitea?
Self hosted gitea-1.17.1-linux-amd64
Database
PostgreSQL

Yes, seems like a bug. The intention is for the server to send 84px in this case.

A can't compare this to the 1.16.x version. But in the 1.16.x release loading a page with a lot of orgas war faster. Looks like new bug in 1.17.x.

But they will be cached?

But they will be cached?

Yes. But this is "strange". When I click in gitea I see "memory cached" and its fast.

When I try to migrate new project it slowe (8-10 seconds) and I see "disk cache".

Tested with Chrome (Version 104.0.5112.102 (Offizieller Build) (64-Bit))

Not sure when a browser will decide to offload to disk, but we should probably make the hardcoded 5 minute cache duration on avatars configurable:
https://github.com/go-gitea/gitea/blob/dc0253b0637bbf367ad330612900e780c6b2b0e6/routers/web/user/avatar.go#L18-L21

https://github.com/go-gitea/gitea/pull/20958 restores avatars to use STATIC_CACHE_TIME again which defaults to 6h so we can hit the cache much more than before.

Back to this issue's topic: The problem is that the size argument only works for external avatar services like Gravatar. The local avatar handler ignores the size argument and always serves the full-size avatar from storage.
What needs to be done:

Make the /avatars/* request handler respect size and resize using https://pkg.go.dev/image or similar
Store the resulting images in server cache and invalidate this cache when a user/org updates their avatar.

@silverwind I renamed it

Will be there a fix for the next (1.17.3 or 1.18.x) release?

Status with 1.17.2 for the start page with 2192 organisations.
Chrome:

FF:

I took a look on Gitea 1.16.x. This version has the same scale bug.
But I thin that with my gitea usage (generating a lot of organizations) I reached some subability and load time limitations. Just create on you local instances ~2000 orgas for see what I mean. On gitea.com are ~1140 orgas. If you log there with admin permissions than you could analyze my experience with the loading time.

When I want create a new repo or mirror in specific orga, than you don't need load all orgas in the following pages.

This make no sense for me.

Why there is an icon needed in the drop list?

On the start page there is a search field for repos. But not for orgas. All orgs will be loades.

This is not consistent.

On the start page the drop-down list with orgas is not a good idea if you have a lot otf them. In this case the search box in 3. will be a better solution.

I have one idea to solve this problem. Just add new property:
[picture]
ENABLE_AVATAR_IN_LISTS = false -> default will be true

Is this set to false, than in all lists (start page, new repo, new mirror) the avatar image url will be not added. Easy solution. And the scale bug should be fixed to.

Last days I installed Nginx as proxy and added avatar scaling. This is reducing only the amount of data which is sended to the client.
I see here two problems:

Chrome: sometimes is using memory cache. But more often the disc cache. And this is strage, what I can't understand.
Gitea: loading (long) list with organizations.

I have now an nginx proxy with working scaling.  For me, can this be closed.

Keep it open, we still want to fix this.

Hi, while trying to solve this issue, I have some questions:

What is the functionality of RenderedSizeFactor, defined in picture.go and equal to 2.
That can explain why some avatars/url-size are in one-to-two ratio.
The maximum avatar width (and height) is 4096. Isn't that unnecessarily big?
Where exactly is the avatar request handler?
Finally, different views have different avatars sizes. Is it worth saving all of them?

I am also interested in coding avatar resizing availability as a new feature!
Greetings

Hi, while trying to solve this issue, I have some questions:

Who can answer this questions?

What is the functionality of RenderedSizeFactor, defined in picture.go and equal to 2.
That can explain why some avatars/url-size are in one-to-two ratio.
The maximum avatar width (and height) is 4096. Isn't that unnecessarily big?

Ups ... I would say: too big!

Where exactly is the avatar request handler?
Finally, different views have different avatars sizes. Is it worth saving all of them?

I would say: yes!
In my solution with nginx I store every requested size. And this solution works fast.

I am also interested in coding avatar resizing availability as a new feature! Greetings


Test tagger and visualizer

There used to be some problems if these two were run (temporaly) near each other.

(i.e. should be able to switch between the two without quirkyness happening.)


[Help] How can I get the indices of the generated navmesh?

I am finally working on integrating this into Stride3d and I am having trouble actually generating the mesh for debugging purposes.
~As far as I can tell in your demos for Unity the methods used only require that the vertices are provided as far as I understand it. in the Unity example I see you are generating per poly but in my generated mesh some poly data has more than 3 points depending on the tile.~
I didnt realize DrawAAConvexPolygon was for drawing an arrow not the poly mesh.

In the code above you can see one of the polys has 24 verts or 8 Vector3 points. am I just meant to try and make my own indices or is there a way to get that data from the navmesh?

Isn't it detailTris?

I took a break to work on some other things. I will give this a try soon as I am back to working on it.
I think the issue I had with detailTris is some of the data was wrong? there were indices that had a value of 700+ when the mesh was well below 100 vertices so it cause issues. Ill try again to make sure I didnt miss something, thank you!


feat: add logging utils for agent

Task Description
Add logging utils for agent, a program written in golang.

Solution Description
We use go.uber.org/zap as the base underlying logging library and wrap some log format and utils around it to further ease its usage.

Passed Regressions
Unittest

Upgrade Compatibility
New feature, and this is compatible with old version.

Other Information

Release Note

LGTM


FEATURE - EXT - Open all Guided Answer weblinks in Guided Answer extension

As a I user, when I click on a Guided Answer weblink I want the content  to be shown in the Guided Answer extension so that I remain in my IDE
Description
If a Guided Answers guide contains a link to another Guided Answer guide on opening that guide it opens the new guide in a browser. The end user is navigated away from the extension to a browser.
While this might be suitable for external content  if the weblink is a Guided Answer content  then that content should be opened directly in the extension as opposed to the browser.
Example, open guide vscode://saposs.sap-guided-answers-extension#/tree/2827/actions/41344:41346:57775:57776 and scroll to the bottom where you click on the link to Configure an SAP BTP Destination. , it opens the web version of the guide.
On click of 'Step back' the user should be returned to the previous step in the guide that they were navigated to.
Technical Design

Assess the destination
If it is a Guided Answer content open the content in the guided answer content

Acceptance Criteria

Guided Answer web links should be opened directly in the extension
External web links ( Non guided answer content) should be opened in a browser.

Notes
Tasks

[ ]
[ ] Unit Tests added
[ ] Test Cases defined

@carwelsh done & merged

@hitesh-parmar This also can be closed.


Servelet

Comment text-box added. Comments are stored in a datastore.
Fetch comments feature added. Allows to select number of comments to be displayed. Default set to 10.
Delete all comments button added. Allows user to delete all the comments from datastore.


.travis.yml: The 'sudo' tag is now deprecated in Travis CI

Travis are now recommending removing the sudo tag.
"If you currently specify sudo: false in your .travis.yml, we recommend removing that configuration"

Thanks @cclauss , we use sudo: required in our https://github.com/Netflix/lemur/blob/master/.travis.yml . I believe we're good as we are. Please let us know if you notice any problems.

sudo is a no-op so sudo is always so removing this line will not change your tests.

Thanks @cclauss for the follow-up.
removed sudo in https://github.com/Netflix/lemur/pull/2764


Database migration issue after downgrading from 2.24.0 to 2.23.0

Before you start please confirm the following.

[X] Yes, I've searched similar issues on GitHub.
[X] Yes, I've checked whether this issue is covered in the Portainer documentation or knowledge base.

Problem Description
Apparently there was a portainer/portainer-ce docker image available with the tag 2.24.0 for about two days (13-14th of November) but it seems to be gone now. After automatically upgrading and then downgrading to the latest 2.x tag (2.22.0 => 2.23.0 => 2.24.0 => 2.23.0), portainer fails to start doe to database schema version mismatch.
Expected Behavior
Image tags do not disappear or a migration path for downgrading is documented
Actual Behavior
$ docker pull portainer/portainer-ce:2.24.0
Error response from daemon: manifest for portainer/portainer-ce:2.24.0 not found: manifest unknown: manifest unknown

Steps to Reproduce
Not possible as the image is gone from Docker hub
Portainer logs or screenshots
$ kubectl logs --selector 'app=portainer'
2024/11/15 10:59AM INF github.com/portainer/portainer/api/cmd/portainer/main.go:331 > encryption key file not present | filename=portainer
2024/11/15 10:59AM INF github.com/portainer/portainer/api/cmd/portainer/main.go:355 > proceeding without encryption key |
2024/11/15 10:59AM INF github.com/portainer/portainer/api/database/boltdb/db.go:124 > loading PortainerDB | filename=portainer.db
2024/11/15 10:59AM FTL github.com/portainer/portainer/api/cmd/portainer/main.go:366 > The database schema version does not align with the server version. Please consider reverting to the previous server version or addressing the database migration issue. |

Portainer version
2.23.0
Portainer Edition
Community Edition (CE)
Platform and Version
Kubernetes 1.30.2
OS and Architecture
Gentoo Linux, AMD64
Browser
N/A
What command did you use to deploy Portainer?
$ kubectl get deployment portainer -o yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: portainer
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: portainer
  strategy:
    type: Recreate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: portainer
    spec:
      containers:
      - image: portainer/portainer-ce:2.23.0
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 3
          initialDelaySeconds: 5
          periodSeconds: 10
          successThreshold: 1
          tcpSocket:
            port: http
          timeoutSeconds: 1
        name: portainer
        ports:
        - containerPort: 9000
          name: http
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /api/system/status
            port: http
            scheme: HTTP
          initialDelaySeconds: 5
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
        resources:
          limits:
            memory: 512Mi
          requests:
            cpu: 100m
            memory: 512Mi
        startupProbe:
          failureThreshold: 12
          initialDelaySeconds: 5
          periodSeconds: 5
          successThreshold: 1
          tcpSocket:
            port: http
          timeoutSeconds: 1
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /etc/localtime
          name: localtime
        - mountPath: /data
          name: portainer
          subPath: data
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: portainer-clusteradmin
      serviceAccountName: portainer-clusteradmin
      terminationGracePeriodSeconds: 30
      volumes:
      - hostPath:
          path: /etc/localtime
          type: File
        name: localtime
      - name: portainer
        nfs:
          path: [...]portainer/portainer-ce
          server: [...]

### Additional Information

_No response_

Same issue here

New versions of Portainer generally include a bump to the database schema version - this allows us to make changes to the database structure to accommodate new features, for example. As such, you're unable to use newer databases on older versions.
When a Portainer update is performed, a backup of the portainer.db database is taken and stored in the portainer_data volume, under the backups directory, named portainer.db.bak. You can use this backup to roll back to the previous version by doing the following:

Stop and remove your Portainer container (don't delete the portainer_data volume!)
Rename the existing portainer.db database in the base of the portainer_data directory to something like portainer.db.224 (just in case something goes wrong)
Copy the backups/portainer.db.bak file to portainer.db in the base of the portainer_data directory
Start Portainer using the image version you were previously on (in this case, 2.23.0).


Add phone to company

A company should have a phone number.

Should this be a mandatory field?

I don't think so!

Nope


"Failed to compile the project in memory" with c# 8.0 nullables

I'm trying to use new features of c# 8.0 like nullable reference types, so I use 3.0-preview and opted in in project.csproj -
    <NullableContextOptions>enable</NullableContextOptions>
    <LangVersion>8.0</LangVersion>

Scaffolding fails with message "Failed to compile the project in memory" because of nullables like "string?", etc in my code
I think in-memory compilation should use projects-options to compile.
Is there any temporary solution/workaround? (I'm trying to scaffold razor-identity-pages)

Thank you for the report on this issue. The problem is being tracked in #834


This work is based on mmdet yolox mode switch hook.
Data Augmentation Revisited: Rethinking the Distribution Gap between Clean and Augmented Data
Use cases (Optional)
_base_ = 'resnet18_8xb16_cifar10.py'

_deprecation_ = dict(
    expected='resnet18_8xb16_cifar10.py',
    reference='https://github.com/open-mmlab/mmclassification/pull/508',
)
model = dict(
    head=dict(loss=dict(type='CrossEntropyLoss', loss_weight=1.0, use_soft=True)),
    train_cfg=dict(
        augments=dict(type='BatchMixup', alpha=1., num_classes=10, prob=1.)))

custom_hooks = [
    dict(
        type='StopAugmentsHook',
        num_last_epochs=1,
        loss=dict(type='CrossEntropyLoss', loss_weight=1.0))
]
runner = dict(type='EpochBasedRunner', max_epochs=3)

Checklist
Before PR:

[x] Pre-commit or other linting tools are used to fix the potential lint issues.
[x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests.
[x] The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
[x] The documentation has been modified accordingly, like docstring or example tutorials.

After PR:

[x] If the modification has potential influence on downstream or other related projects, this PR should be tested with those projects, like MMDet or MMSeg.
[x] CLA has been signed and all committers have signed the CLA in this PR.

I notice that it stops the data augment such as auto-augment in the paper. And the hook in mmdet just implements this function. Maybe, we can implement a 'stop_data_aug_hook'.

You are correct. However, the yolox hook is set with a multi image dataset wrapper.
Specifically, the following part is required.
https://github.com/open-mmlab/mmdetection/blob/master/mmdet/datasets/dataset_wrappers.py#L397-L415
It might be nice to have this kind of functionality in Compose. I will try to implement it, so please let me know if you have any suggestions.

In my opinion, we can add this feature in two hooks, 'stop_train_aug_hook' and 'stop_data_aug_hook', since the train_aug and data_aug are different and separated in mmcls.  'stop_train_aug_hook' is what you have implemented and 'stop_data_aug_hook' is what mmdet has implemented.
What about using 'switch' instead of 'stop', which we can change from pipeline=[A, B, C, D] to pipeline=[A, None, C_, D], which has the effect of 'stop'.

What about using 'switch' instead of 'stop', which we can change from pipeline=[A, B, C, D] to pipeline=[A, None, C_, D], which has the effect of 'stop'.

That is certainly true.
I was wondering if I could have both switch and stop, is that redundant?

That is certainly true. I was wondering if I could have both switch and stop, is that redundant?

Yes. Switch and stop only need one.
I prefer 'switch' since it has more powerful functions, including 'stop'.
class SwitchTrainAugmentsHook(Hook)
'''
    action_epoch(int) : switch train aug at the action_epochth epoch
    augs(List[dict] | None): the new train augments
'''
    def __init__(self,  action_epoch，augs):

what do you think it?

I think train_aug is fine with that.
I made a mock with the latest push.
Especially for data_aug, I have left the stop function in the implementation, how do you like it?

I think train_aug is fine with that.
I made a mock with the latest push. Especially for data_aug, I have left the stop function in the implementation,

look good!

Wish we had a better solution, but...


Save expand/collapse state of all nodes?

Is there any way to save/load the expand/collapse state of all nodes? I've had no luck finding a way to do it..

You could use a service storing the state of each node, and then just expand/collapse according

Hey @forcewill, do you know how to get a reference to the root node? The solution sounds simple enough, but I'm not sure how to access the root nodeScope in order to traverse and tree and set the "collapsed" property as needed.


Add the option to output the bell character on error when watching

When I'm starting webpack like this
webpack --watch

it's difficult to see when a compilation error happens after I save a file.
It would be very helpful to have a configuration option to output the bell character everytime an error happens.
process.stdout.write('\x07');

The OSX Terminal.app will automatically show a little notification in the dock when the app is in the background or minimized and you can configure it to play sound, too (I think it's off by default.)

The behavior depends on your terminal emulator, of course, but iTerm 2 also supports this.
Having this option would help spotting errors much earlier, because I often find myself having the terminal window in the background. Especially when developing on a laptop with only one screen.

@JannesMeyer Any chance you could publish a version of your beep plugin with reasonable defaults?

+1 would love this as a package (or built-in option)

@bebraw  @rattrayalex  Sorry for the late reply, but I have finally made a plugin out of this: https://www.npmjs.com/package/system-bell-webpack-plugin
Initially I had given up on it because of the bug that was causing the error handler to be called mulitple times, but that bug was gone when I checked today! So I decided to package it. Let me know if it works for you!

I had also created a plugin for this as well.  https://www.npmjs.com/package/webpack-beep-plugin

@JannesMeyer Sorry for the even later reply, but was finally able to install this and it looks great! Working for me, will update you if colleagues find problems. Thanks so much & well done!

https://www.npmjs.com/package/webpack-notifier offers similar capabilities, but integrates with OSX notifications

To those who find this page while searching for a solution on Google, this is what I ended up with for Webpack 5.34.0.
Paste this somewhere in your webpack.config.js file
class SystemBellPlugin
{
    pluginName = 'SystemBellPlugin';

    apply(compiler)
    {
        compiler.hooks.done.tap(this.pluginName, (stats) =>
        {
            if (stats.compilation.errors.length > 0)
            {
                process.stdout.write('\x07');
            }
        });
    }
}

Then add it to the plugins array of your config.
plugins: [     new SystemBellPlugin() ]


compression: add support for the zstd algorithm

zstd is a compression algorithm that has a very fast decoder, while
providing also good compression ratios.  The fast decoder makes it
suitable for container images, as decompressing the tarballs is a very
expensive operation.
https://github.com/opencontainers/image-spec/pull/788 added support
for zstd to the OCI image specs.
Signed-off-by: Giuseppe Scrivano<EMAIL_ADDRESS>

does this depend on it being in an image spec release, to not be out of spec? https://github.com/opencontainers/image-spec/issues/803

does this depend on it being in an image spec release, to not be out of spec? opencontainers/image-spec#803

not sure it should block on a new release of the image specs and if there is any value in it (we should probably try to get a new tag, last release was 3 years ago :disappointed:).  It won't affect existing images and how they are handled.  The only difference will be that a zstd layer will be decompressed instead of returning an error.
The main reason for such PR is that I am experimenting with zstd (https://github.com/containers/image/pull/1084) and I'd like to not break interoperability with Moby/containerd.

Adding this to the 1.5 milestone, I think adding default support for zstd makes sense without having to rely on configuring a stream processor.
I do have one question on this change though, where was application/vnd.docker.image.rootfs.diff.tar.zstd introduced as a valid/known media type? I couldn't find this referenced in any docker/moby code. What is the scenario where this is necessary over just using the OCI type?
+1 on not waiting for an image-spec since this is only relying on a common sense addition of +zstd

+1 to support zstd without stream-processor

I do have one question on this change though, where was application/vnd.docker.image.rootfs.diff.tar.zstd introduced as a valid/known media type? I couldn't find this referenced in any docker/moby code. What is the scenario where this is necessary over just using the OCI type?

I've added it only for completeness as it is was done for gzip.  I agree it is not needed now, if we'll need it in future then we can add.
Pushed a new version without the application/vnd.docker.image.rootfs.diff.tar.zstd change.


[Feature]-[500]:Allow devs to format numbers in table

Summary
Numbers need to be shown in formats: 10,00,000 or 1,000,000 or 1,000,000.00, etc.
We should show a condition that shows these options in the property pane.
User can use toLocalestring to achieve this in JS

@areyabhishek are you talking about the table widget or the input widget.
Also, would something like a toggle called as internationalised format work?
@Nikhil-Nandagopal can you think of a better terminology here?

I think just the number format is good. This needs to be a dropdown where a user can select the format (Check Google Sheets format option). This should only be in places where the data type is known i.e Input & Table. Users should use a JS lib for places like text

@Nikhil-Nandagopal I didn't quiet get it!

We want this only on the number / currency type in the input  / table widget prop pane?
If this a dropdown, what are the options, can you please suggest?
Do you think this is only valid for the currency type?

It's valid for any numerical type including currently. See the screenshots

from google sheets

Oops, I was checking the appsmith google integration 🙈
Got it now, thanks.

@somangshu  needs design for this

[ ] Add a number formats dropdown in Input Widget property pane
[ ] Add a number formats dropdown in Table Widget property pane
[ ] Selected number format should be applied for for number type columns in Table Widget
[ ] Selected number format should be applied for for number type Input widget
[ ] Add cypress test to validate number formatting in Table widget
[ ] Add cypress test to validate number formatting in Input widget

We can follow something similar to the property exposed in date fields, which is display date format.
Reach - Users configuring the table's col as number type
Impact - Low
Effort - Assuming 1 sprint for dev+design+QA
Stats

Stat
Values

Reach
500

Effort (months)
0.5

@dilippitchika I think this should also be a part of the input widget! Under the type number these formatting options are valid for the user

@somangshu i was only considering this for display purpose and not the editing purpose yet. That is the reason i removed the input widget.
If we were to add it there as well, i believe the issue should be updated, because the impact is for app-viewer will be higher because they can edit the values.

@dilippitchika in that case, I also want to think about how this will pan out for table widget inline edit, Will be persist the formating or remove it before the editing starts.
another point is that this can we the output also, like {{input1.text}} gives out the formatted label required many times by the DB

I think it should work exactly like google sheets or our date picker. The underlying format is a number and you input it as a number in edit mode but there is presentation logic to add commas

I came across a need for this recently. I have file sizes in a column that are difficult to read in the default format (bytes). I have a JS function to make it more human readable but that makes it impossible to sort. I even tried changing it to a date type and using the custom JS but that did not work. I think something similar to the date type would work well, and give formatting option like Google Sheets.

@bobbintb are you formatting the column after it's been rendered on the table, or are you formatting the data before it gets to the table?

@bobbintb are you formatting the column after it's been rendered on the table, or are you formatting the data before it gets to the table?

I'm formatting before it gets to the table via the computed value in the widget. I'm not sure how I would do it otherwise.

You can format the data just before it gets to the table, not the column.

You can format the data just before it gets to the table, not the column.

I'm not quite following. The table widget displays data from a MongoDB query. If I leave the data I can sort it but it's difficult to read. If I format it I can read it better (ex 93.05 MB instead of 97569381) but it breaks sorting because it is no longer a number. Are you saying I can format it and keep sorting functionality or would this require a new feature?

It doesn't unfortunately. It still transforms the data. The sort works with the specific test numbers you've chosen but I think it will break like mine did with more varied examples (KB, bytes, GB, etc).

Oh got it. This won't work with varying bytes unit

@dilippitchika @sbalaji1192, is there another way to unblock him?

@Tooluloope @dilippitchika I don't think it is possible without a property to format numbers while rendering the cells like the date output format property.


ISP fallback

Hello,
I think that I saw a problem, when an ISP is come back Net-ISP-Balance still down
The reason seems logic, the default gateway for the "bad" ISP is gone so the ping still KO forever
OK:
<IP_ADDRESS>         <IP_ADDRESS>     <IP_ADDRESS>         UG    203    0        0 eth1
<IP_ADDRESS>         <IP_ADDRESS>     <IP_ADDRESS>         UG    204    0        0 usb0
The second KO:
<IP_ADDRESS>         <IP_ADDRESS>     <IP_ADDRESS>         UG    203    0        0 eth1
And If I restore the default route manually Net-ISP-Balance is happy and usb0 works again
Of course, I can use a local ping-ip (no gateway needed) but it's very limited ...

I can confirm the issue. If a connection to ISP is lost for a while, load_balance.pl does not restore it automatically when it is available again.
Otherwise, excellent job, thank you very much.

Ok, I thought I had fixed this in version 1.18 but apparently not. I made a number of changes in version 1.20, just released, which did not directly address this problem but were designed to be more proactive with respect to identifying changed interface configurations. I will investigate, but if you don't mind trying version 1.20 on your system I would be obliged.

Actually, my primary connection did recover automatically yesterday, but it took quite a while. I din't have time to investigate. Yesterday the primary connection dropped when I was away, when I got back in a few hours the primary connection was up and running properly again. I will have to experiment a bit more to see what is happening.
I have another question for you though. What is required to make the mail notifications work? You mention about "mail" program as dependency in the documentation.  Can you elaborate on that a bit more? What is that and how is it installed?

Hi, I'm also with @rabchev, I dunno what program exactly is "mail".

Googling, I've found a "mail" program that on Ubuntu for example can be installed with sudo apt-get install mailutils. It seems well know but online references point to several others at the same time.

This could be mentioned in docs.

Hi people! This tool is great! :-)
And I'd like a solution for the routing problem after fallback situation also...

I have some potential good news. I made some speculative changes and the
routing-after-fallback problem has not occurred for me since I made the
changes (over a period of three weeks, but the issue only occurs every
month or so). Could you try installing the "development" branch? You can
use GitHub to do this by setting the branch to "development" and then
downloading the ZIP file.
Lincoln
On Sat, Feb 27, 2016 at 8:10 AM, christianw<EMAIL_ADDRESS>wrote:

Hi people! This tool is great! :-)
And I'd like a solution for the routing problem after fallback situation
also...
—
Reply to this email directly or view it on GitHub
https://github.com/lstein/Net-ISP-Balance/issues/10#issuecomment-189636562
.

--
*Lincoln Stein *
Director, Informatics and Bio-computing Program and Senior Principal
Investigator
Professor, Department of Molecular Genetics, University of Toronto
Ontario Institute for Cancer Research
MaRS Centre
661 University Avenue
Suite 510
Toronto, Ontario
Canada M5G 0A3
Tel:<PHONE_NUMBER>
Mobile:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>Toll-free: 1-866-678-6427
Twitter: @OICR_news
Executive Assistant
Frances Dirnbeck
Tel:<PHONE_NUMBER>
<EMAIL_ADDRESS><EMAIL_ADDRESS>www.oicr.on.ca
This message and any attachments may contain confidential and/or privileged
information for the sole use of the intended recipient. Any review or
distribution by anyone other than the person for whom it was originally
intended is strictly prohibited. If you have received this message in
error, please contact the sender and delete all copies. Opinions,
conclusions or other information contained in this message may not be that
of the organization.

Hi Lincoln,
thanks for keeping us up to date. I will try it as soon as I'm back at this location. But maybe not within 14 days...
Thanks and see you...
Christian

I've found and fixed another issue with lsm that would cause it to fail to successfully ping interfaces that have gone down and come back again. Please give version 1.22 (released April 10) a try. Hopefully this is the last such issue, but I am strongly tempted to replace lsm with something simpler and more stable.


Feature Request: Checklist / Todo / Tasks

One amazing feature of obsidian is using the checkboxes and then using tasks or dataview or checklists etc, collate them in one view.
Is there any plan to have a better collating support for todo items across all the MD files in the workspace?
I looked at, https://github.com/usernamehw/vscode-todo-md.
However, it wants you to keep all tasks in single file and can't be inside markdown files across the workspace.
Do you see any other tool that can be helpful if this is out of scope for memo?

Have you seen https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.todo-tree ? Markdown support and aggregation from multiple files.

+1 for "todo-tree". I'm a long-time happy user of the extension.


[Nominations Open] Continuous Enthusiast Award 2022 🏆

This issue is to receive nominations for the Continuous Enthusiast Award 2022.
This is the special award for the community contributors. When you think of the CDF community, this person should be on the shortlist, because they're everywhere!
To nominate someone, reply to this issue with the following:

Full name of the person you’re nominating
Short description of their contributions to the Continuous Delivery Foundation and why they should win.

Nomination Deadline: Tuesday, March 29, 2022 [EXTENDED to April 11, 2022]
More details are available here: https://cd.foundation/cdf-community-awards/

Nomination: Fatih Degirmenci
Fatih has been a driving force within CDF all the way from its birth. He early initiated the SIG Interoperability which attracted the interest of a multitude of companies and organizations and he served as one of the chairs for that SIG until he recently initiated the SIG Software Supply Chain, which recently had its formation meeting where more than 10 companies where represented. Fatih is a frequent presenter at various summits/conferences, both open source oriented and others, and he always promotes the CDF community and its different working groups and projects wherever he shows up.
Fatih should win the CEA 2022 as he always brings a positive drive to wherever he attends, pushing us all to jointly strive for the best for the community.

Nomination: Darin Pope (@darinpope)
Darin is a long-time "Continuous Enthusiast".  He hosts the DevOps Paradox podcast with Viktor Farcic.  Darin and Viktor discuss DevOps topics and challenges in a wide ranging podcast.
Darin is a great advocate for open source.  He's created many videos focused on open source software, including:

What's new in Jenkins LTS (monthly)
Modernizing a Jenkins plugin (five part series)
Jenkins tutorials (over 100 videos)
Behind the scenes of plugins.jenkins.io

Several of Darin's videos are included in the official Jenkins documentation site, including:

Installing Jenkins on Linux
Installing Jenkins on Windows
Using Jenkins Agents
Managing Nodes

Darin has shared blog posts on jenkins.io this year, including:

Use containers as build agents
Use just enough Pipeline

@zestyroxy I wonder why I am not on the list of ambassadors.. did I miss an email?

Nomination: Jennifer Hooper @justjenu
Jennifer is a driving force for the Spinnaker community and is present for all things CDF. She always shares great ideas and is always enthusiastic about future events and projects. She's also volunteered to be on the cdCon 2022 Program committee.

Nomination: Tracy Ragan
Tracy served.on the CDF governing board, managed the CDF meetup community, created the initial CD landscape, relaunched the events in CI/CD group as a SIG of its own, contributing to it and continuously advocating for the SIG work and mission. Tracy is involved with various SIGs and she makes things happen everywhere around the CDF!

🚫 Nominations are now closed!
Voting will start April 13, link will be posted here.

Thank you, everyone! Award ceremony happened at cdCon 2022.
Congratulation to the winner @darinpope!
All winners here: https://github.com/cdfoundation/awards/blob/main/README.md


Max length and decimal scale conflict

Describe the bug
If maxLength and  decimalScale are both set, this can result in not being able to remove characters from the input.
To Reproduce
Steps to reproduce the behavior:

set maxLength to 5
set decimalScale to 2
Type 5 characters into the input
On blur, 3 additional characters will be added (.00)
Go back into the input
Can't delete numbers from the end of the input. You can only delete the entire number and start again

Expected behavior
Should be able to delete characters from the end of the input.
Code Sandbox
https://codesandbox.io/s/epic-ramanujan-0qn63?file=/src/App.js
Additional context
Add any other context about the problem here.

bump

bump

any idea how to solve this issue?


fix: 1. image-quota-list 404 not found 2. usage nil pointer panic

这个 PR 实现什么功能/修复什么问题:
修正：1. image-quota-list报404 not foudn 2. usage报nil pointer panic
是否需要 backport 到之前的 release 分支:

release/2.13

/cc @zexi
/area region

Codecov Report

Merging #4119 into master will increase coverage by 0.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #4119      +/-   ##
=========================================
+ Coverage    6.86%   6.87%   +0.01%
=========================================
  Files         519     519
  Lines       87542   87544       +2
=========================================
+ Hits         6008    6021      +13
+ Misses      81036   81025      -11
  Partials      498     498

Flag
Coverage Δ

#aFlag
6.87% <0%> (+0.01%)
:arrow_up:

Impacted Files
Coverage Δ

pkg/compute/models/filters.go
0% <0%> (ø)
:arrow_up:

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
:arrow_up:

pkg/cloudcommon/cronman/cronman.go
54.85% <0%> (+5.33%)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm
/approve


Able to show chart but blank on map/radar

Hello,
Was exploring this GitHub code and wonder how I could install it properly. Manage to display iBeacon on the chart but having trouble trying to figure out why I could not load both map & radar. I've already change the lat & long, import map.
Can I check with you if I need to add some code in BeaconManager? I've already found my beacon macAddress, rssi value but unsure how to import it to BeaconManager. Sorry for this basic question, I'm new to Java Language & hope I could get guide from you.

Hey,
make sure that you also have a valid LocationProvider set for your beacons. Please refer to #144 for details.

Hey,
make sure that you also have a valid LocationProvider set for your beacons. Please refer to #144 for details.