IModelListViewOptionsAdvBandedView could not be found

Hello. new version 19.1.5.  IModelListViewOptionsAdvBandedView could not be found!!!

Hi,
cannot tell much with such short guidance, please provide repro instruction

We have the same case with the IModelListViewOptionsGridView interface, it is being used in our code.
Both interfaces are removed in this commit: https://github.com/eXpandFramework/eXpand/commit/649190ddd939632ef2ca1a0728b3a47b497a3d1a#diff-65749f305919a28ac3550072f5c1505d without any explanation why it is removed or any code that can replace.

the mapping is now replaced with ModelMapper apologies for the temp commit.
Useful methods to retrieve dynamic interfaces such as the IModelListViewOptionsGridView are describe in the docs
https://github.com/eXpandFramework/DevExpress.XAF/tree/lab/src/Modules/ModelMapper#details
if you still have issues please provide details on how u used the past dynamic model implemention

Closing issue for age. Feel free to reopen it at any time.
.Thank you for your contribution.


feat(Illustration): add Events illustration

Overview

add Events illustration

PR Checklist

[ ] Related to designs:
[ ] Related to JIRA ticket: [ABC-123]
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change
[ ] This PR includes testing instructions tests for the code change
[ ] The alpha package of this PR is passing end-to-end tests in all relevant Codecademy repositories

Testing Instructions

Don't make me tap the sign.
PR Links and Envs

Repository
PR Link
PR Env

Monolith
Monolith PR
Monolith Env

Portal
Portal Link
Portal Env

Another Repo
Another Link
Another Env

📬Published Alpha Packages:@codecademy/gamut@55.13.2-alpha.28ac6c.0@codecademy/gamut-illustrations@0.42.1-alpha.28ac6c.0@codecademy/gamut-kit@0.6.383-alpha.28ac6c.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://6615aa7bd9897b389963528a--gamut-preview.netlify.appDeploy Logs

🚀 Styleguide deploy preview ready!https://661d5c0024faf50b3a2cfdf5--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut@55.17.2-alpha.6d5e71.0@codecademy/gamut-illustrations@0.43.1-alpha.6d5e71.0@codecademy/gamut-kit@0.6.399-alpha.6d5e71.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://661d68591c148e133f24fff8--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut@55.17.2-alpha.e185c8.0@codecademy/gamut-illustrations@0.43.1-alpha.e185c8.0@codecademy/gamut-kit@0.6.399-alpha.e185c8.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://661d6b92653e780bc5fcab90--gamut-preview.netlify.appDeploy Logs


test: Make dump_wsgi.py work on both py2 and py3k

Current coverage is 97.68% (diff: 100%)

Merging #935 into master will decrease coverage by 2.31%

@@           master       #935   diff @@
========================================
  Files          31         31
  Lines        1989       1989
  Methods         0          0
  Messages        0          0
  Branches      328        314    -14
========================================
- Hits         1989       1943    -46
- Misses          0         32    +32
- Partials        0         14    +14

Powered by Codecov. Last update fb96e7d...118f049


Wrong coverage information

Describe the bug
The JSON coverage report doesn't provide correct positions of functions, which causes some problems when I try to merge the vitest coverage reports with other reports from different tools.
Reproduction
I created a mini repo to show this issue. https://github.com/issueset/vitest-coverage-issue
$ git clone https://github.com/issueset/vitest-coverage-issue
$ cd vitest-coverage-issue
$ pnpm install
$ pnpm test:c8
$ cat coverage-c8/coverage-final.json
$ pnpm test:vitest
$ cat coverage-vitest/coverage-final.json

If I output the coverage using pnpm test:c8, the coverage information coverage-c8/coverage-final.json are very reasonable:
  {
    "path": "/Users/ocavue/code/play/vitest-coverage/mjs/code.mjs",
    "fnMap": {
      "0": {
        "name": "FUNC_01",
        "decl": {
          "start": { "line": 1, "column": 0 },
          "end": { "line": 3, "column": 1 }
        },
        "loc": {
          "start": { "line": 1, "column": 0 },
          "end": { "line": 3, "column": 1 }
        },
        "line": 1
      },
      "1": {
        "name": "FUNC_02",
        "decl": {
          "start": { "line": 4, "column": 0 },
          "end": { "line": 6, "column": 1 }
        },
        "loc": {
          "start": { "line": 4, "column": 0 },
          "end": { "line": 6, "column": 1 }
        },
        "line": 4
      },
      "2": {
        "name": "FUNC_03",
        "decl": {
          "start": { "line": 10, "column": 0 },
          "end": { "line": 12, "column": 1 }
        },
        "loc": {
          "start": { "line": 10, "column": 0 },
          "end": { "line": 12, "column": 1 }
        },
        "line": 10
      }
    }
  }

However, if I run pnpm test:vitest, the coverage information (shown below) is odd.
Specifically,

The start line of FUNC_01 should be 1 instead of 2
The column of FUNC_01 is -1
The end position of FUNC_01 is { "line": 4, "column": 2 }, but FUNC_01 only takes the first three lines.

{
    "path": "/Users/ocavue/code/play/vitest-coverage/mjs/code.mjs",
    "fnMap": {
      "0": {
        "name": "FUNC_01",
        "decl": {
          "start": { "line": 2, "column": -1 },
          "end": { "line": 4, "column": 2 }
        },
        "loc": {
          "start": { "line": 2, "column": -1 },
          "end": { "line": 4, "column": 2 }
        },
        "line": 2
      },
      "1": {
        "name": "FUNC_02",
        "decl": {
          "start": { "line": 4, "column": 1 },
          "end": { "line": 7, "column": 0 }
        },
        "loc": {
          "start": { "line": 4, "column": 1 },
          "end": { "line": 7, "column": 0 }
        },
        "line": 4
      },
      "2": {
        "name": "FUNC_03",
        "decl": {
          "start": { "line": 10, "column": 1 },
          "end": { "line": 13, "column": 0 }
        },
        "loc": {
          "start": { "line": 10, "column": 1 },
          "end": { "line": 13, "column": 0 }
        },
        "line": 10
      }
    }
  }

If I check the coverage information for code.ts, then I can find more weird things:

I can't find FUNC_03 and I can get three get functions from nowhere.
FUNC_01 ends at { "line": 4, "column": 19 }, which has a lot of overlay with FUNC_02.

  {
    "path": "/Users/ocavue/code/play/vitest-coverage/ts/code.ts",
    "fnMap": {
      "0": {
        "name": "FUNC_01",
        "decl": {
          "start": { "line": 1, "column": 19 },
          "end": { "line": 4, "column": 19 }
        },
        "loc": {
          "start": { "line": 1, "column": 19 },
          "end": { "line": 4, "column": 19 }
        },
        "line": 1
      },
      "1": {
        "name": "FUNC_02",
        "decl": {
          "start": { "line": 4, "column": 0 },
          "end": { "line": 10, "column": 19 }
        },
        "loc": {
          "start": { "line": 4, "column": 0 },
          "end": { "line": 10, "column": 19 }
        },
        "line": 4
      },
      "2": {
        "name": "get",
        "decl": {
          "start": { "line": 14, "column": 0 },
          "end": { "line": 14, "column": 19 }
        },
        "loc": {
          "start": { "line": 14, "column": 0 },
          "end": { "line": 14, "column": 19 }
        },
        "line": 14
      },
      "3": {
        "name": "get",
        "decl": {
          "start": { "line": 15, "column": 0 },
          "end": { "line": 15, "column": 19 }
        },
        "loc": {
          "start": { "line": 15, "column": 0 },
          "end": { "line": 15, "column": 19 }
        },
        "line": 15
      },
      "4": {
        "name": "get",
        "decl": {
          "start": { "line": 16, "column": 0 },
          "end": { "line": 16, "column": 19 }
        },
        "loc": {
          "start": { "line": 16, "column": 0 },
          "end": { "line": 16, "column": 19 }
        },
        "line": 16
      }
    }
  }

System Info
System:
    OS: macOS 12.3.1
    CPU: (8) arm64 Apple M1
    Memory: 100.78 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.14.0 - /opt/homebrew/bin/node
    Yarn: 1.22.17 - /opt/homebrew/bin/yarn
    npm: 8.3.1 - /opt/homebrew/bin/npm
  Browsers:
    Chrome: 101.0.4951.64
    Firefox: 99.0.1
    Safari: 15.4

Used Package Manager
pnpm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

@ocavue is this issue still relevant?

[...] causes some problems when I try to merge the vitest coverage reports with other reports from different tools.

Are you merging c8 results with other V8 results (chromium profiler, nodejs native), or some other instrumented coverage results? The V8 coverage reports produced by c8 simply cannot be merged with instrumented coverage providers like istanbul. The way how they collect the coverage is too different. v8-to-istanbul package used by c8 tries its best but still, not possible.
However you should be able to use istanbul provider from Vitest and merge those results with other tools, e.g. nyc. I'm merging Vitest's istanbul reports with Cypress results and they work perfectly together.

I just updated all dependencies to latest versions in my testing repo and I still can reproduce this issue.
I tried to merge the coverage json output by vitest (using @vitest/coverage-c8) and chromium profiler and failed. As far as I know, they both use V8 code coverage under the hood, which makes this failure weird.
After a little digging, I found that coverage json from @vitest/coverage-c8 has wrong sourcemap information. If I use c8 directly without invoking vitest, I can get the correct result. That's why I believe it's a vitest bug and opened this issue.

By the way, I'm not using istanbul at all in my case, simply because [babel-plugin-istanbul](https://github.com/istanbuljs/babel-plugin-istanbul) (which is required when using Cypress coverage) slows down the app significantly and increases the waiting time for end-to-end testing.

@ocavue could you try if adding some random comment on first line of the files changes anything? This might indeed by a sourcemapping issue.
Comparing "pure C8" vs Vitest with C8 below.
Before:

After, now results match:

Adding some comment doesn't improve or worsen the sourcemap issue.
Take the screenshot below as an example, the range of FUNC_01 in the coverage json is too wide. It shouldn't include line 14 at all.

Make sure the versions of vitest and @vitest/coverage-c8 in your package.json match. There is some hacky offset used by @vitest/coverage-c8 which depends on vitest package's implementation. https://github.com/issueset/vitest-coverage-issue/blob/d85b02755ee9288447ff7982a4921674d8b5b837/package.json#L18-L19
Here is the same reproduction case on my machine. By adding the top level comment, the coverage reports match. If you could also verify this, I'd be able to narrow down the root cause for this and maybe find a solution.

However the branch count of Vitest's reports won't match. Vitest has to add some wrapper code around the files under testing, and those end up in V8 reports. As C8 does not do any AST based filtering, there won't be an easy way to remove those wrappers added by Vitest.

I will double check the version. Does code.ts also works on your machine? Your screenshot seems to be code.mjs.

Does code.ts also works on your machine?

Location of FUNC_01 looks better than in https://github.com/vitest-dev/vitest/issues/1330#issuecomment-1367113170.

I make a full dependency upgrading in my testing repo and the coverage information does look much more accurate! That's a good news. I will do some further test in our real project and see if everything is ok.

@AriPerkkio  I'm not see any wrong coverage recently. I will close this issue. Thanks for your helping!


observability - curl call doesn't work on macOS

Expected Behavior
The provided curl call should work on macOS:
curl -s http://localhost:9411/api/v2/traces?spanName=calllocal%2Fhello-tracing%2Fneworder -H  accept:application/json -o output.json && python -m json.tool output.json

Actual Behavior
zsh: no matches found: http://localhost:9411/api/v2/traces?spanName=calllocal%2Fhello-tracing%2Fneworder

Steps to Reproduce the Problem
Just run the command

Closing this issue due to inactivity. Please feel free to reopen this if needed.

Closing this issue due to inactivity. Please feel free to reopen this if needed.


Ability to follow channels without Twitch account

Right now, this add-on doesn't work without a Twitch account. Would it be possible to add a functionality to follow channels without actually having a Twitch account (e.g. by providing the channel's username)? The data could then also be exported/imported.
This is what Twire does for example.

I have no plans for this option.
The current operation of the Helix API requires an authentication token to retrieve data. I could deploy a server delivering app tokens, but I see no benefit in offering this alternative just for a few people.


query builder: entrance - 🚧 under construction 🚧

Summary

[x] docs: add guide for cross-project setup
[x] bump dependencies
[x] Have a different set of methods in PureModel for get databases() and etc. so we can safely exclude generated elements or unexposed system elements
[x] Refactor QueryBuilderState core

[x] Get rid of QueryBuilderMode
[x] Move milestoning logic out of QueryBuilderSetupState
[x] Reorganize codebase: all core query-builder logic will be moved to (components|stores)/query-builder
[x] Cleanup QueryEditorStore: renaming stores and change QueryEditorStore.queryBuilderState to optional and use that as indicator if the QueryEditorStore has been properly initialized or not
[x] BREAKING CHANGE: Update URL pattern for edit page:

[x] /query/dataspace -> /query/create/create-from-dataspace/
[x] /query/service -> /query/create/create-from-service/
[x] /query/create -> /query/create/manual/

[x] Make QueryBuilderSetupState abstract: Make Class, Mapping, Runtime the basis of QueryBuilderSetupState, refactor this state so that we could make it abstract, as long as we could (at any point in time) answer the question what is the class, mapping, and runtime?

[x] Flatten QueryBuilderSetupState and inline it into QueryBuilderState
[x] Make changeClass to no longer allow undefined, remove the isRebuildingState flag
[x] Componentize class selector with milestoning: QueryBuilderClassSelector
[x] Generalize the current setup panel: it will now just allow setting class, mapping, runtime without any cascading, i.e. BasicQueryBuilderState
[x] Fix a problem with going from text to form mode when the query is unsupported duplicates the number of query parameters

[x] Create different workflows for query builder

[x] Closes #319
[x] Closes #1300

Introduce workflows to query builder

QueryBuilderState implementation
Usage
Setup Cascading Ordering

[x]
MappingQueryBuilderState
create a manual query
MRC (1)

[x]
ServiceQueryBuilderState (0)
load service query, (studio) edit query
EcC/MRC (2)

[x]
ClassQueryBuilderState
load existing query, (studio) query class, query diagram class
CMR

[x]
DataSpaceQueryBuilderState
load existing query (if the query has the dataspace tag)
DEcC (3)

[x]
MappingExecutionQueryBuilderState
(studio) mapping test/execution query editor
MRC (4)

Annotation: M - Mapping, C - Class, R - Runtime, D - DataSpace, Ec - Execution Context

This can also be used for the standalone service query editor in Legend Studio - which will not be done as part of this PR though.
Changing the MR will update the URL, not reload the app
If the service has single execution, show MR (with some sort of indication that these come from a service); in this case, M and R are fixed. For multi-execution services, show selector for Ec
If we're editing an existing query created from a dataspace, if one changes the dataspace, we will pop up a warning to inform that one's query will be reset and if one wants to save this query with the new dataspace or create a new query. If we're creating a new query, and if one changes the dataspace, the app will reload, changing the execution context will just change the URL. We could let user change the runtime and preview the dataspace from the dropdown
Fix the MR, disallow parameters, hide the result panel

[x] Create different workflows for query builder

[x] MappingQueryBuilderState
[x] ServiceQueryBuilderState
[x] ClassQueryBuilderState
[x] DataSpaceQueryBuilderState

[x] Build basic dataspace query builder setup panel
[x] Allow updating runtime in setup panel
[x] Handle the case where editing existing query could be routed to use this mode
[ ] Allow viewing dataspace when inside of query builder - I have thought about this; it's not hard to implement, but it's hard to think of a reasonable UI for this due to the amount of information we already had in the dataspace selector, also I think it doesn't make a lot of sense, since users can always go back to the setup screen - we could revisit this later

[x] MappingExecutionQueryBuilderState

How did you test this change?

[ ] Test(s) added
[x] Manual testing (please provide screenshots/recordings)
[ ] No testing (please provide an explanation)

Something is currently going on with Github, I can't upload screenshots to this PR at all, will try again later


civetweb issues

I'm playing with civetweb webserver module on latest zephyr tree and I see some issues here
stack size
When I try to serve a bit bigger pages that are in provided in samples I got stack overflow errors. Looking into code this does not lookg good to me
#if defined(USE_STACK_SIZE) && (USE_STACK_SIZE > 1)
#define ZEPHYR_STACK_SIZE USE_STACK_SIZE
#else
#define ZEPHYR_STACK_SIZE 8096
#endif
...
/* General purpose buffer size. */
#if !defined(MG_BUF_LEN) /* in bytes */
#define MG_BUF_LEN (1024 * 8)
#endif
...
static void
discard_unread_request_data(struct mg_connection *conn)
{
	char buf[MG_BUF_LEN];

MG_BUF_LEN sized arrays are allocated on stack on several places and this size is even bigger than default stack size used in zephyr sample.
very slow upload
I have tested upload using form (FileUploadForm handler) in modules/lib/civetweb/examples/embedded_c/embedded_c.c. It is unacceptably slow on my embedded platform (stm32f429) and also very slow using qemu_x86, so I think it is not platform related.
Civetweb threads are made by pthread api with default priority equal to 0 which corresponds to lowest preempt priority of 15. I was able to speed up the upload only by changing the priority to highest one (-15). The same priority is used in zephyr/samples/net/sockets/dumb_http_server_mt. However with such setup my pages stop to work entirely with errors like <err> net_pkt: Data buffer (28) allocation failed (arp_prepare_reply:495). I was not able to found the connection between packet allocations and civetweb priority yet. It seems wierd to me, this failed allocations start to appear even when the priority is inreased only by a small number, not neccessarily to -15.
Do anyone use civetweb on zephyr for some real project?
my config

#
# Modules
#

#
# Optional modules. Make sure they're installed, via the project manifest.
#
# CONFIG_CANOPENNODE is not set
CONFIG_CIVETWEB=y
# CONFIG_LIBMETAL is not set
# CONFIG_HAS_SEMTECH_LORAMAC is not set
# CONFIG_HAS_SEMTECH_RADIO_DRIVERS is not set
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_BUILTIN=y
# CONFIG_MBEDTLS_LIBRARY is not set
CONFIG_MBEDTLS_CFG_FILE="config-tls-generic.h"

#
# TLS configuration
#

#
# Supported TLS version
#
# CONFIG_MBEDTLS_TLS_VERSION_1_0 is not set
# CONFIG_MBEDTLS_TLS_VERSION_1_1 is not set
CONFIG_MBEDTLS_TLS_VERSION_1_2=y
CONFIG_MBEDTLS_DTLS=y
# CONFIG_MBEDTLS_SSL_EXPORT_KEYS is not set
# end of Supported TLS version

#
# Ciphersuite configuration
#

#
# Supported key exchange modes
#
# CONFIG_MBEDTLS_KEY_EXCHANGE_ALL_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_PSK_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED is not set
CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_ENABLED=y
# CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED is not set
# CONFIG_MBEDTLS_ECDSA_DETERMINISTIC is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED is not set
# CONFIG_MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED is not set

#
# Supported cipher modes
#
# CONFIG_MBEDTLS_CIPHER_ALL_ENABLED is not set
CONFIG_MBEDTLS_CIPHER_AES_ENABLED=y
CONFIG_MBEDTLS_AES_ROM_TABLES=y
# CONFIG_MBEDTLS_CIPHER_CAMELLIA_ENABLED is not set
CONFIG_MBEDTLS_CIPHER_DES_ENABLED=y
# CONFIG_MBEDTLS_CIPHER_ARC4_ENABLED is not set
# CONFIG_MBEDTLS_CIPHER_CHACHA20_ENABLED is not set
# CONFIG_MBEDTLS_CIPHER_BLOWFISH_ENABLED is not set
# CONFIG_MBEDTLS_CIPHER_CCM_ENABLED is not set
# CONFIG_MBEDTLS_CIPHER_GCM_ENABLED is not set
# CONFIG_MBEDTLS_CIPHER_MODE_XTS_ENABLED is not set
CONFIG_MBEDTLS_CIPHER_MODE_CBC_ENABLED=y
# CONFIG_MBEDTLS_CIPHER_MODE_CTR_ENABLED is not set

#
# Supported message authentication methods
#
# CONFIG_MBEDTLS_MAC_ALL_ENABLED is not set
# CONFIG_MBEDTLS_MAC_MD4_ENABLED is not set
CONFIG_MBEDTLS_MAC_MD5_ENABLED=y
CONFIG_MBEDTLS_MAC_SHA1_ENABLED=y
CONFIG_MBEDTLS_MAC_SHA256_ENABLED=y
CONFIG_MBEDTLS_SHA256_SMALLER=y
# CONFIG_MBEDTLS_MAC_SHA512_ENABLED is not set
# CONFIG_MBEDTLS_MAC_POLY1305_ENABLED is not set
# CONFIG_MBEDTLS_MAC_CMAC_ENABLED is not set
# end of Ciphersuite configuration

#
# Random number generators
#
CONFIG_MBEDTLS_CTR_DRBG_ENABLED=y
# CONFIG_MBEDTLS_HMAC_DRBG_ENABLED is not set

#
# Other configurations
#
CONFIG_MBEDTLS_CIPHER=y
CONFIG_MBEDTLS_MD=y
# CONFIG_MBEDTLS_GENPRIME_ENABLED is not set
# CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT is not set
CONFIG_MBEDTLS_HAVE_ASM=y
CONFIG_MBEDTLS_ENTROPY_ENABLED=y
# CONFIG_MBEDTLS_USER_CONFIG_ENABLE is not set
# end of TLS configuration

CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=1500
CONFIG_MBEDTLS_DEBUG=y
CONFIG_MBEDTLS_DEBUG_LEVEL=0
# CONFIG_MBEDTLS_TEST is not set
CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=64000
CONFIG_APP_LINK_WITH_MBEDTLS=y
# CONFIG_HAS_MEC_HAL is not set
# CONFIG_OPENAMP is not set
# CONFIG_MIPI_SYST_LIB is not set
# CONFIG_TINYCBOR is not set
# CONFIG_TINYCRYPT is not set
# end of Modules

# CONFIG_SPI is not set
CONFIG_NET_L2_ETHERNET=y
CONFIG_TEST_RANDOM_GENERATOR=y
# CONFIG_I2C is not set
# CONFIG_MODEM is not set
CONFIG_UART_INTERRUPT_DRIVEN=y
# CONFIG_NET_IPV6 is not set
# CONFIG_NET_CONFIG_NEED_IPV6 is not set
# CONFIG_BUILD_OUTPUT_BIN is not set
CONFIG_BOARD="qemu_x86"
CONFIG_SOC="ia32"
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=25000000
CONFIG_HPET_TIMER=y
# CONFIG_APIC_TIMER is not set
# CONFIG_PCIE_MMIO_CFG is not set
CONFIG_UART_PIPE_ON_DEV_NAME="UART_1"
CONFIG_QEMU_TARGET=y
CONFIG_BOARD_QEMU_X86=y
# CONFIG_BOARD_QEMU_X86_64 is not set

#
# Board Options
#
# CONFIG_QEMU_ICOUNT is not set
# end of Board Options

# CONFIG_SOC_APOLLO_LAKE is not set
# CONFIG_SOC_ATOM is not set
CONFIG_SOC_IA32=y

#
# Hardware Configuration
#
# CONFIG_SOC_LOG_LEVEL_OFF is not set
# CONFIG_SOC_LOG_LEVEL_ERR is not set
# CONFIG_SOC_LOG_LEVEL_WRN is not set
CONFIG_SOC_LOG_LEVEL_INF=y
# CONFIG_SOC_LOG_LEVEL_DBG is not set
CONFIG_SOC_LOG_LEVEL=3
# end of Hardware Configuration

#
# X86 Architecture Options
#
CONFIG_ARCH="x86"
CONFIG_CPU_MINUTEIA=y
# CONFIG_X86_64 is not set
CONFIG_X86_KERNEL_OFFSET=1048576
CONFIG_MAX_IRQ_LINES=128
# CONFIG_XIP is not set
CONFIG_PIC_DISABLE=y
# CONFIG_ACPI is not set
CONFIG_X86_MEMMAP_ENTRIES=1
CONFIG_MULTIBOOT=y
# CONFIG_MULTIBOOT_INFO is not set
# CONFIG_MULTIBOOT_MEMMAP is not set
# CONFIG_MULTIBOOT_FRAMEBUF is not set
CONFIG_EXCEPTION_DEBUG=y
CONFIG_X86_VERY_EARLY_CONSOLE=y
CONFIG_X86_MMU=y
CONFIG_X86_MMU_PAGE_POOL_PAGES=15
CONFIG_NESTED_INTERRUPTS=y

#
# Memory Layout Options
#
CONFIG_IDT_NUM_VECTORS=256
CONFIG_SET_GDT=y
# CONFIG_GDT_DYNAMIC is not set
# end of Memory Layout Options

#
# Processor Capabilities
#

#
# Architecture Floating Point Options
#
# CONFIG_SSE is not set
CONFIG_LAZY_FPU_SHARING=y
# end of Architecture Floating Point Options

CONFIG_CACHE_LINE_SIZE_DETECT=y
CONFIG_CACHE_LINE_SIZE=0
# CONFIG_CACHE_FLUSHING is not set
# end of Processor Capabilities

CONFIG_X86_EXCEPTION_STACK_TRACE=y
CONFIG_MAIN_STACK_SIZE=8192
CONFIG_IDLE_STACK_SIZE=2048
CONFIG_ISR_STACK_SIZE=8192
CONFIG_TEST_EXTRA_STACKSIZE=0
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1024
# end of X86 Architecture Options

CONFIG_X86=y
CONFIG_ARCH_IS_SET=y

#
# General Architecture Options
#
# CONFIG_ARCH_LOG_LEVEL_OFF is not set
# CONFIG_ARCH_LOG_LEVEL_ERR is not set
# CONFIG_ARCH_LOG_LEVEL_WRN is not set
CONFIG_ARCH_LOG_LEVEL_INF=y
# CONFIG_ARCH_LOG_LEVEL_DBG is not set
CONFIG_ARCH_LOG_LEVEL=3
# CONFIG_MPU_LOG_LEVEL_OFF is not set
# CONFIG_MPU_LOG_LEVEL_ERR is not set
# CONFIG_MPU_LOG_LEVEL_WRN is not set
CONFIG_MPU_LOG_LEVEL_INF=y
# CONFIG_MPU_LOG_LEVEL_DBG is not set
CONFIG_MPU_LOG_LEVEL=3
CONFIG_SRAM_SIZE=4096
CONFIG_SRAM_BASE_ADDRESS=0x0
CONFIG_FLASH_SIZE=4096
CONFIG_FLASH_BASE_ADDRESS=0x500000
# CONFIG_HW_STACK_PROTECTION is not set
# CONFIG_USERSPACE is not set
CONFIG_PRIVILEGED_STACK_SIZE=1024
CONFIG_KOBJECT_TEXT_AREA=256
# CONFIG_STACK_GROWS_UP is not set

#
# Interrupt Configuration
#
# CONFIG_DYNAMIC_INTERRUPTS is not set
# CONFIG_GEN_ISR_TABLES is not set
# end of Interrupt Configuration
# end of General Architecture Options

CONFIG_ARCH_HAS_STACK_PROTECTION=y
CONFIG_ARCH_HAS_USERSPACE=y
CONFIG_CPU_HAS_FPU=y
CONFIG_MEMORY_PROTECTION=y

#
# Floating Point Options
#
CONFIG_FPU=y
CONFIG_FPU_SHARING=y
# end of Floating Point Options

#
# General Kernel Options
#
# CONFIG_KERNEL_LOG_LEVEL_OFF is not set
# CONFIG_KERNEL_LOG_LEVEL_ERR is not set
# CONFIG_KERNEL_LOG_LEVEL_WRN is not set
CONFIG_KERNEL_LOG_LEVEL_INF=y
# CONFIG_KERNEL_LOG_LEVEL_DBG is not set
CONFIG_KERNEL_LOG_LEVEL=3
CONFIG_MULTITHREADING=y
CONFIG_NUM_COOP_PRIORITIES=16
CONFIG_NUM_PREEMPT_PRIORITIES=15
CONFIG_MAIN_THREAD_PRIORITY=0
CONFIG_COOP_ENABLED=y
CONFIG_PREEMPT_ENABLED=y
CONFIG_PRIORITY_CEILING=0
CONFIG_NUM_METAIRQ_PRIORITIES=0
# CONFIG_SCHED_DEADLINE is not set
CONFIG_THREAD_STACK_INFO=y
# CONFIG_THREAD_CUSTOM_DATA is not set
CONFIG_ERRNO=y
# CONFIG_SCHED_DUMB is not set
CONFIG_SCHED_SCALABLE=y
# CONFIG_SCHED_MULTIQ is not set
CONFIG_WAITQ_SCALABLE=y
# CONFIG_WAITQ_DUMB is not set

#
# Kernel Debugging and Metrics
#
# CONFIG_INIT_STACKS is not set
CONFIG_BOOT_BANNER=y
CONFIG_BOOT_DELAY=0
# CONFIG_EXECUTION_BENCHMARKING is not set
# CONFIG_THREAD_MONITOR is not set
# CONFIG_THREAD_NAME is not set
# end of Kernel Debugging and Metrics

#
# Work Queue Options
#
CONFIG_SYSTEM_WORKQUEUE_PRIORITY=-1
# end of Work Queue Options

#
# Atomic Operations
#
CONFIG_ATOMIC_OPERATIONS_BUILTIN=y
# end of Atomic Operations

#
# Timer API Options
#
CONFIG_TIMESLICING=y
CONFIG_TIMESLICE_SIZE=0
CONFIG_TIMESLICE_PRIORITY=0
CONFIG_POLL=y
# end of Timer API Options

#
# Other Kernel Object Options
#
CONFIG_NUM_MBOX_ASYNC_MSGS=10
CONFIG_NUM_PIPE_ASYNC_MSGS=10
CONFIG_MEM_POOL_HEAP_BACKEND=y
CONFIG_HEAP_MEM_POOL_SIZE=1024
CONFIG_HEAP_MEM_POOL_MIN_SIZE=64
# end of Other Kernel Object Options

CONFIG_ARCH_HAS_CUSTOM_SWAP_TO_MAIN=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=100
CONFIG_SYS_CLOCK_EXISTS=y
# CONFIG_LEGACY_TIMEOUT_API is not set
CONFIG_TIMEOUT_64BIT=y

#
# Initialization Priorities
#
CONFIG_KERNEL_INIT_PRIORITY_OBJECTS=30
CONFIG_KERNEL_INIT_PRIORITY_DEFAULT=40
CONFIG_KERNEL_INIT_PRIORITY_DEVICE=50
CONFIG_APPLICATION_INIT_PRIORITY=90
# end of Initialization Priorities

#
# Security Options
#
# CONFIG_STACK_CANARIES is not set
CONFIG_STACK_POINTER_RANDOM=0
# end of Security Options

#
# SMP Options
#
CONFIG_MP_NUM_CPUS=1
# end of SMP Options

CONFIG_TICKLESS_IDLE=y
CONFIG_TICKLESS_IDLE_THRESH=3
CONFIG_TICKLESS_KERNEL=y
# CONFIG_SYS_POWER_MANAGEMENT is not set
# CONFIG_DEVICE_POWER_MANAGEMENT is not set
# end of General Kernel Options

CONFIG_HAS_DTS=y

#
# Device Drivers
#
# CONFIG_IEEE802154 is not set
# CONFIG_LORA is not set
CONFIG_UART_CONSOLE_ON_DEV_NAME="UART_0"
CONFIG_CONSOLE=y
CONFIG_CONSOLE_INPUT_MAX_LINE_LEN=128
CONFIG_CONSOLE_HAS_DRIVER=y
# CONFIG_CONSOLE_HANDLER is not set
CONFIG_UART_CONSOLE=y
CONFIG_UART_CONSOLE_INIT_PRIORITY=60
# CONFIG_UART_CONSOLE_DEBUG_SERVER_HOOKS is not set
# CONFIG_UART_CONSOLE_MCUMGR is not set
# CONFIG_USB_UART_CONSOLE is not set
# CONFIG_RAM_CONSOLE is not set
# CONFIG_IPM_CONSOLE_SENDER is not set
# CONFIG_IPM_CONSOLE_RECEIVER is not set
CONFIG_UART_PIPE=y
# CONFIG_UART_MCUMGR is not set
# CONFIG_UART_CONSOLE_LOG_LEVEL_OFF is not set
# CONFIG_UART_CONSOLE_LOG_LEVEL_ERR is not set
# CONFIG_UART_CONSOLE_LOG_LEVEL_WRN is not set
CONFIG_UART_CONSOLE_LOG_LEVEL_INF=y
# CONFIG_UART_CONSOLE_LOG_LEVEL_DBG is not set
CONFIG_UART_CONSOLE_LOG_LEVEL=3
# CONFIG_GSM_MUX is not set
CONFIG_UART_MUX_RX_STACK_SIZE=512
CONFIG_UART_MUX_RX_PRIORITY=7
# CONFIG_UART_MUX_LOG_LEVEL_OFF is not set
# CONFIG_UART_MUX_LOG_LEVEL_ERR is not set
# CONFIG_UART_MUX_LOG_LEVEL_WRN is not set
CONFIG_UART_MUX_LOG_LEVEL_INF=y
# CONFIG_UART_MUX_LOG_LEVEL_DBG is not set
CONFIG_UART_MUX_LOG_LEVEL=3

#
# Ethernet Drivers
#
# CONFIG_ETHERNET_LOG_LEVEL_OFF is not set
# CONFIG_ETHERNET_LOG_LEVEL_ERR is not set
# CONFIG_ETHERNET_LOG_LEVEL_WRN is not set
# CONFIG_ETHERNET_LOG_LEVEL_INF is not set
# CONFIG_ETHERNET_LOG_LEVEL_DBG is not set
CONFIG_ETHERNET_LOG_LEVEL_DEFAULT=y
CONFIG_ETHERNET_LOG_LEVEL=3
CONFIG_ETH_INIT_PRIORITY=80
# CONFIG_ETH_E1000_VERBOSE_DEBUG is not set
# CONFIG_ETH_STM32_HAL is not set
# CONFIG_ETH_SMSC911X is not set
# CONFIG_ETH_STELLARIS is not set
# CONFIG_ETH_LITEETH is not set
# CONFIG_ETH_GECKO is not set
# end of Ethernet Drivers

CONFIG_SLIP=y
CONFIG_SLIP_DRV_NAME="slip"
# CONFIG_SLIP_LOG_LEVEL_OFF is not set
# CONFIG_SLIP_LOG_LEVEL_ERR is not set
# CONFIG_SLIP_LOG_LEVEL_WRN is not set
# CONFIG_SLIP_LOG_LEVEL_INF is not set
# CONFIG_SLIP_LOG_LEVEL_DBG is not set
CONFIG_SLIP_LOG_LEVEL_DEFAULT=y
CONFIG_SLIP_LOG_LEVEL=3
# CONFIG_SLIP_STATISTICS is not set
CONFIG_SLIP_TAP=y
CONFIG_SLIP_MAC_ADDR=""
# CONFIG_NET_LOOPBACK is not set
CONFIG_SERIAL=y

#
# Capabilities
#
CONFIG_SERIAL_HAS_DRIVER=y
CONFIG_SERIAL_SUPPORT_INTERRUPT=y
# CONFIG_UART_LINE_CTRL is not set
# CONFIG_UART_DRV_CMD is not set

#
# Serial Drivers
#
CONFIG_UART_NS16550=y
# CONFIG_UART_NS16750 is not set
# CONFIG_UART_NS16550_ACCESS_WORD_ONLY is not set
# CONFIG_UART_NSIM is not set
# CONFIG_UART_ALTERA_JTAG is not set
# CONFIG_UART_PL011 is not set

#
# Interrupt Controllers
#
# CONFIG_SWERV_PIC is not set
CONFIG_LOAPIC=y
CONFIG_LOAPIC_BASE_ADDRESS=0xFEE00000
# CONFIG_X2APIC is not set
# CONFIG_LOAPIC_SPURIOUS_VECTOR is not set
CONFIG_IOAPIC=y
CONFIG_IOAPIC_NUM_RTES=24
CONFIG_IOAPIC_MASK_RTE=y
# end of Interrupt Controllers

#
# Timer Drivers
#
# CONFIG_LOAPIC_TIMER is not set
# CONFIG_SYSTEM_CLOCK_DISABLE is not set
CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME=y
# CONFIG_SYSTEM_CLOCK_SLOPPY_IDLE is not set
CONFIG_SYSTEM_CLOCK_INIT_PRIORITY=0
CONFIG_TICKLESS_CAPABLE=y
# end of Timer Drivers

CONFIG_ENTROPY_GENERATOR=y
# CONFIG_PCIE is not set
# CONFIG_GPIO is not set
# CONFIG_SHARED_IRQ is not set
# CONFIG_I2S is not set
# CONFIG_PWM is not set
# CONFIG_PINMUX is not set
# CONFIG_ADC is not set
# CONFIG_DAC is not set
# CONFIG_WATCHDOG is not set
# CONFIG_CLOCK_CONTROL is not set
# CONFIG_PTP_CLOCK is not set
# CONFIG_IPM is not set
# CONFIG_FLASH is not set
# CONFIG_SENSOR is not set
# CONFIG_COUNTER is not set
# CONFIG_DMA is not set
# CONFIG_USB is not set
# CONFIG_CRYPTO is not set
# CONFIG_DISPLAY is not set
# CONFIG_LED_STRIP is not set
# CONFIG_WIFI is not set
# CONFIG_LED is not set
# CONFIG_CAN is not set
# CONFIG_AUDIO is not set
# CONFIG_NEURAL_NET_ACCEL is not set
# CONFIG_HWINFO is not set
# CONFIG_ESPI is not set
# CONFIG_PS2 is not set
# CONFIG_KSCAN is not set
# CONFIG_VIDEO is not set
# CONFIG_EEPROM is not set
# CONFIG_PECI is not set
# CONFIG_PECI_INTERRUPT_DRIVEN is not set
# end of Device Drivers

#
# C Library
#
CONFIG_MINIMAL_LIBC=y
# CONFIG_NEWLIB_LIBC is not set
# CONFIG_EXTERNAL_LIBC is not set
CONFIG_MINIMAL_LIBC_MALLOC=y
CONFIG_MINIMAL_LIBC_MALLOC_ARENA_SIZE=65536
CONFIG_MINIMAL_LIBC_CALLOC=y
CONFIG_MINIMAL_LIBC_REALLOCARRAY=y
# CONFIG_MINIMAL_LIBC_LL_PRINTF is not set
CONFIG_STDOUT_CONSOLE=y
# end of C Library

#
# Additional libraries
#
# CONFIG_FNMATCH is not set
# CONFIG_LVGL is not set

#
# OS Support Library
#
CONFIG_JSON_LIBRARY=y
# CONFIG_RING_BUFFER is not set
# CONFIG_BASE64 is not set
# CONFIG_SYS_HEAP_VALIDATE is not set
CONFIG_SYS_HEAP_ALLOC_LOOPS=3
# CONFIG_SYS_HEAP_ALIGNED_ALLOC is not set
CONFIG_PRINTK64=y
# CONFIG_PRINTK_SYNC is not set
# end of OS Support Library

CONFIG_POSIX_MAX_FDS=16
CONFIG_POSIX_API=y
CONFIG_PTHREAD_IPC=y
CONFIG_MAX_PTHREAD_COUNT=5
CONFIG_SEM_VALUE_MAX=32767
CONFIG_POSIX_CLOCK=y
CONFIG_MAX_TIMER_COUNT=5
CONFIG_POSIX_MQUEUE=y
CONFIG_MSG_COUNT_MAX=16
CONFIG_MSG_SIZE_MAX=16
CONFIG_MQUEUE_NAMELEN_MAX=16
CONFIG_APP_LINK_WITH_POSIX_SUBSYS=y
# CONFIG_EVENTFD is not set
# CONFIG_UPDATEHUB is not set
# CONFIG_UPDATEHUB_LOG_LEVEL_OFF is not set
# CONFIG_UPDATEHUB_LOG_LEVEL_ERR is not set
# CONFIG_UPDATEHUB_LOG_LEVEL_WRN is not set
CONFIG_UPDATEHUB_LOG_LEVEL_INF=y
# CONFIG_UPDATEHUB_LOG_LEVEL_DBG is not set
CONFIG_UPDATEHUB_LOG_LEVEL=3
# CONFIG_OPENAMP_RSC_TABLE is not set
# end of Additional libraries

# CONFIG_BT is not set
# CONFIG_CONSOLE_SUBSYS is not set
# CONFIG_CPLUSPLUS is not set

#
# System Monitoring Options
#
# CONFIG_BOOT_TIME_MEASUREMENT is not set
# CONFIG_STATS is not set
# end of System Monitoring Options

#
# Debugging Options
#
CONFIG_DEBUG=y
CONFIG_STACK_USAGE=y
CONFIG_STACK_SENTINEL=y
CONFIG_PRINTK=y
CONFIG_EARLY_CONSOLE=y
CONFIG_ASSERT=y
CONFIG_ASSERT_LEVEL=2
CONFIG_SPIN_VALIDATE=y
# CONFIG_FORCE_NO_ASSERT is not set
CONFIG_ASSERT_VERBOSE=y
# CONFIG_ASSERT_NO_FILE_INFO is not set
# CONFIG_ASSERT_NO_COND_INFO is not set
# CONFIG_ASSERT_NO_MSG_INFO is not set
# CONFIG_OBJECT_TRACING is not set
# CONFIG_OVERRIDE_FRAME_POINTER_DEFAULT is not set
CONFIG_DEBUG_INFO=y
CONFIG_EXCEPTION_STACK_TRACE=y
# CONFIG_OPENOCD_SUPPORT is not set
# end of Debugging Options

# CONFIG_THREAD_ANALYZER is not set
# CONFIG_DISK_ACCESS is not set

#
# File Systems
#
# CONFIG_FILE_SYSTEM is not set
# CONFIG_NVS is not set
# end of File Systems

CONFIG_LOG=y
# CONFIG_LOG_MINIMAL is not set
# CONFIG_LOG_RUNTIME_FILTERING is not set
CONFIG_LOG_DEFAULT_LEVEL=3
CONFIG_LOG_OVERRIDE_LEVEL=0
CONFIG_LOG_MAX_LEVEL=4
# CONFIG_LOG_MIPI_SYST_ENABLE is not set

#
# Prepend non-hexdump log message with function name
#
# CONFIG_LOG_FUNC_NAME_PREFIX_ERR is not set
# CONFIG_LOG_FUNC_NAME_PREFIX_WRN is not set
# CONFIG_LOG_FUNC_NAME_PREFIX_INF is not set
CONFIG_LOG_FUNC_NAME_PREFIX_DBG=y
# end of Prepend non-hexdump log message with function name

# CONFIG_LOG_PRINTK is not set
# CONFIG_LOG_IMMEDIATE is not set
# CONFIG_LOG_ENABLE_FANCY_OUTPUT_FORMATTING is not set
CONFIG_LOG_MODE_OVERFLOW=y
# CONFIG_LOG_MODE_NO_OVERFLOW is not set
# CONFIG_LOG_BLOCK_IN_THREAD is not set
CONFIG_LOG_PROCESS_TRIGGER_THRESHOLD=10
CONFIG_LOG_PROCESS_THREAD=y
CONFIG_LOG_PROCESS_THREAD_SLEEP_MS=1000
CONFIG_LOG_PROCESS_THREAD_STACK_SIZE=768
CONFIG_LOG_BUFFER_SIZE=1024
CONFIG_LOG_DETECT_MISSED_STRDUP=y
CONFIG_LOG_STRDUP_MAX_STRING=46
CONFIG_LOG_STRDUP_BUF_COUNT=4
# CONFIG_LOG_STRDUP_POOL_PROFILING is not set
CONFIG_LOG_DOMAIN_ID=0
# CONFIG_LOG_FRONTEND is not set
CONFIG_LOG_BACKEND_UART=y
# CONFIG_LOG_BACKEND_NET is not set
# CONFIG_LOG_BACKEND_RB is not set
CONFIG_LOG_BACKEND_SHOW_COLOR=y
CONFIG_LOG_BACKEND_FORMAT_TIMESTAMP=y

#
# Management
#
# CONFIG_MCUMGR_SMP_BT is not set
# CONFIG_MCUMGR_SMP_SHELL is not set
# CONFIG_MCUMGR_SMP_UART is not set
# CONFIG_MCUMGR is not set
# CONFIG_MCUMGR_SMP_UDP is not set
# end of Management

#
# Networking
#
CONFIG_NET_BUF=y
CONFIG_NET_BUF_USER_DATA_SIZE=4
# CONFIG_NET_BUF_LOG is not set
# CONFIG_NET_BUF_LOG_LEVEL_OFF is not set
# CONFIG_NET_BUF_LOG_LEVEL_ERR is not set
# CONFIG_NET_BUF_LOG_LEVEL_WRN is not set
CONFIG_NET_BUF_LOG_LEVEL_INF=y
# CONFIG_NET_BUF_LOG_LEVEL_DBG is not set
CONFIG_NET_BUF_LOG_LEVEL=3
# CONFIG_NET_BUF_POOL_USAGE is not set
CONFIG_NETWORKING=y
CONFIG_NET_HOSTNAME_ENABLE=y
CONFIG_NET_HOSTNAME="poe"
# CONFIG_NET_HOSTNAME_UNIQUE is not set
# CONFIG_NET_HOSTNAME_LOG_LEVEL_OFF is not set
# CONFIG_NET_HOSTNAME_LOG_LEVEL_ERR is not set
# CONFIG_NET_HOSTNAME_LOG_LEVEL_WRN is not set
# CONFIG_NET_HOSTNAME_LOG_LEVEL_INF is not set
# CONFIG_NET_HOSTNAME_LOG_LEVEL_DBG is not set
CONFIG_NET_HOSTNAME_LOG_LEVEL_DEFAULT=y
CONFIG_NET_HOSTNAME_LOG_LEVEL=3

#
# Link layer options
#
# CONFIG_NET_L2_DUMMY is not set
# CONFIG_NET_L2_BT_SHELL is not set
# CONFIG_NET_L2_ETHERNET_LOG_LEVEL_OFF is not set
# CONFIG_NET_L2_ETHERNET_LOG_LEVEL_ERR is not set
# CONFIG_NET_L2_ETHERNET_LOG_LEVEL_WRN is not set
# CONFIG_NET_L2_ETHERNET_LOG_LEVEL_INF is not set
# CONFIG_NET_L2_ETHERNET_LOG_LEVEL_DBG is not set
CONFIG_NET_L2_ETHERNET_LOG_LEVEL_DEFAULT=y
CONFIG_NET_L2_ETHERNET_LOG_LEVEL=3
# CONFIG_NET_L2_ETHERNET_MGMT is not set
# CONFIG_NET_VLAN is not set
CONFIG_NET_ARP=y
CONFIG_NET_ARP_TABLE_SIZE=2
CONFIG_NET_ARP_GRATUITOUS=y
# CONFIG_NET_ARP_LOG_LEVEL_OFF is not set
# CONFIG_NET_ARP_LOG_LEVEL_ERR is not set
# CONFIG_NET_ARP_LOG_LEVEL_WRN is not set
# CONFIG_NET_ARP_LOG_LEVEL_INF is not set
# CONFIG_NET_ARP_LOG_LEVEL_DBG is not set
CONFIG_NET_ARP_LOG_LEVEL_DEFAULT=y
CONFIG_NET_ARP_LOG_LEVEL=3
# CONFIG_NET_GPTP is not set
# CONFIG_NET_LLDP is not set
# CONFIG_NET_L2_PPP is not set
# CONFIG_NET_L2_IEEE802154 is not set
# CONFIG_NET_L2_CANBUS_RAW is not set
# CONFIG_NET_L2_WIFI_MGMT is not set
# CONFIG_NET_L2_WIFI_SHELL is not set
# end of Link layer options

#
# IP stack
#
CONFIG_NET_NATIVE=y
CONFIG_NET_NATIVE_IPV4=y
CONFIG_NET_NATIVE_TCP=y
CONFIG_NET_NATIVE_UDP=y
# CONFIG_NET_OFFLOAD is not set
CONFIG_NET_QEMU_SLIP=y
# CONFIG_NET_QEMU_PPP is not set
# CONFIG_NET_QEMU_ETHERNET is not set
# CONFIG_NET_QEMU_USER is not set
CONFIG_NET_INIT_PRIO=90
CONFIG_NET_IPV4=y
CONFIG_NET_INITIAL_TTL=64
CONFIG_NET_IF_MAX_IPV4_COUNT=1
CONFIG_NET_IF_UNICAST_IPV4_ADDR_COUNT=1
CONFIG_NET_IF_MCAST_IPV4_ADDR_COUNT=1
# CONFIG_NET_ICMPV4_ACCEPT_BROADCAST is not set
# CONFIG_NET_IPV4_ACCEPT_ZERO_BROADCAST is not set
# CONFIG_NET_DHCPV4 is not set
# CONFIG_NET_IPV4_AUTO is not set
# CONFIG_NET_IPV4_HDR_OPTIONS is not set
# CONFIG_NET_IPV4_LOG_LEVEL_OFF is not set
# CONFIG_NET_IPV4_LOG_LEVEL_ERR is not set
# CONFIG_NET_IPV4_LOG_LEVEL_WRN is not set
# CONFIG_NET_IPV4_LOG_LEVEL_INF is not set
# CONFIG_NET_IPV4_LOG_LEVEL_DBG is not set
CONFIG_NET_IPV4_LOG_LEVEL_DEFAULT=y
CONFIG_NET_IPV4_LOG_LEVEL=3
# CONFIG_NET_ICMPV4_LOG_LEVEL_OFF is not set
# CONFIG_NET_ICMPV4_LOG_LEVEL_ERR is not set
# CONFIG_NET_ICMPV4_LOG_LEVEL_WRN is not set
# CONFIG_NET_ICMPV4_LOG_LEVEL_INF is not set
# CONFIG_NET_ICMPV4_LOG_LEVEL_DBG is not set
CONFIG_NET_ICMPV4_LOG_LEVEL_DEFAULT=y
CONFIG_NET_ICMPV4_LOG_LEVEL=3
# CONFIG_NET_SHELL is not set
CONFIG_NET_TC_TX_COUNT=1
CONFIG_NET_TC_RX_COUNT=1
CONFIG_NET_TC_MAPPING_STRICT=y
CONFIG_NET_TX_DEFAULT_PRIORITY=1
CONFIG_NET_RX_DEFAULT_PRIORITY=0
CONFIG_NET_IP_ADDR_CHECK=y
CONFIG_NET_MAX_ROUTERS=1
CONFIG_NET_TCP=y
CONFIG_NET_TCP_CHECKSUM=y
# CONFIG_NET_TCP_LOG_LEVEL_OFF is not set
# CONFIG_NET_TCP_LOG_LEVEL_ERR is not set
# CONFIG_NET_TCP_LOG_LEVEL_WRN is not set
# CONFIG_NET_TCP_LOG_LEVEL_INF is not set
# CONFIG_NET_TCP_LOG_LEVEL_DBG is not set
CONFIG_NET_TCP_LOG_LEVEL_DEFAULT=y
CONFIG_NET_TCP_LOG_LEVEL=3
CONFIG_NET_TCP_BACKLOG_SIZE=1
# CONFIG_NET_TCP_AUTO_ACCEPT is not set
CONFIG_NET_TCP_TIME_WAIT_DELAY=250
CONFIG_NET_TCP_ACK_TIMEOUT=1000
CONFIG_NET_TCP_INIT_RETRANSMISSION_TIMEOUT=200
CONFIG_NET_TCP_RETRY_COUNT=9
CONFIG_NET_TCP1=y
# CONFIG_NET_TCP2 is not set
# CONFIG_NET_TEST_PROTOCOL is not set
CONFIG_NET_UDP=y
CONFIG_NET_UDP_CHECKSUM=y
# CONFIG_NET_UDP_MISSING_CHECKSUM is not set
# CONFIG_NET_UDP_LOG_LEVEL_OFF is not set
# CONFIG_NET_UDP_LOG_LEVEL_ERR is not set
# CONFIG_NET_UDP_LOG_LEVEL_WRN is not set
# CONFIG_NET_UDP_LOG_LEVEL_INF is not set
# CONFIG_NET_UDP_LOG_LEVEL_DBG is not set
CONFIG_NET_UDP_LOG_LEVEL_DEFAULT=y
CONFIG_NET_UDP_LOG_LEVEL=3
CONFIG_NET_MAX_CONN=16
CONFIG_NET_MAX_CONTEXTS=16
# CONFIG_NET_CONTEXT_NET_PKT_POOL is not set
CONFIG_NET_CONTEXT_SYNC_RECV=y
CONFIG_NET_CONTEXT_CHECK=y
# CONFIG_NET_CONTEXT_PRIORITY is not set
# CONFIG_NET_CONTEXT_TIMESTAMP is not set
# CONFIG_NET_CONTEXT_TXTIME is not set
# CONFIG_NET_TEST is not set
CONFIG_NET_SLIP_TAP=y
# CONFIG_NET_TRICKLE is not set
CONFIG_NET_PKT_RX_COUNT=64
CONFIG_NET_PKT_TX_COUNT=64
CONFIG_NET_BUF_RX_COUNT=64
CONFIG_NET_BUF_TX_COUNT=256
CONFIG_NET_BUF_FIXED_DATA_SIZE=y
# CONFIG_NET_BUF_VARIABLE_DATA_SIZE is not set
CONFIG_NET_BUF_DATA_SIZE=1024
CONFIG_NET_DEFAULT_IF_FIRST=y
# CONFIG_NET_DEFAULT_IF_ETHERNET is not set
# CONFIG_NET_PKT_TIMESTAMP is not set
# CONFIG_NET_PKT_TXTIME is not set
# CONFIG_NET_PKT_RXTIME_STATS is not set
# CONFIG_NET_PKT_TXTIME_STATS is not set
# CONFIG_NET_PROMISCUOUS_MODE is not set

#
# Stack usage
#
CONFIG_NET_TX_STACK_SIZE=8192
CONFIG_NET_RX_STACK_SIZE=8192
# end of Stack usage

CONFIG_NET_MGMT=y
CONFIG_NET_MGMT_EVENT=y
CONFIG_NET_MGMT_EVENT_STACK_SIZE=768
CONFIG_NET_MGMT_EVENT_THREAD_PRIO=7
CONFIG_NET_MGMT_EVENT_QUEUE_SIZE=2
# CONFIG_NET_MGMT_EVENT_INFO is not set
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_OFF is not set
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_ERR is not set
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_WRN is not set
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_INF is not set
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_DBG is not set
CONFIG_NET_MGMT_EVENT_LOG_LEVEL_DEFAULT=y
CONFIG_NET_MGMT_EVENT_LOG_LEVEL=3
# CONFIG_NET_DEBUG_MGMT_EVENT_STACK is not set
# CONFIG_NET_STATISTICS is not set
CONFIG_NET_LOG=y
# CONFIG_NET_PKT_LOG_LEVEL_OFF is not set
# CONFIG_NET_PKT_LOG_LEVEL_ERR is not set
# CONFIG_NET_PKT_LOG_LEVEL_WRN is not set
# CONFIG_NET_PKT_LOG_LEVEL_INF is not set
# CONFIG_NET_PKT_LOG_LEVEL_DBG is not set
CONFIG_NET_PKT_LOG_LEVEL_DEFAULT=y
CONFIG_NET_PKT_LOG_LEVEL=3
# CONFIG_NET_DEBUG_NET_PKT_ALLOC is not set
CONFIG_NET_DEBUG_NET_PKT_EXTERNALS=0
# CONFIG_NET_DEBUG_NET_PKT_NON_FRAGILE_ACCESS is not set
# CONFIG_NET_CORE_LOG_LEVEL_OFF is not set
# CONFIG_NET_CORE_LOG_LEVEL_ERR is not set
# CONFIG_NET_CORE_LOG_LEVEL_WRN is not set
# CONFIG_NET_CORE_LOG_LEVEL_INF is not set
# CONFIG_NET_CORE_LOG_LEVEL_DBG is not set
CONFIG_NET_CORE_LOG_LEVEL_DEFAULT=y
CONFIG_NET_CORE_LOG_LEVEL=3
# CONFIG_NET_IF_LOG_LEVEL_OFF is not set
# CONFIG_NET_IF_LOG_LEVEL_ERR is not set
# CONFIG_NET_IF_LOG_LEVEL_WRN is not set
# CONFIG_NET_IF_LOG_LEVEL_INF is not set
# CONFIG_NET_IF_LOG_LEVEL_DBG is not set
CONFIG_NET_IF_LOG_LEVEL_DEFAULT=y
CONFIG_NET_IF_LOG_LEVEL=3
# CONFIG_NET_TC_LOG_LEVEL_OFF is not set
# CONFIG_NET_TC_LOG_LEVEL_ERR is not set
# CONFIG_NET_TC_LOG_LEVEL_WRN is not set
# CONFIG_NET_TC_LOG_LEVEL_INF is not set
# CONFIG_NET_TC_LOG_LEVEL_DBG is not set
CONFIG_NET_TC_LOG_LEVEL_DEFAULT=y
CONFIG_NET_TC_LOG_LEVEL=3
# CONFIG_NET_UTILS_LOG_LEVEL_OFF is not set
# CONFIG_NET_UTILS_LOG_LEVEL_ERR is not set
# CONFIG_NET_UTILS_LOG_LEVEL_WRN is not set
# CONFIG_NET_UTILS_LOG_LEVEL_INF is not set
# CONFIG_NET_UTILS_LOG_LEVEL_DBG is not set
CONFIG_NET_UTILS_LOG_LEVEL_DEFAULT=y
CONFIG_NET_UTILS_LOG_LEVEL=3
# CONFIG_NET_CONTEXT_LOG_LEVEL_OFF is not set
# CONFIG_NET_CONTEXT_LOG_LEVEL_ERR is not set
# CONFIG_NET_CONTEXT_LOG_LEVEL_WRN is not set
# CONFIG_NET_CONTEXT_LOG_LEVEL_INF is not set
# CONFIG_NET_CONTEXT_LOG_LEVEL_DBG is not set
CONFIG_NET_CONTEXT_LOG_LEVEL_DEFAULT=y
CONFIG_NET_CONTEXT_LOG_LEVEL=3
# CONFIG_NET_CONN_LOG_LEVEL_OFF is not set
# CONFIG_NET_CONN_LOG_LEVEL_ERR is not set
# CONFIG_NET_CONN_LOG_LEVEL_WRN is not set
# CONFIG_NET_CONN_LOG_LEVEL_INF is not set
# CONFIG_NET_CONN_LOG_LEVEL_DBG is not set
CONFIG_NET_CONN_LOG_LEVEL_DEFAULT=y
CONFIG_NET_CONN_LOG_LEVEL=3
# CONFIG_NET_ROUTE_LOG_LEVEL_OFF is not set
# CONFIG_NET_ROUTE_LOG_LEVEL_ERR is not set
# CONFIG_NET_ROUTE_LOG_LEVEL_WRN is not set
# CONFIG_NET_ROUTE_LOG_LEVEL_INF is not set
# CONFIG_NET_ROUTE_LOG_LEVEL_DBG is not set
CONFIG_NET_ROUTE_LOG_LEVEL_DEFAULT=y
CONFIG_NET_ROUTE_LOG_LEVEL=3
# end of IP stack

#
# Network Protocols
#
# CONFIG_COAP is not set
CONFIG_DNS_RESOLVER=y
# CONFIG_MDNS_RESOLVER is not set
# CONFIG_LLMNR_RESOLVER is not set
CONFIG_DNS_RESOLVER_ADDITIONAL_BUF_CTR=0
CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES=1
CONFIG_DNS_RESOLVER_MAX_SERVERS=1
# CONFIG_DNS_SERVER_IP_ADDRESSES is not set
CONFIG_DNS_NUM_CONCUR_QUERIES=1
# CONFIG_DNS_RESOLVER_LOG_LEVEL_OFF is not set
# CONFIG_DNS_RESOLVER_LOG_LEVEL_ERR is not set
# CONFIG_DNS_RESOLVER_LOG_LEVEL_WRN is not set
# CONFIG_DNS_RESOLVER_LOG_LEVEL_INF is not set
# CONFIG_DNS_RESOLVER_LOG_LEVEL_DBG is not set
CONFIG_DNS_RESOLVER_LOG_LEVEL_DEFAULT=y
CONFIG_DNS_RESOLVER_LOG_LEVEL=3
CONFIG_MDNS_RESPONDER=y
CONFIG_MDNS_RESPONDER_TTL=600
CONFIG_MDNS_RESPONDER_INIT_PRIO=96
# CONFIG_MDNS_RESPONDER_LOG_LEVEL_OFF is not set
# CONFIG_MDNS_RESPONDER_LOG_LEVEL_ERR is not set
# CONFIG_MDNS_RESPONDER_LOG_LEVEL_WRN is not set
# CONFIG_MDNS_RESPONDER_LOG_LEVEL_INF is not set
# CONFIG_MDNS_RESPONDER_LOG_LEVEL_DBG is not set
CONFIG_MDNS_RESPONDER_LOG_LEVEL_DEFAULT=y
CONFIG_MDNS_RESPONDER_LOG_LEVEL=3
CONFIG_MDNS_RESOLVER_ADDITIONAL_BUF_CTR=0
# CONFIG_LLMNR_RESPONDER is not set
# CONFIG_MQTT_LIB is not set
# CONFIG_TFTP_LIB is not set
# CONFIG_HTTP_PARSER is not set
# CONFIG_HTTP_PARSER_URL is not set
# CONFIG_HTTP_CLIENT is not set
# CONFIG_NET_HTTP_LOG_LEVEL_OFF is not set
# CONFIG_NET_HTTP_LOG_LEVEL_ERR is not set
# CONFIG_NET_HTTP_LOG_LEVEL_WRN is not set
# CONFIG_NET_HTTP_LOG_LEVEL_INF is not set
# CONFIG_NET_HTTP_LOG_LEVEL_DBG is not set
CONFIG_NET_HTTP_LOG_LEVEL_DEFAULT=y
CONFIG_NET_HTTP_LOG_LEVEL=3
# CONFIG_WEBSOCKET_CLIENT is not set
# CONFIG_LWM2M is not set
# CONFIG_SOCKS is not set
# CONFIG_SNTP is not set
# end of Network Protocols

#
# Network Libraries
#
CONFIG_NET_CONFIG_AUTO_INIT=y
CONFIG_NET_CONFIG_INIT_PRIO=95
CONFIG_NET_CONFIG_INIT_TIMEOUT=30
# CONFIG_NET_CONFIG_NEED_IPV4 is not set
# CONFIG_NET_CONFIG_LOG_LEVEL_OFF is not set
# CONFIG_NET_CONFIG_LOG_LEVEL_ERR is not set
# CONFIG_NET_CONFIG_LOG_LEVEL_WRN is not set
# CONFIG_NET_CONFIG_LOG_LEVEL_INF is not set
# CONFIG_NET_CONFIG_LOG_LEVEL_DBG is not set
CONFIG_NET_CONFIG_LOG_LEVEL_DEFAULT=y
CONFIG_NET_CONFIG_LOG_LEVEL=3
CONFIG_NET_CONFIG_SETTINGS=y
CONFIG_NET_CONFIG_MY_IPV4_ADDR="<IP_ADDRESS>"
CONFIG_NET_CONFIG_MY_IPV4_NETMASK="<IP_ADDRESS>"
CONFIG_NET_CONFIG_MY_IPV4_GW="<IP_ADDRESS>"
CONFIG_NET_CONFIG_PEER_IPV4_ADDR="<IP_ADDRESS>"
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POLL_MAX=3
CONFIG_NET_SOCKETS_CONNECT_TIMEOUT=3000
CONFIG_NET_SOCKETS_DNS_TIMEOUT=2000
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y
CONFIG_NET_SOCKETS_ENABLE_DTLS=y
CONFIG_NET_SOCKETS_DTLS_TIMEOUT=30000
CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=6
CONFIG_NET_SOCKETS_TLS_MAX_CREDENTIALS=4
CONFIG_NET_SOCKETS_TLS_MAX_CIPHERSUITES=4
# CONFIG_NET_SOCKETS_OFFLOAD is not set
# CONFIG_NET_SOCKETS_PACKET is not set
# CONFIG_NET_SOCKETS_CAN is not set
# CONFIG_NET_SOCKETPAIR is not set
# CONFIG_NET_SOCKETS_NET_MGMT is not set
# CONFIG_NET_SOCKETS_LOG_LEVEL_OFF is not set
# CONFIG_NET_SOCKETS_LOG_LEVEL_ERR is not set
# CONFIG_NET_SOCKETS_LOG_LEVEL_WRN is not set
# CONFIG_NET_SOCKETS_LOG_LEVEL_INF is not set
# CONFIG_NET_SOCKETS_LOG_LEVEL_DBG is not set
CONFIG_NET_SOCKETS_LOG_LEVEL_DEFAULT=y
CONFIG_NET_SOCKETS_LOG_LEVEL=3
CONFIG_TLS_CREDENTIALS=y
CONFIG_TLS_MAX_CREDENTIALS_NUMBER=4
# end of Network Libraries

#
# Network additional services
#
# CONFIG_NET_CONNECTION_MANAGER is not set
# end of Network additional services
# end of Networking

# CONFIG_SHELL is not set
# CONFIG_IMG_MANAGER is not set

#
# Random subsystem
#
CONFIG_TIMER_RANDOM_GENERATOR=y
# end of Random subsystem

#
# Storage
#
# CONFIG_STREAM_FLASH is not set
# end of Storage

# CONFIG_SETTINGS is not set

#
# Testing
#
# CONFIG_ZTEST is not set
# CONFIG_ZTEST_MOCKING is not set
# CONFIG_TEST is not set
CONFIG_HAS_COVERAGE_SUPPORT=y
# CONFIG_COVERAGE is not set
# CONFIG_TEST_USERSPACE is not set
# CONFIG_TEST_FLASH_DRIVERS is not set
# end of Testing

# CONFIG_TRACING is not set
# CONFIG_CHARACTER_FRAMEBUFFER is not set
# CONFIG_JWT is not set

#
# Controller Area Network (CAN) bus subsystem
#
# CONFIG_ISOTP is not set
# end of Controller Area Network (CAN) bus subsystem

CONFIG_TOOLCHAIN_ZEPHYR_0_11=y

#
# Build and Link Features
#

#
# Linker Options
#
# CONFIG_LINKER_ORPHAN_SECTION_PLACE is not set
CONFIG_LINKER_ORPHAN_SECTION_WARN=y
# CONFIG_LINKER_ORPHAN_SECTION_ERROR is not set
CONFIG_TEXT_SECTION_OFFSET=0
# CONFIG_HAVE_CUSTOM_LINKER_SCRIPT is not set
CONFIG_KERNEL_ENTRY="__start"
CONFIG_LINKER_SORT_BY_ALIGNMENT=y
# end of Linker Options

#
# Compiler Options
#
# CONFIG_NATIVE_APPLICATION is not set
CONFIG_SIZE_OPTIMIZATIONS=y
# CONFIG_SPEED_OPTIMIZATIONS is not set
# CONFIG_DEBUG_OPTIMIZATIONS is not set
# CONFIG_NO_OPTIMIZATIONS is not set
CONFIG_COMPILER_OPT=""
# end of Compiler Options

# CONFIG_ASSERT_ON_ERRORS is not set
# CONFIG_NO_RUNTIME_CHECKS is not set
CONFIG_RUNTIME_ERROR_CHECKS=y

#
# Build Options
#
CONFIG_KERNEL_BIN_NAME="zephyr"
CONFIG_OUTPUT_STAT=y
CONFIG_OUTPUT_DISASSEMBLY=y
# CONFIG_OUTPUT_DISASSEMBLE_ALL is not set
CONFIG_OUTPUT_PRINT_MEMORY_USAGE=y
# CONFIG_BUILD_OUTPUT_HEX is not set
# CONFIG_BUILD_OUTPUT_EXE is not set
# CONFIG_BUILD_OUTPUT_S19 is not set
# CONFIG_BUILD_NO_GAP_FILL is not set
# CONFIG_BUILD_OUTPUT_STRIPPED is not set
# CONFIG_APPLICATION_DEFINED_SYSCALL is not set
# CONFIG_MAKEFILE_EXPORTS is not set
# CONFIG_LEGACY_DEVICETREE_MACROS is not set
CONFIG_DEPRECATED_ZEPHYR_INT_TYPES=y
# end of Build Options
# end of Build and Link Features

#
# Boot Options
#
# CONFIG_BOOTLOADER_MCUBOOT is not set
# CONFIG_BOOTLOADER_KEXEC is not set
# CONFIG_REBOOT is not set
# CONFIG_MISRA_SANE is not set
# end of Boot Options

#
# Compatibility
#
CONFIG_COMPAT_INCLUDES=y
# end of Compatibility

I do not know Zephyr (although I know some other embedded operating systems), but I might be able to provide some details on civetweb (I came here from https://github.com/civetweb/civetweb/issues/895).
Regarding stack size:
Indeed civetweb assumes the stack size to be some pages larger than the MG_BUF_LEN size. A buffer needs to contain at least the entire HTTP/1.x header. This is
GET /some/path/to/some/file.name?query=string&max=contain&multiple=parameters HTTP/1.1
Host: www.example.com
User-Agent: Some-name-and-version-of-your-browser
Cookie: yet=another; list=of; key=value; pairs=with; unknown=length

Once the header is longer than MG_BUF_LEN, the request cannot be processed anymore - the current definition #define MG_BUF_LEN (1024 * 8) is plenty. Half of this might be sufficient. The URL+query string (/path/to...parameters) are not limited in any standard, but typical recommendations are 2,048 bytes. Microsoft Internet Explorer (if you want to call this a browser) has a limit of 2,083 bytes, Chrome of 2 MB or 32kB (depending on the platform). Cookies seem to have a limit around 4096 bytes for each cookie (test it yourself: http://browsercookielimits.squawky.net/), but you may have several of them.
If you know your URLs and query strings you plan to support on your server, and if you know the maximum cookie length, you may go lower in this limit, but keep some space for unexpected additional header fields sent by certain browsers.
Or increase the stack size - in particular if you plan to use Lua pages.
Regarding priority:
I cannot recommend any details, since I do not know the priority levels of Zephyr.
From the CivetWeb point of view, there is one priority define USE_MASTER_THREAD_PRIORITY that could be used to move the master thread (the one accepting all incomming connections) to some SCHED_RR priority. If it is not set (default), CivetWeb will in itself not set any thread priorities.
CivetWeb offers a callback "init_thread" that is called from every thread after creation. You can use this to set the priority of the calling thread to something suitable for you. CivetWeb will not modify the priorities afterwards.
Not knowing Zephyr, I cannot directly tell you where the performance bottleneck might be. From another real time operating system, I know it was important to get the priorities right, together with the priorities of the network interface card interrupt and the priorities of the thread responsible for the TCP/IP stack. It was required to keep these thread priorities one level higher than the civetweb master thread. The worker threads could be the same as the master thread or one level lower.
I do not know if this experience allows any conclusion for Zephyr, or if it will be helpful in your case.
I hope this explanation "from the CivetWeb side" is of any use - probably if you add proper know how from the Zephyr side, it might help you solve this issue.

Thank you @bel2125 for sharing useful info about CivetWeb. I'm still sniffing around, trying to set correct prioirities etc. Unfortunatelly I'm still struggling with errors like net_pkt: Data buffer (48) allocation failed (prepare_segment:444) which appears on embedded platform as well as on qemu_x86 simulation. This will probably need someone who is more familiar with Zephyr internals than me.

Ok. At least I have found the reason for failed allocations of packets or buffers. When I set civetweb priority close to TCP/IP stack it means that we are in cooperative range (zephyr priority < 0). In such case when civetweb is serving a bigger page (multiple mg_write()s in a loop) there is no chance for other thread (even with higher priority - like TCP/IP stack) to run without explicit k_yield() or sleep.
My upload is still quite slow, though.

For the slow upload, you might be impacted by #26330. Have a look at the TCP window using Wireshark.

@xhpohanka I noticed the same issues as you. For the allocation problem I increased the value for CONFIG_NET_BUF_TX_COUNT, but that's a workaround which doesn't scale.
I do not fully understand the relation between allocation failing and thread priorities. Shouldn't mg_write block when there are no more buffers available until some data has been transferred on the network?

Shouldn't mg_write block when there are no more buffers available until some data has been transferred on the network?

From the pure civetweb point of view (no Zephyr specifics):
Civetweb uses non-blocking sockets when calling "send". If "send" returns EWOULDBLOCK, it calls "poll" to wait for a fixed time or until the socket is ready to send (if there is no "poll" it will use "select"). Anyway, if send/poll do not return success after some time (configured, default 30 seconds), mg_write will return an error.
Ín short: it blocks for a limited time (30 s) and then returns an error.
CivetWeb does not care (cannot know) why "send" is not ready ... peer not responding, no memory in TCP/IP stack, ... but will work as long as it returns "EWOULDBLOCK" (or OK). Any other return value will be treated as error, and the mg_write function returns immediately with an error.
I just found in the CivetWeb source: in most places it checks for "EWOULDBLOCK" and "EAGAIN", in some places only for "EWOULDBLOCK". In all gnuC libraries, they have the same value. According to google, there are some old (historic?) UNIX variants where they had different values. I hope this is not the case for Zephyr, since it might cause some issues.

EWOULDBLOCK is the same as EAGAIN in Zephyr.
zephyr/lib/libc/minimal/include/errno.h:110:#define EWOULDBLOCK EAGAIN /* Operation would block */

I do not fully understand the relation between allocation failing and thread priorities. Shouldn't mg_write block when there are no more buffers available until some data has been transferred on the network?

I also am not sure how poll works in zephyr. But in my case when I was runnig out of memory it could be solved by adding k_yield or k_sleep between successive mg_write calls.

@PiotrZierhoffer could you please take a look since you are the maintainer of the civetweb module?

same new notes from my side:

slow upload was solved with new TCP stack
there are newer versions of civetweb than the one served in Zephyr, I'm just trying to run with actual master merged and so far it works

@xhpohanka Try to gzip your files served from your civetweb http server and use mg_send_chunk() for bigger files. Still there may be issues, maybe. Let me know, if mg_send_chunk() improves your performance. If you need more information how to use it, see my PR #28323.
P.S.: How much Bytes KiB or MiB needed your files be on your civetweb http server?

@Nukersson Thanks for suggestion of mg_send_chunk() I will try it. If I understand correctly it could also simplify serving of dynamic pages as you do not need to know Content-Length before the whole page.
Currently I have quite stable implementation of web server on my platform. Only time-to-time one of the pages is not transfered and need to be refreshed. I have merged mbedtls support for civetweb (originaly by qinch) and it also works with exception of loading files (firmware update). I also tried to alter civetweb source to use zephyr's internal tls_socket implementation and it works (no big testing though) the same (normal pages ok, upload fails).
The biggest web page is jquery. So around 85kB/

@xhpohanka Thank you for sharing of your experience here.

Only time-to-time one of the pages is not transfered and need to be refreshed.
Believe me, I've seen same production code with well tested network staks and web/http servers. They do same files dropping and whole page reloading from time to time. I think, we need dig deeper her 😄

The biggest web page is jquery. So around 85kB/
Take a look at #28323 PR and search for gzip in main CMakeLists.txt. You will se, how typical *.js files may be gzipped.
You can also gzip small and compressed version jquery-3.5.1.slim.min.js. I did it once and it worked fine for me.

@xhpohanka By the way: does my answers solves your civetweb problems? Can we then close this issue? Otherways, if you have more questions I can answer - you're welcome!

@xhpohanka Do you have any new insights?

Hello, I think that we can close this issue. The original problems was solved with TCP2 introduction and now I have just an occassional instabilities that are probably caused by tcp stack in connection with STM32H7 driver. I understand your suggestions with compressing the pages but I think that this should not be neccessary. We had a similar web on the same architecture and freertos and it works without any issues.
I will try to check file upload using TLS with civetweb author and eventually open a new issue here.
Thanks for support.


Delete deactivated filter

... that has been deactivated since version v1.2.1.
https://github.com/megaease/easegress/blob/main/pkg/filter/bridge/bridge.go#L55

Duplicate of https://github.com/megaease/easegress/pull/574, closing.


⚠ ClamAV has degraded performance

In 5f0ba62, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 68 ms

Resolved: ClamAV performance has improved in cc0beff.


Getpwd

Contains bug fixes and cleanups for authentication.
There is a command line argument change (getting the user password in the command line).

Not requesting password as a command line argument is always a good idea.


AlphanumericDisplay class missing

Hi today i included library inti AndroidThings projcet using AndroidStudio.
Below classes are missing from library
AlphanumericDisplay, Speaker,
Servo,Button,
ButtonInputDriver,Apa102,
Bmx280SensorDriver,Bmx280

You may need to add them separately to your build.gradle until the newer versions of the RainbowHat dependency is re-generated, as per fc2e222b36a071f427ac380b579442fb9ea27418

If you update to the latest RainbowHat version you should see the classes.
implementation 'com.google.android.things.contrib:driver-rainbowhat:0.8'


Integrating tree-sitter-mode directly into a new major-mode

I'm writing a new major mode for WebAssembly text formats and would like to use the WebAssembly tree-sitter grammar (here) for highlighting.
Since this is a new mode being written from scratch, it sounds like it might be better to integrate support for the tree-sitter mode directly into this new major mode, rather than including the queries and other definitions in this repository.
However, I'm not quite sure what I need to do in order to build the tree-sitter functionality in this new mode. The documentation doesn't seem to have much to say about that.
Is it currently feasible to include support directly into a new mode? If so, can you give a description for how I need to set things up for that?

Since this is a new mode being written from scratch, it sounds like it might be better to integrate support for the tree-sitter mode directly into this new major mode, rather than including the queries and other definitions in this repository.

Yes, definitely!

Is it currently feasible to include support directly into a new mode? If so, can you give a description for how I need to set things up for that?

A basic major mode would look like this:
(require 'tree-sitter)
(require 'tree-sitter-hl)

;;;###autoload
(define-derived-mode wat-mode prog-mode "WAT"
  ;; It's up to the major mode to set this. It plays a role similar to that of
  ;; `font-lock-defaults'.
  (setq tree-sitter-hl-default-patterns
        [["module" "func" "param"] @keyword
         (module_field_func (identifier) @function)])
  (tree-sitter-hl-mode))

;;;###autoload
(progn
  ;; There are 3 ways to register/load the compiled grammar.
  ;;
  ;; 1. `wat-mode' distributes the compiled grammar files on its own:
  ;;
  ;; (tree-sitter-load 'wat PATH-TO-COMPILED-WAT-GRAMMAR)
  ;;
  ;; 2.

  ;; Register the association with `tree-sitter-mode'.
  (add-to-list 'tree-sitter-major-mode-language-alist '(wat-mode . wat))
  (add-to-list 'auto-mode-alist '("\\.wat\\'" . wat-mode)))

(provide 'wat-mode)
;;; wat-mode.el ends here

Compiling, packaging, and distributing grammars (for all major platforms) would be hassle though, so you may want to rely on tree-sitter-langs to distribute the grammars (without the queries) for a while.

Thanks for the info!
I think that clarifies things enough for me to get started. The suggestion to use tree-sitter-langs to distribute the grammars seems reasonable given the current status of things. I was wondering what to do about that.
I'll go ahead and make a PR to add the WebAssembly grammars shortly.


Escape quotes in value for radio matcher

Under jQuery 1.12, the provided expression for matching a radio button when the value contains a quote throws a "Syntax error, unrecognized expression".
This resolves that by properly escaping quote characters in the value before building the matching expression.
Note that in order to prove this and build a failing test I fixed up test/index.html to pull in qunit from the vendor folder (it was missing). This is because the phantomjs runner is broken right now in the npm/karma tests. (There's some discussion of this under #307.)
Then I found that this doesn't fail in the bundled jQuery (1.8.3), but does fail with 1.12.x that we are using. I updated the reference in test/index.html to use the version from the jQuery CDN just to make the test show that the code is fixed. I don't know if you want to update the vendored jQuery to the latest from the 1.x branch, but I'm happy to make that change as well.

@akre54 Fixes done. Rebased, squashed, and pushed.
Let me know if there are any other changes that I should look at.
Thanks for the quick response on this!


how to connect UniTIme server to another server database mysql??

how to connect UniTIme server to another server database mysql??
I want to connect the database to another server for data security and controlled by the database team

See the Customization section of the UniTime Installation document.
The database connection can be changed using custom properties. However, please note that these properties cannot be defined using the UniTime application (Administration / Defaults / Configuration menu item) since the database connection needs to be configured before the database can be accessed. For instance, custom.properties file can contain:
# MySQL Configuration Example
connection.url=jdbc:mysql://localhost:3306/timetable?serverTimezone=Europe/Prague
connection.username=timetable
connection.password=unitime
connection.driver_class=com.mysql.jdbc.Driver
dialect=org.hibernate.dialect.MySQLInnoDBDialect
tmtbl.uniqueid.generator=org.hibernate.id.TableHiLoGenerator
default_schema=timetable

I do that not work
inside this "C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps\UniTime.war\WEB-INF\lib\timetable.jar\application.properties" this is correct??

No, that is not correct. Please read the documentation. You can create a custom properties file outside of the UniTime.war file, for example C:\Program Files\Apache Software Foundation\Tomcat 8.5\conf\unitime.properties and put all these properties in there. For this file to be loaded by UniTime, you need to add the following line in the C:\Program Files\Apache Software Foundation\Tomcat 8.5\conf\catalina.properties:
tmtbl.custom.properties=C:\\Program Files\\Apache Software Foundation\\Tomcat 8.5\\conf\\unitime.properties

This is also mentioned in the UniTime Windows installation document, section 5c.

thank you now is work.


Assignment 8 macro F1 score

Hi Professor, I'm puzzled about the macro F1 in the expected results. The macro score will just be the average of the F1 scores, correct? Taking the average of 0.9302325581395349 + 0.9361702127659575 + 1 gives me 0.9554675903018307, not 0.9567045511479035 as shown.

@abbynormative This is a very good question. I should state this clearly. Any averaged F1 score is calculated by 2precrec/(prec+rec)
That means, instead of calculating the F1 score for each class first then do an average (like what happens when you calculate averaged precision or recall), you should calculate the averaged precision and averaged recall first and use those two to calculate averaged F1.
Will make this clearer on slides. Thanks for pointing this out!

Got it, thank you.

@abbynormative and everyone else:
I have checked scikit-learn and wiki, we should calculate the averaged F1 scores by calculating the F1 scores on each class first, then do the average.
DO NOT calculate the averaged precision and recalls then use those to calculate the F1 score. I have also updated the hint file and the assignment description for this purpose.

I'm very confused by this. If we are to calculate the F1 scores on each class first, then do an average, no matter what our average f1 score will be the same for all three methods (macro, micro, weighted). Am I missing something here?

@sma4396 there are three different ways to average the metrics (when we say average, we do not mean just take a mean). Check the slides for more details.

I'm getting a slightly different value for the weighted F1 score vs the macro, but the expected answer has them as the same value. Is it correct they would be the same?

For that data, they should be the same.


Question: max incoming message size?

I'm looking for a replacement for Firmata, is reflecta also limited to 30-char messages (incoming, limited by the arduino serial buffer of 64bytes) or is there is any extra/additional buffering method in place? Idea is to send and receive (long) JSONs (thanks to ArduinoJson) with NodeJS.

I didn't design reflecta with large messages in mind.  If you're hitting a limitation due to a 64 byte buffer in Firmata, Reflecta will very likely have a similar limitation.  It might be somewhat more relaxed, as Firmata is based on Midi which transmits data at 7 bits / byte and so is less efficient.


[Documentation] Introduce a inprogress icon for Try Samples section

Currently some time is taken for the response to appear. Rather than giving a text message as "Waiting for Ballerina server" it's better to disable / highlight the area and introduce an icon that shows in progress state

Moved to website repo


932260: FPs, Bug and Bypass

there's a problem with rule 932260
https://github.com/coreruleset/coreruleset/blob/0c909fe48b25ae42853d204fd85fd9c7f21d2c97/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf#L456-L510
when matches, the auditlog doesn't show the matched var name and value but just the MATCHED_VAR of the chained rule. This is a problem when you are going to remove false positives.
Also, the chained rule added to this rule introduces an easy bypass for the rule itself:
direct execution of whoami matches the rule:
# curl -s -H 'x-crs-paranoia-level: 2' -H "x-format-output: txt-matched-rules" "https://sandbox.coreruleset.org/?a=whoami"
932260 PL1 Remote Command Execution: Direct Unix Command Execution
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
949110 PL1 Inbound Anomaly Score Exceeded (Total Score: 15)
980170 PL1 Anomaly Scores: (Inbound Scores: blocking=15, detection=15, per_pl=5-10-0-0, threshold=5) - (Outbound Scores: blocking=0, detection=0, per_pl=0-0-0-0, threshold=4) - (SQLI=0, XSS=0, RFI=0, LFI=0, RCE=15, PHPI=0, HTTP=0, SESS=0, COMBINED_SCORE=15)

direct execution of whoami;0'0' for bypassing the rule
# curl -s -H 'x-crs-paranoia-level: 2' -H "x-format-output: txt-matched-rules" "https://sandbox.coreruleset.org/?a=whoami;0'0'"
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
942110 PL2 SQL Injection Attack: Common Injection Testing Detected
949110 PL1 Inbound Anomaly Score Exceeded (Total Score: 13)
980170 PL1 Anomaly Scores: (Inbound Scores: blocking=13, detection=13, per_pl=0-13-0-0, threshold=5) - (Outbound Scores: blocking=0, detection=0, per_pl=0-0-0-0, threshold=4) - (SQLI=3, XSS=0, RFI=0, LFI=0, RCE=10, PHPI=0, HTTP=0, SESS=0, COMBINED_SCORE=13)

speaking about false positives, 932260 matches also for invalid command name just because the value start with a valid command. For example /?a=Perlaaaaaaaaaaaaa:
# curl -s -H 'x-crs-paranoia-level: 2' -H "x-format-output: txt-matched-rules" "https://sandbox.coreruleset.org/?a=Perlaaaaaaaaaaaaa"
932260 PL1 Remote Command Execution: Direct Unix Command Execution
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
932236 PL2 Remote Command Execution: Unix Command Injection (command without evasion)
949110 PL1 Inbound Anomaly Score Exceeded (Total Score: 15)
980170 PL1 Anomaly Scores: (Inbound Scores: blocking=15, detection=15, per_pl=5-10-0-0, threshold=5) - (Outbound Scores: blocking=0, detection=0, per_pl=0-0-0-0, threshold=4) - (SQLI=0, XSS=0, RFI=0, LFI=0, RCE=15, PHPI=0, HTTP=0, SESS=0, COMBINED_SCORE=15

The first of the problems can be easily solved like i did it in rules 933120 and 933151.

I'm not sure about it @azurit because the problem is the macro  %{MATCHED_VAR_NAME} that is vital for creating exclusions. %{TX_...} includes also the name of the variable info?

@theMiddleBlue Can be resolved, too, look at the rule 932200. Also:
https://github.com/coreruleset/coreruleset/pull/2347

oh ok, this one makes sense! so:

matched var name: could be fixed by the same approach of #2347
bypass: we need to know why this chained rule was added and if we can improve the regex
false positive: we should avoid matching non-existent command like Perlxxxxx

The chained rule was added to prevent false positive matches against number separators. The following comment is missing from this rule:
# The chained rule will exclude false positives due to german thousands separators (e.g., 10'000).

The easy fix for only matching perl exactly is to append {{space-or-redirect}} after perl in unix-shell-4andup-with-params.

Need to look at this once #2692 has been completed.

The issue for Perlaaaaaaaaaaaaa was solved recently, but only for perl, not in general for the rule.

The quote evasion issue might be fixed by #3494.

@theMiddleBlue Can we try if this is fixed? Would be a good push...

I think that chain rule was there by mistake. Great catch @theMiddleBlue! See #3521.

I tested all the problems mentioned in this issue here with the latest branch 3147-remove-chain-from-932260 by @theseion and I can confirm that all of problems have been solved:

?a=whoami is of course still catched by 932260 at PL1
?a=whoami;0'0' is now detected by 932260 at PL1
?a=Perlaaaaa does not trigger a false positive anymore -> the fix is only for the command perl but I think that's good enough as we usually wait for reported false positives.
matched var name -> now the correct argument is logged in the error.log

So, after merging #3521, this issue can be closed.

#2521 has been merged. Closing this issue now.


SelfHost (Minimal) Is Broken!

Clients.cs, Scopes.cs & Users.cs are missing from the Config directory.

no - they are using the linked files in the parent dir


Add .pre-commit-config.yml file with pre-commit hooks

This pull request adds a .pre-commit-config.yml file to the repository, which includes pre-commit hooks for code formatting and quality checks.
A ci-property ensures files are automatically corrected after a commit using GitHub bots.

pre-commit.ci run

pre-commit.ci run


Move manosim.gitify 5.0.0 to Gitify.Gitify 5.0.0

Microsoft Reviewers: Open in CodeFlow

Possible duplicate package entry.
Similar installer SHA256 hash found in manifest:

InstallerSha256: 5e27543baafb982411b35395d389543094976915bb71c3bd7f0e41e0da2a9391

manifests\m\manosim\gitify\5.0.0

Verify by hash.


Asynchronous select loads the data from previous search term

I am using the async select option of vue-multiselect and I am seeing an issue where the response loaded does not match the search term.
When the user starts typing, the ajax calls are made and the data seems to be picking up the most recent response instead of the reponse matching the current term in the input box.
So, if the user has typed 'appl' the calls are made for a, app, appl and the response for a comes last, the response for that is picked up.
But the current term in the box is 'appl' and the reponse doesn't match it.
Below are the options that I am using. Is there something that needs change?
<multiselect id="ajax"
v-model="selectedGroups"
:options="dsGroups"
:multiple="true"
:options-limit="300"
:limit="3"
:close-on-select="false"
:clear-on-select="false"
:internal-search="false"
:hide-selected="true"  :searchable="searchable" :preserve-search="false" placeholder="Search for groups" label="groupname" track-by="groupid" @search-change="asyncFind">

Hi @joshikeerti.
tl;dr Request handling is on you.
While vue-multiselect allows you to specify callback on every change of the input, it is solely your responsibility to handle it properly and it is ultimately up to you how to implement that. Regarding your case, you might consider caching the latest request and aborting it (unless you already got a response) whenever the new data comes in, so that the data from earlier request doesn't ever override your options.

I use an iterator which increments for each API call, and saved as a constant within each API event. When the API response is returned, before displaying it checks if the one attempting to display is the highest response iterator number to date. This assures display occurs in order. In this way, if you are doing lots of rapid-fire API updates like Google search does, you might still want the "older" responses to show up before the newer ones are available when possible, and this technique allows that. My implementation also performs local filtering on the API-served results so that results appear to be instant when the API is really only updating every half-second or so.


Submit to F-droid repo as well?

For those of us without any closed source google apps on their android phones?
https://f-droid.org/ -- F-Droid is an installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform. The client makes it easy to browse, install, and keep track of updates on your device.

I wasn't familiar with f-droid but submitted an inclusion request: https://f-droid.org/forums/topic/signal-k-mobile-app/ Hope it will suffice.


Overlaying selected custom marker using zIndex not working

Bug report

Summary
I render multiple custom markers  and i'm not able to overlay the selected marker

Environment info

react-native info output:
System:
    OS: macOS Mojave 10.14.6
    CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
    Memory: 34.70 MB / 8.00 GB
    Shell: 5.3 - /bin/zsh
  Binaries:
    Node: 13.8.0 - /usr/local/bin/node
    Yarn: 1.22.0 - /usr/local/bin/yarn
    npm: 6.13.7 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
    Android SDK:
      API Levels: 23, 24, 27, 28, 29
      Build Tools: 27.0.3, 28.0.2, 28.0.3, 29.0.2
      System Images: android-16 | Intel x86 Atom, android-16 | Google APIs Intel x86 Atom, android-19 | Intel x86 Atom, android-28 | Intel x86 Atom_64, android-28 | Google APIs Intel x86 Atom, android-28 | Google APIs Intel x86 Atom_64, android-29 | Google APIs Intel x86 Atom, android-29 | Google Play Intel x86 Atom
  IDEs:
    Android Studio: 3.5 AI-191.8<IP_ADDRESS>00203
    Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
  npmPackages:
    react: 16.9.0 => 16.9.0
    react-native: 0.61.5 => 0.61.5
  npmGlobalPackages:
    react-native-admob: 1.3.2
    react-native-fbsdk: 1.0.4
    react-native-gesture-handler: 1.4.1
    react-native-git-upgrade: 0.2.7
    react-native-languages: 3.0.2
    react-native-reanimated: 1.3.0
    react-native-rename: 2.4.1

Library version: 0.27.1
Steps to reproduce

1.testing on ios, render multiple markers on MapView
2.select one marker
3. The selected marker in not in front of none selected ones
Describe what you expected to happen:

The selected marker should be on top of all other markers
…

Reproducible sample code

<MapView
        // moveOnMarkerPress={false}
        style={styles.map}
        initialRegion={region} // initial region is user location if myPosition or coordinates of search
        // onRegionChange={onRegionChange}
      >
        {data.map((item, index) => {
          const selected = item.id === visibleItemId;
          return (
            <Marker
              onPress={() => handleMarkerPress(item)}
              coordinate={{
                latitude: parseFloat(item.latitude),
                longitude: parseFloat(item.longitude),
              }}
              zIndex= {selected? 1: 0} //**android only */
              style={selected ? styles.marker : null}
              // description={item.name}
              // image={require('Resources/geoloc.png')}
              //pinColor={selected ? 'red' : 'blue'}
              key={item.id}>
              <MosqueMarquer
                mosqueImage={item.images}
                itemId={item.id}
                visibleItemId={visibleItemId}
                distance={item.distance_result}
                bounds={{
                latitude: parseFloat(item.latitude),
                longitude: parseFloat(item.longitude),
              }}
              />
            </Marker>
//
//
 marker: {
    zIndex: 1,
  },

As you can see the selected marker in green is overlaid by the none selected one

That did the trick, thanks @medmo7

you'r welcome

Will we fix this so that we don't need to reorder the items?

Will we fix this so that we don't need to reorder the items?

@xilin you can pass zIndex as a style to fix the overlay
<Marker style={{ zIndex: selected ? 1 : 0 }} .../>

@xilin you can pass zIndex as a style to fix the overlay
<Marker style={{ zIndex: selected ? 1 : 0 }} .../>

<Marker style={{ zIndex: selected ? 1 : 0 }} .../> did not work for me but <Marker style={{ zIndex: selected ? 1000 : 0 }} .../> did 🎉

<Marker style={{ zIndex: selected ? 1 : 0 }} .../> did not work for me but <Marker style={{ zIndex: selected ? 1000 : 0 }} .../> did 🎉

@xilin could you add full code snipped of the markers? I think it could be a problem with the selected flag itself. I would suggest passing click handlers to the MapView component like
            <MapView
               .....
                onMarkerSelect={handleMarkerSelect}
                onMarkerPress={handleMarkerSelect} // support for Android
            >
                 ...
                   <Marker
                       style={{ zIndex: selected === item.id ? 2 : 1 }}
                        identifier={id}
                        ....
                    >

    const handleMarkerSelect = useCallback((e: MapEvent<{ id: string }>) => {
        setSelect(data.find(({ id }) => id === e.nativeEvent.id))
    }, [data])

This works stable for me.

@xilin could you add full code snipped of the markers? I think it could be a problem with the selected flag itself. I would suggest passing click handlers to the MapView component like
            <MapView
               .....
                onMarkerSelect={handleMarkerSelect}
                onMarkerPress={handleMarkerSelect} // support for Android
            >
                 ...
                   <Marker
                       style={{ zIndex: selected === item.id ? 2 : 1 }}
                        identifier={id}
                        ....
                    >

    const handleMarkerSelect = useCallback((e: MapEvent<{ id: string }>) => {
        setSelect(data.find(({ id }) => id === e.nativeEvent.id))
    }, [data])

This works stable for me.

I've added logs in the component, pretty sure the selected flag itself is correct.
I'll try to make a re-producible sample. In my case, I created a new CustomMarker Component, which return Marker.Animated, with Animated.View inside. Maybe it is the animation part which cause the problem.

I've added logs in the component, pretty sure the selected flag itself is correct.
I'll try to make a re-producible sample. In my case, I created a new CustomMarker Component, which return Marker.Animated, with Animated.View inside. Maybe it is the animation part which cause the problem.

@simonbengtsson @xilin Hello guys, my react native gave error that "Can't find variable: selected", how do you deal with this?

@QiYuNew it looks like null is not an object (evaluating 'flatList.current.scrollToIndex') means that flatList.current is null most likely because it is not initialized at the call time or wrong usage of useRef hook. Try flatList.current?.scrollToIndex?.({ index: markerId, animated: true }) for better safety.
Also, I would suggest using the onMarkerPress prop of MapView itself to avoid inconsistent behavior.
PS
onPress={(e) => { onMarkerPress(e) }}

could be replaced by
onPress={onMarkerPress}

@DmitryBD Thank you very much, I wrong use createRef in func components. I changed to useRef, the error disappear. And thank you for your suggestion.


[New Plugin]: Initial submission of semgrep_bn

Plugin Description
This plugin allows the user to run semgrep queries over decompiled code.
Plugin Repository URL
Repo URL: https://github.com/interruptlabs/semgrep_bn
Real Release

[X] I have made a real release

Added, thanks!


How to speed up the vocoder of LPCNet

Hi, all,
I had trained lpcnet model and compile the execution file from test_lpcnet.c, synthetise with it is not  quick enough. Statistically we cost about 1 seconds to synthetize a pcm wich can only play 4.5 seconds. We do not think it is good enough to be used in business.
We found that the code in test_lpcnet.c showing that it synthetize frame by frame, Is there any way to do the job on frames in parallel？ Or is there any other way to speed up the synthetise?
Grateful for suggestions

@JohnHerry Your opinion is great. The synthesis is not that efficient. At first, the I/O of reading the inputs could be more efficient by loading them in total. Then some modules like the conv block at the bottom level could be implemented more efficient (calculated in parallel). And the GRU modules could also be accelerated by handling with cache carefully.
So the model could be implemented more efficiently.


FluentValidation 9.x support

Hello Jeremy,
I'm using the nuget package FluentValidation.Mvc5 in my project together with .Net 4.8. I want to upgrade to FluentValidation 9.x to use new features. I've seen that FluentValidation doesn't support Mvc5 anymore but I've also seen that on this repo you did some commits to support FluentValidation 9.0 but there isn't a NuGet package for this available. Do you plan to release a NuGet package for this legacy repository to support FluentValidation 9.0?
Kind regards
Chris

Hi Chris,
There are no plans to do an official release to support MVC5 with FluentValidation 9, although you are welcome to use the source code if you wish.


Tags in serialized string

When posting the following string (a stringified json-object with quotes inside):
[{"id":"4e5pv","q":"asdfsome text a","sa":"more text"}]
It renders as:
[{"id":"4e5pv","q":"asdfsome text a","sa":"more text"}]
Is there a way to keep the escaped quotes from being modified? As it is now, it throws when trying to parse back to JSON.

Which lib are you using？

"Pomelo.AspNetCore.AntiXSS": "1.0.0-prerelease-20160813",
...and I pasted the wrong text, sorry! It should be:
input:
[{"id":"4e5pv","q":"asdfasdf a","sa":"asdf"}]
output:
[{"id":"4e5pv","q":"asdfasdf a","sa":"asdf"}]

OK, I've upgraded to
"Pomelo.AspNetCore.AntiXSS": "1.1.0-rtm-10031"
The problem remains, so it's adding \" to html-strings inside a serialized JSON-object.

Why you use antixss to filter a json？ antixss should be used in sanitize html scenario.

Frontend is collecting answers from the users. The answers contain html that will displayed to others. Since the answers are nested I have to serialize them into a single field before posting them to server.
AntiXss filters the serialized string in OWIN before it reaches the MVC-controller. Maybe a workaround could be to

turn off antixss for this particular controller
parse the JSON
filter each html-field specifically before saving to database.

What do you think?
...and thank you for your good work!

OK, I changed to .net MVC's built-in handling of Lists of objects. This flattened the JSON-object into plain fields in the post-request, which now are filtered individually.
Everything is working fine!


Bugs with RTP_FORMAT_H264 and RTP_FORMAT_GENERIC

Hello,
While working with uvgRTP, I believe I've come across a couple of bugs:
When using RTP_FORMAT_GENERIC with the RCE_FRAGMENT_GENERIC flag enabled, individual packets smaller than payload_size are not recognized as such by the receiver and are discarded. I believe this is due to the fact that the sender does put a mark on every packet smaller than the payload_size, regardless if it is a singleton or not.
When using RTP_FORMAT_H264:

clear_aggregation_info() is not always called before flushing the queue, which can result in a duplicate of the data being inserted into the next message.
wsa_bufs (socket.cc line 375) can contain only 16 buffers, but there's nothing to prevent inserting more if there are a lot of aggregated packets. I don't know if that is something that could event happen with a well-formed stream, but in combination with the previous bug this can easily cause a read access error.
Very small NAL Units with only 2 bytes of nonzero data (Like a type 9 access unit delimiter) are not accepted as valid data and are discarded along with the remaining data of the frame.

In addition, I've noticed that the debug messages published every time a packet is received do have a significant negative performance impact when run in visual studio. I have not tested this with anything else.
Lastly, I've noticed that the first packet sent seems to always be accounted as corrupted by the receiver when sending in RTP_FORMAT_GENERIC. I have not taken the time to examine if that is due to uvgRTP or to my stream being malformed since this is not critical to my current project.
Have a nice day

Hello and thank you for your interest in uvgRTP
Unfortunately the H.264 was not tested thoroughly and it seems to be quite buggy. These aggregation packets are also a headache for H.265 implementation so if they are not absolutely crucial for your needs, I'd disable them and wait for a proper fix. Right now I don't have the hours to put into this project so I don't know when fixes for all these bugs will appear but I'll try to find time somewhere. For the time being, if these AVC fixes are crucial to you, you can replace the code in src/formats/h264.cc with the following to disable aggregation packet support. You can play with if (data_len <= 3) and if (data_len - 3 <= payload_size) checks to see if you can enable 2-byte NAL unit support.
rtp_error_t uvg_rtp::formats::h264::push_nal_unit(uint8_t *data, size_t data_len, bool more)
{
    if (data_len <= 3)
        return RTP_INVALID_VALUE;

    uint8_t nal_type    = data[0] & 0x1f;
    rtp_error_t ret     = RTP_OK;
    size_t data_left    = data_len;
    size_t data_pos     = 0;
    size_t payload_size = rtp_ctx_->get_payload_size();

    if (data_len - 3 <= payload_size) {
        if ((ret = fqueue_->enqueue_message(data, data_len)) != RTP_OK) {
            LOG_ERROR("Failed to enqueue Single NAL Unit packet!");
            return ret;
        }

        if (more)
            return RTP_NOT_READY;
        return fqueue_->flush_queue();
    }

Regarding these RTP_FORMAT_GENERIC issues, are you using the latest version of uvgRTP? I believe I fixed some problems relating to RCE_FRAGMENT_GENERIC but it's of course possible another bug slipped in. I will take a look at this too as soon as I can.
And lastly, the debug prints are very verbose and currently don't even serve much purpose which is a future task for somebody. Anyway, the debug prints can disabled with -DNDEBUG and all logging can be disabled with -D__RTP_SILENT__.
I'll close this issue when all these bugs have been fixed. Thanks for reporting these!

Hello and thank you for your interest in uvgRTP
Unfortunately the H.264 was not tested thoroughly and it seems to be quite buggy. These aggregation packets are also a headache for H.265 implementation so if they are not absolutely crucial for your needs, I'd disable them and wait for a proper fix. Right now I don't have the hours to put into this project so I don't know when fixes for all these bugs will appear but I'll try to find time somewhere. For the time being, if these AVC fixes are crucial to you, you can replace the code in src/formats/h264.cc with the following to disable aggregation packet support. You can play with if (data_len <= 3) and if (data_len - 3 <= payload_size) checks to see if you can enable 2-byte NAL unit support.
rtp_error_t uvg_rtp::formats::h264::push_nal_unit(uint8_t *data, size_t data_len, bool more)
{
    if (data_len <= 3)
        return RTP_INVALID_VALUE;

    uint8_t nal_type    = data[0] & 0x1f;
    rtp_error_t ret     = RTP_OK;
    size_t data_left    = data_len;
    size_t data_pos     = 0;
    size_t payload_size = rtp_ctx_->get_payload_size();

    if (data_len - 3 <= payload_size) {
        if ((ret = fqueue_->enqueue_message(data, data_len)) != RTP_OK) {
            LOG_ERROR("Failed to enqueue Single NAL Unit packet!");
            return ret;
        }

        if (more)
            return RTP_NOT_READY;
        return fqueue_->flush_queue();
    }

Regarding these RTP_FORMAT_GENERIC issues, are you using the latest version of uvgRTP? I believe I fixed some problems relating to RCE_FRAGMENT_GENERIC but it's of course possible another bug slipped in. I will take a look at this too as soon as I can.
And lastly, the debug prints are very verbose and currently don't even serve much purpose which is a future task for somebody. Anyway, the debug prints can disabled with -DNDEBUG and all logging can be disabled with -D__RTP_SILENT__.
I'll close this issue when all these bugs have been fixed. Thanks for reporting these!

Hello,
Sorry for the late answer. I am using the latest version of uvgRTP.
I actually have implemented workarounds around most of the issues, but I haven't tested them for more than my needs and I don't know if they even are conform to the rtp standard. But they do work for me, so this isn't really urgent from my perspective.

Hello,
Sorry for the late answer. I am using the latest version of uvgRTP.
I actually have implemented workarounds around most of the issues, but I haven't tested them for more than my needs and I don't know if they even are conform to the rtp standard. But they do work for me, so this isn't really urgent from my perspective.

Hi @jumarbach
I wanted to give you an update that the RTP_FORMAT_GENERIC issues have been resolved. I was not able to reproduce the issue where the first packet is rejected but after fixing the marker issue, both small and larger packets are sent and received successfully at least in my tests.
As for the H.264 fixes, I still haven't find time to finalize them. The fixes should be ready but the test framework I've been writing to validate the fixes is still in progress. It should be ready soon, I'll update you when those fixes are in the master.

@altonen I use today RTP_FORMAT_GENERIC with RCE_FRAGMENT_GENERIC for big images.
I send firstly a small data (the image information like width, height, num_channels, image_type with the whole length 16bytes) to receiver.
I have the same problem that those data are discarded somehows.

Hi,
I added the 2-byte NAL support and in my tests H.264 stream worked without issues. Unfortunately I'm unable to reproduce the issue with the generic interface but I fixed another issue there regarding fragment ordering. In case you or anyone reading this still encounters the issue where small frames are dropped when RCE_FRAGMENT_GENERIC is used, please open a new issue and please attach the code you're using and if possible, a link to a bitstream that can be used to reproduce the issue.


Script missed a few mailboxes on a Exchange 2010 Server

Nevermind.  It is working.


No sounds are played on MacOS Sequoia

The app opens correctly after me allowing it from Settings, but keyboard sounds are not played. Even with both app volume and system-wide volume at max, no sound is getting played.
Yeah, I've granted accessibility permissions.

Processes running:

If you've previously used v2.3.1 or earlier on your mac, ensure you remove mechvibes from your accessibility permissions, and re-add it back. Ensure Mechvibes is fully closed while you remove and re-add it.
If you're unsure how, Go to your system settings and navigate to Privacy & Security > Accessibility and click on Mechvibes then click the – icon towards the bottom of the window.
In my testing, macOS rejects the attempt Mechvibes makes to re-add the app to accessibility permissions, so you'll need to click the + icon, and find your currently installed Mechvibes.app file. YMMV though, so feel free to test if it gets re-added automatically for you.
If this doesn't work for you, let me know and i'll re-open this issue.


large errors with linear quantized op on MPS device

Some of the dispatched linear op tests are failing with large quantization errors on mps device.
FAILED test/nn/test_qlinear.py::test_quantize_linear[mps-bias-32-32-1] - AssertionError: assert tensor(127, device='mps:0', dtype=torch.int8) <= 1
FAILED test/nn/test_qlinear.py::test_quantize_custom_module - assert tensor(2, dtype=torch.int8) <= 1
FAILED test/qtensor/test_quantized_dispatch.py::test_linear[mps-bias-5-5-1] - AssertionError: error 3.1107 exceeds atol 0.0001
FAILED test/qtensor/test_quantized_dispatch.py::test_linear[mps-bias-32-32-1] - AssertionError: error 9.2124 exceeds atol 0.0001

This only happens when there is a bias, so there must be something wrong related to the torch.ops.aten.linear MPS implementation. Maybe check for updates to references instead of copies that are hidden by other backends ?

Resolved by #37