TSAnalyzer memory leak

Hello,
Somewhere between 3.14 and 3.18 the analyzer seems to have developed a memory leak.
Here I am on Fedora 30, building tsduck master and I am running something like:
tsp -m -I ip -r --default-interface <IP_ADDRESS>:1500 -P analyze -i8 --normalized -O drop

And the process is slowly but steadily growing.
Here is what valgrind --tool=memcheck --leak-check=full  has to say about it after 30 seconds:
==13507==
==13507== HEAP SUMMARY:
==13507==     in use at exit: 83,626 bytes in 629 blocks
==13507==   total heap usage: 729,497 allocs, 728,868 frees, 45,178,261 bytes allocated
==13507==
==13507== 11,452 (336 direct, 11,116 indirect) bytes in 14 blocks are definitely lost in loss record 25 of 29
==13507==    at 0x4838E86: operator new(unsigned long) (vg_replace_malloc.c:344)
==13507==    by 0x4C265EC: ts::TSAnalyzer::getPID(unsigned short, ts::UString const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C28E52: ts::TSAnalyzer::analyzePAT(ts::PAT const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2DCAA: ts::TSAnalyzer::handleTable(ts::SectionDemux&, ts::BinaryTable const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD39B0: ts::SectionDemux::ETIDContext::notify(ts::SectionDemux&, bool, bool) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD464B: ts::SectionDemux::processPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD496D: ts::SectionDemux::feedPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2DE2B: ts::TSAnalyzer::feedPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x5776EB7: ts::AnalyzePlugin::processPacket(ts::TSPacket&, ts::TSPacketMetadata&) (in /home/builder/t/usr/bin/tsplugin_analyze.so)
==13507==    by 0x4072A6: ts::tsp::ProcessorExecutor::main() (in /home/builder/t/usr/bin/tsp)
==13507==    by 0x4C7898C: ts::Thread::mainWrapper() (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C789DC: ts::Thread::ThreadProc(void*) (in /home/builder/t/usr/bin/tsduck.so)
==13507==
==13507== 25,152 (768 direct, 24,384 indirect) bytes in 32 blocks are definitely lost in loss record 27 of 29
==13507==    at 0x4838E86: operator new(unsigned long) (vg_replace_malloc.c:344)
==13507==    by 0x4C265EC: ts::TSAnalyzer::getPID(unsigned short, ts::UString const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2BAE7: ts::TSAnalyzer::analyzePMT(unsigned short, ts::PMT const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2DC7D: ts::TSAnalyzer::handleTable(ts::SectionDemux&, ts::BinaryTable const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD39B0: ts::SectionDemux::ETIDContext::notify(ts::SectionDemux&, bool, bool) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD464B: ts::SectionDemux::processPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4BD496D: ts::SectionDemux::feedPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2DE2B: ts::TSAnalyzer::feedPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x5776EB7: ts::AnalyzePlugin::processPacket(ts::TSPacket&, ts::TSPacketMetadata&) (in /home/builder/t/usr/bin/tsplugin_analyze.so)
==13507==    by 0x4072A6: ts::tsp::ProcessorExecutor::main() (in /home/builder/t/usr/bin/tsp)
==13507==    by 0x4C7898C: ts::Thread::mainWrapper() (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C789DC: ts::Thread::ThreadProc(void*) (in /home/builder/t/usr/bin/tsduck.so)
==13507==
==13507== 42,346 (1,296 direct, 41,050 indirect) bytes in 54 blocks are definitely lost in loss record 29 of 29
==13507==    at 0x4838E86: operator new(unsigned long) (vg_replace_malloc.c:344)
==13507==    by 0x4C265EC: ts::TSAnalyzer::getPID(unsigned short, ts::UString const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C2DE6B: ts::TSAnalyzer::feedPacket(ts::TSPacket const&) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x5776EB7: ts::AnalyzePlugin::processPacket(ts::TSPacket&, ts::TSPacketMetadata&) (in /home/builder/t/usr/bin/tsplugin_analyze.so)
==13507==    by 0x4072A6: ts::tsp::ProcessorExecutor::main() (in /home/builder/t/usr/bin/tsp)
==13507==    by 0x4C7898C: ts::Thread::mainWrapper() (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x4C789DC: ts::Thread::ThreadProc(void*) (in /home/builder/t/usr/bin/tsduck.so)
==13507==    by 0x501E4BF: start_thread (in /usr/lib64/libpthread-2.29.so)
==13507==    by 0x529F552: clone (in /usr/lib64/libc-2.29.so)
==13507==
==13507== LEAK SUMMARY:
==13507==    definitely lost: 2,400 bytes in 100 blocks
==13507==    indirectly lost: 76,550 bytes in 515 blocks
==13507==      possibly lost: 0 bytes in 0 blocks
==13507==    still reachable: 4,676 bytes in 14 blocks
==13507==         suppressed: 0 bytes in 0 blocks
==13507== Reachable blocks (those to which a pointer was found) are not shown.
==13507== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==13507==
==13507== For lists of detected and suppressed errors, rerun with: -s
==13507== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)

Hi @yaneti,
Thank you for reporting this. Well done!
I fixed the problem.
For those who are interested in the details, the problem was a memory leak in the move assignment operator of the class ts::SafePtr. This template class is designed to implement generic thread-safe, auto-deallocating pointers. It is used everywhere in TSDuck. Using that safe pointer class, you can write C++ code as you would write Java code, as far as memory management is concerned.
Being a fundamental class, I developed it a long time ago, before the advent of the C++11 standard. At the time, this class has been thoroughly tested and many application-level scenarios were run under valgrind control to make sure that the memory control was effective. And it was. Not a single byte was ever lost.
Nowadays, TSDuck relies on many new features of the C++11 standard which make the language much more robust. Amongst these new features, the move semantics is very convenient to improve the performances through move constructors and move assignment operators. Recently (and this is why you see a difference), I added a move constructor and a move assignment operator to the safe pointer class. But, I made a mistake in the move assignment operator which introduced a subtle memory leak. The code is functional, the performances are much better, especially for thread-safe smart pointers, but, but, but...
It is fixed now.

Thanks for the quick fix and the curious details @lelegard .
Applied it to a machine with a lot of tsp-s and memory usage is now steady.


Pending transaction

Can we have something to show "pending commits"? ... If I am in a production environment where all queries are part of transactions how I know if there is a pending one? Thanks.
PS.This is categorized as "wish".

Transaction monitor feature will be added in 4.0. Probably pending transactions will be be part of this monitor.
Although special UI might be added in 4.0.1.


Received unexpected HTTP status: 500 Internal Server Error

Output of docker version:
(paste your output here)
```Docker version 1.10.3, build 57bf6fd

**Output of `docker info`:**

(paste your output here)
 Running: 0
 Paused: 0
 Stopped: 3
Images: 6
Server Version: 1.10.3
Storage Driver: devicemapper
 Pool Name: docker-251:0-41156611-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 2.683 GB
 Data Space Total: 107.4 GB
 Data Space Available: 104.7 GB
 Metadata Space Used: 4.891 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.143 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /scratch/docker/devicemapper/devicemapper/data
 WARNING: Usage of loopback devices is strongly discouraged for production use. Either use`--storage-opt dm.thinpooldev`or use`--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
 Metadata loop file: /scratch/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.107-RHEL7 (2015-10-14)
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: host bridge null
Kernel Version: 4.1.12-32.2.3.el7uek.x86_64
Operating System: Oracle Linux Server 7.2
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: 251.6 GiB
Name: xxxxxx..com
ID: DKRO:COZA:MLEU:PMNM:3RJZ:LYME:XC6R:ER4B:PZ7J:G5PB:2LEG:YSGN
Http Proxy: http://www-xxx.xxx.com:80/
Https Proxy: http://www-xxxx.xxx..com:80/

**Additional environment details (AWS, VirtualBox, physical, etc.):**
using object storage Swift

**Steps to reproduce the issue:**
1.Installed docker/distribution registry
distribution/registry                                   latest              6d263fc92047        7 months ago        666.4 MB
1. started private registry with SETTINGS_FLAVOR=swift
   3.docker push is failing

**Describe the results you received:**
# docker push xxxxxxx.com:5000/internal/oraclelinux:7u2

The push refers to a repository [xxxxxx.com:5000/internal/oraclelinux]
5f70bf18a086: Pushing 1.024 kB
472062da526a: Pushing [==================================================>] 276.1 MB/276.1 MB
Received unexpected HTTP status: 500 Internal Server Error

and docker logs show below error

time="2016-07-28T06:03:26.357702532Z" level=error msg="response completed with error" environment=development err.code=UNKNOWN err.detail="parsing time \"Thu, 28 Jul 2016 06:02:20 UTC\" as \"Mon, 02 Jan 2006 15:04:05 GMT\": cannot parse \"UTC\" as \" GMT\"" err.message="unknown error"

**Describe the results you expected:**

**Additional information you deem important (e.g. issue happens only occasionally):**

Do you have logs from that registry as well? Looks like this may be an issue with docker/distribution, not docker (engine)

I have started container with the docker image "distribution/registry" . Do you need that logs from that container?
these logs I found in /var/log/messages
docker[18158]: time="2016-07-28T05:44:41.380564107Z" level=info msg="API listen on /var/run/docker.sock"
docker[18158]: time="2016-07-28T05:45:17.968880651Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T05:45:22.630771408Z" level=error msg="Error in LookupRemoteImage: HTTP code 404"
docker[18158]: time="2016-07-28T05:45:22.666236609Z" level=error msg="Error in LookupRemoteImage: HTTP code 404"
docker[18158]: time="2016-07-28T05:45:22.667421542Z" level=error msg="Error in LookupRemoteImage: HTTP code 404"
docker[18158]: time="2016-07-28T05:55:45.252723240Z" level=warning msg="cannot serialize hook of type configs.FuncHook, skipping"
docker[18158]: time="2016-07-28T05:55:45.369808336Z" level=warning msg="cannot serialize hook of type configs.FuncHook, skipping"
docker[18158]: time="2016-07-28T05:56:30.317110740Z" level=warning msg="cannot serialize hook of type configs.FuncHook, skipping"
docker[18158]: time="2016-07-28T05:56:30.381321703Z" level=warning msg="cannot serialize hook of type configs.FuncHook, skipping"
docker[18158]: time="2016-07-28T05:58:00.701021415Z" level=error msg="Upload failed, retrying: Received unexpected HTTP status: 500 Internal Server Error"
docker[18158]: time="2016-07-28T05:59:11.910953779Z" level=error msg="Upload failed, retrying: Received unexpected HTTP status: 500 Internal Server Error"
docker[18158]: time="2016-07-28T06:00:24.538162970Z" level=error msg="Upload failed, retrying: Received unexpected HTTP status: 500 Internal Server Error"
docker[18158]: time="2016-07-28T06:01:57.819531823Z" level=error msg="Upload failed, retrying: Received unexpected HTTP status: 500 Internal Server Error"
docker[18158]: time="2016-07-28T06:03:26.394562275Z" level=error msg="Upload failed: Received unexpected HTTP status: 500 Internal Server Error"
docker[18158]: time="2016-07-28T06:17:32.131702541Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:25:52.123610307Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:25:52.155950410Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:32:21.719592550Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:33:55.819264403Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:54:35.728736978Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D
docker[18158]: time="2016-07-28T06:56:22.986724252Z" level=error msg="Upload failed: Error parsing HTTP response: invalid character '<' looking for beginning of value: "<!D

Looks like it's receiving a HTML page (but the logs are truncated); I suspect an issue with your proxy settings, causing some requests to be blocked, and returning a 403

but I can see some file under swift storage.
swift list
REGISTRY
swift list REGISTRY
files/docker/registry/v2/repositories/oraclelinux/_uploads/010a09f7-68d5-4d7f-a769-c0f6b552b688/data
files/docker/registry/v2/repositories/oraclelinux/_uploads/010a09f7-68d5-4d7f-a769-c0f6b552b688/hashstates/sha256/0
files/docker/registry/v2/repositories/oraclelinux/_uploads/010a09f7-68d5-4d7f-a769-c0f6b552b688/hashstates/sha256/97837850
files/docker/registry/v2/repositories/oraclelinux/_uploads/010a09f7-68d5-4d7f-a769-c0f6b552b688/startedat
files/docker/registry/v2/repositories/oraclelinux/_uploads/174eb931-e7e7-42d5-b607-f6e9c4530f45/data
files/docker/registry/v2/repositories/oraclelinux/_uploads/174eb931-e7e7-42d5-b607-f6e9c4530f45/hashstates/sha256/0
files/docker/registry/v2/repositories/oraclelinux/_uploads/174eb931-e7e7-42d5-b607-f6e9c4530f45/hashstates/sha256/97837850
files/docker/registry/v2/repositories/oraclelinux/_uploads/174eb931-e7e7-42d5-b607-f6e9c4530f45/startedat
files/docker/registry/v2/repositories/oraclelinux/_uploads/22ec2a70-418d-4c6a-9127-ae7619584987/data
files/docker/registry/v2/repositories/oraclelinux/_uploads/22ec2a70-418d-4c6a-9127-ae7619584987/hashstates/sha256/0
files/docker/registry/v2/repositories/oraclelinux/_uploads/22ec2a70-418d-4c6a-9127-ae7619584987/hashstates/sha256/97837850
files/docker/registry/v2/repositories/oraclelinux/_uploads/22ec2a70-418d-4c6a-9127-ae7619584987/startedat
files/docker/registry/v2/repositories/oraclelinux/_uploads/d11f211c-e42c-4d62-9c10-18fc3d209338/data
files/docker/registry/v2/repositories/oraclelinux/_uploads/d11f211c-e42c-4d62-9c10-18fc3d209338/hashstates/sha256/0
files/docker/registry/v2/repositories/oraclelinux/_uploads/d11f211c-e42c-4d62-9c10-18fc3d209338/hashstates/sha256/97837850
files/docker/registry/v2/repositories/oraclelinux/_uploads/d11f211c-e42c-4d62-9c10-18fc3d209338/startedat
files/docker/registry/v2/repositories/oraclelinux/_uploads/d8721f47-4adf-4e67-be6b-862e4b02bbe9/data
files/docker/registry/v2/repositories/oraclelinux/_uploads/d8721f47-4adf-4e67-be6b-862e4b02bbe9/hashstates/sha256/0
files/docker/registry/v2/repositories/oraclelinux/_uploads/d8721f47-4adf-4e67-be6b-862e4b02bbe9/hashstates/sha256/97837850
files/docker/registry/v2/repositories/oraclelinux/_uploads/d8721f47-4adf-4e67-be6b-862e4b02bbe9/startedat

this is how .. I'm starting the docker registry container
docker run --restart=always --privileged=true -d --name pdit-registry1 -p 5000:5000 -e "REGISTRY_STORAGE=swift"
-e "REGISTRY_STORAGE_SWIFT_USERNAME=Storage-xxxxxx:xxxxx.Storageadmin" -e "REGISTRY_STORAGE_SWIFT_PASSWORD=xxxxxx"
-e "REGISTRY_STORAGE_SWIFT_AUTHURL=https://xxxxxxx.corp.com/auth/v1.0" -e "REGISTRY_STORAGE_SWIFT_CONTAINER=REGISTRY"  distribution/registry

any help on this will be appreciated.

Perhaps @dmp42 has some suggestions, but this issue may be really specific to your setup; keep in mind that the GitHub issue tracker is not a general support forum; you can try forums.docker.com as well

First thing, please don't use distribution/registry, just use the official image registry.
Also, like @thaJeztah pointed out, your logs contain html. The registry does not return html, so, it's likely whatever proxy you have setup in between that's causing the issue.
I would suggest you try again with:

the official image registry
no proxy in between

@dmp42 .. Appreciate for the inputs.
Even with offical image registry , Im getting the same error. I will check with proxy settings and see.
docker images
REPOSITORY                                              TAG                 IMAGE ID            CREATED             SIZE
registry                                                latest              c6c14b3960bd        5 days ago          33.28 MB
registry                                                2                   8ff6a4aae657        7 weeks ago         171.5 MB

Closing, because this is likely not a bug, but a configuration / network setup issue

somashekar@somashekar:~/Desktop/mssql$ heroku container:push --app mssql-test
Sending build context to Docker daemon   371 MB
Step 1/7 : FROM heroku/heroku:16
---> cc0caac6a5c5
Step 2/7 : FROM microsoft/mssql-server-linux:latest
---> aa104c338ea3
Step 3/7 : EXPOSE 1433
---> Using cache
---> 3e89f2aabd0b
Step 4/7 : ARG user
---> Using cache
---> 80b32c2af42e
Step 5/7 : WORKDIR /var/opt/mssql
---> Using cache
---> 869aa05a0587
Step 6/7 : VOLUME /var/opt/mssql/data /var/opt/mssql/data
---> Using cache
---> 6add8a1f42f3
Step 7/7 : CMD /opt/mssql/bin/sqlservr
---> Using cache
---> 68537ddb86c3
Successfully built 68537ddb86c3
The push refers to a repository [registry.heroku.com/mssql-test/web]
02d9d2901297: Retrying in 1 second
588e319013ef: Retrying in 1 second
7e20a5da50cf: Retrying in 5 seconds
3da04e6301f6: Retrying in 5 seconds
f1e60b0cfe77: Retrying in 1 second
cc31aa8aca7d: Waiting
668724d35c59: Waiting
d7c22be21371: Waiting
c1bd37d01c89: Waiting
943edb549a83: Waiting
bf6751561805: Waiting
f934e33a54a6: Waiting
e7ebc6e16708: Waiting
received unexpected HTTP status: 500 Internal Server Error
!    Error: docker push exited with 1
While pushing to heroku private space i am getting this error

@somashekarg have you also contacted heroku? The 500 error could come from their registry

Actual i tried pushing the docker image to personal app in heroku it is pushing successfully and while starting the sql server in heroku app it is giving
This is an evaluation version.  There are [153] days left in the evaluation period.
RegQueryValueEx HADR for key "Software\Microsoft\Microsoft SQL Server\MSSQL\MSSQLServer\HADR" failed.
2017-03-14 13:26:14.93 Server      Microsoft SQL Server vNext (CTP1.3) - 14.0.304.138 (X64)
Feb 13 2017 16:49:12
Copyright (C) 2016 Microsoft Corporation. All rights reserved.
on Linux (Ubuntu 16.04.1 LTS)
2017-03-14 13:26:14.93 Server      UTC adjustment: 0:00
2017-03-14 13:26:14.94 Server      (c) Microsoft Corporation.
2017-03-14 13:26:14.94 Server      All rights reserved.
2017-03-14 13:26:14.94 Server      Server process ID is 4116.
2017-03-14 13:26:14.94 Server      Logging SQL Server messages in file 'C:\var\opt\mssql\log\errorlog'.
2017-03-14 13:26:14.95 Server      Registry startup parameters:
-d C:\var\opt\mssql\data\master.mdf
-l C:\var\opt\mssql\data\mastlog.ldf
-e C:\var\opt\mssql\log\errorlog
2017-03-14 13:26:14.96 Server      Error: 17113, Severity: 16, State: 1.
2017-03-14 13:26:14.96 Server      Error 3(The system cannot find the path specified.) occurred while opening file 'C:\var\opt\mssql\data\master.mdf' to obtain configuration information at startup. An invalid startup option might have caused the error. Verify your startup options, and correct or remove them if necessary.
2017-03-14 13:26:14.97 Server      SQL Server shutdown has been initiated
so i tired pushing the same-thing in private space where all the ports are opened
anybody help me in this issue?

@somashekarg the GitHub issue tracker is not the best place for that;  it's not intended as a general support forum for using docker. Consider using one of;

https://forums.docker.com
the Docker community Slack channel
StackOverflow


implement hadolint

Implement a github action for hadolint when you do a change in your PR in a dockerfile.
https://github.com/jbergstroem/hadolint-gh-action/blob/main/USAGE.md

Reminder, do we want to implement this @mtesauro and @Maffooch ?

@manuel-sommer I'd like to wait at least until after 2.38.0 so that we no longer have MySQL and RabbitMQ in play and the dockerfiles have been adjusted for those deprecations.
I'm trying to avoid double work if possible.

Reminder @mtesauro

Let's reopen this after the image hardening and simplification is completed


feat: remove private key from netlify env

Would you mind also looking into the CI fix so that I can have more confidence with these pull request reviews (I can merge when they pass CI)


Disabled by user

This integration is showing Disabled by User and can not be removed, uninstalled or reinstalled.  What now?

Enable it and then remove it.


Update readme

Hi !
I noticed while going through the PyPI page that the reStructuredText had formatting issues, so I fixed them. But then, I saw that some parts of the README were using old and deprecated services (pypid.in is down, bitdeli.com is down, etc.) so I "updated" the README a tad, using shields.io for badges, adding a badge to the documentation, and replacing links to pypid.in with links to the new PyPI UI, warehouse.

Coverage remained the same at 98.397% when pulling f2dde08e358f560fb1b124e6b7e3a54c1086c422 on althonos:master into 9598f44863bedaa4590559baa88fa079d3cfc3e5 on python-xmp-toolkit:master.


Auto-enroll ACBs and skip the inquiries step

ACBs (since they are already confirmed) don't need to flag any purchases.
Instead, once they are logged in, they are 'auto-enrolled' and immediately just shown the Thank you page.
'Auto-enrolling' means setting the loyalty_applicant: true stuff, and checking if someone is an ACB means fetching me { collector_profile { confirmed_buyer_at } } (may need to add it to Metaphysics, but it's already in Gravity).

As an FYI here's that example: https://github.com/artsy/reaction-force/pull/85

Great ticket, will do, sir 👍

stealin' this in favor of analytics for now...

This is done #89


[New architecture] In a workspace settings Cards/Reimbursement/Bills/Invoices all pages keeps loading infinitely

If you haven't already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

This issue is related to the ongoing new architecture adoption. It was reported on the build with new architecture enabled on the relevant PR.

Version Number: 1.4.42-1
Reproducible in staging?: no
Reproducible in production?: no
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @ishpaul777 here
Slack conversation:
Action Performed:
Break down in numbered steps
Expected Result:
Pages load correctly
Actual Result:
Pages loading infinitely.
Workaround:
Not investigated yet.
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos
Available in the linked comment.

View all open jobs on GitHub

Will be tested once the PR is deployed.


Integration tests exhaust GCS bucket admin rate limits

Test logs from #4250 expose it:
BucketIntegrationTest.BasicCRUD fails with "The project exceeded the rate limit for creating and deleting buckets."
Some links:

https://source.cloud.google.com/results/invocations/abec1e2e-aad4-4e00-bec3-37930ef57853/targets/cloud-cpp%2Fgithub%2Fgoogle-cloud-cpp%2Fmaster%2Fdocker%2Fasan-presubmit/log
https://source.cloud.google.com/results/invocations/736bb3de-8cdc-4fa1-9705-35c939a9ce12/targets/cloud-cpp%2Fgithub%2Fgoogle-cloud-cpp%2Fmaster%2Fdocker%2Ftsan-presubmit/log
https://source.cloud.google.com/results/invocations/3b644fae-c748-491a-b1cf-6eaa63977734/log

Dup of #4255


Please ensure that NULL profiles are not negotiated by default

Since https://github.com/pion/dtls/commit/6178064b9f001cb10dc80d99bd66254fe273bac8, we support unencrypted profiles.  However, I do not see any code that prevents these profiles from being negotiated by default, which to my untrained eyes implies that pion-to-pion communication might end up unencrypted.
We should either remove the unencrypted profiles, or add a test that verifies that we never negotiate them without them being explicitly requested by the client.

@jech list of protection profiles used by default is elsewhere: https://github.com/pion/webrtc/blob/master/constants.go#L47

Thanks for the info, @sirzooro.


gnome.gnome-remote-desktop: 41.1 -> 41.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for gnome.gnome-remote-desktop is: "GNOME Remote Desktop server"
meta.homepage for gnome.gnome-remote-desktop is: "https://wiki.gnome.org/Projects/Mutter/RemoteDesktop"
meta.changelog for gnome.gnome-remote-desktop is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
https://gitlab.gnome.org/GNOME/gnome-remote-desktop/-/compare/41.1...41.2
Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 41.2 with grep in /nix/store/3143jvlw2c4j2ny03z0sxvf92s7rjwxz-gnome-remote-desktop-41.2

found 41.2 in filename of file in /nix/store/3143jvlw2c4j2ny03z0sxvf92s7rjwxz-gnome-remote-desktop-41.2

Rebuild report (if merged into master) (click to expand)

6 total rebuild path(s)

5 package rebuild(s)

5 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
docbookrx
gnome.gnome-control-center
gnome.gnome-remote-desktop
gnome.gnome_control_center
phosh

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/3143jvlw2c4j2ny03z0sxvf92s7rjwxz-gnome-remote-desktop-41.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A gnome.gnome-remote-desktop https://github.com/r-ryantm/nixpkgs/archive/2a7de7468bc2fc56c9ff683765271516e666b6db.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/3143jvlw2c4j2ny03z0sxvf92s7rjwxz-gnome-remote-desktop-41.2
ls -la /nix/store/3143jvlw2c4j2ny03z0sxvf92s7rjwxz-gnome-remote-desktop-41.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

gnome.gnome-control-center
gnome.gnome-remote-desktop
phosh

Maintainer pings
cc @hedning @jtojnar @dasj19 @maxeaubrey for testing.

Maybe... ping @NixOS/gnome ?


Chore: upgrade to latest remix

I wanna take this one

I'd like to work on this
/attempt #15

@ericallam Can I work on this one?

Hello @ericallam, is this issue still available to solve?

@samejr Is this no longer needed then?

@samejr Is this no longer needed then?

This is still an available bounty issue 👍

@samejr Please assign this to me?

Oh I see https://github.com/triggerdotdev/jsonhero-web/pull/167 already there, in case that's not working, please defer to me!

No feel free to make an attempt, we'll choose the best PR to merge when we have chance to check them out. The full bounty is still available while the issue is still open, we'll always reward based on quality not speed.

when we have chance to check them out.

You're kidding? 3 months, and the PR is still unprocessed?
It's bounties, not slave labor.

/tip $200 @scshiv29-dev

Sorry @abebeos this one definitely slipped our attention for too long. Our bad.


[Content]: Klaviyo Personas Section

What article on segment.com/docs is affected?
https://segment.com/docs/connections/destinations/catalog/klaviyo/#personas
What part(s) of the article would you like to see updated?
The existing Personas content for the Klaviyo destination doc does a nice job explaining our standard-ish practice of sending identify() calls downstream, which update user profiles in Klaviyo. But it's missing two things that I think make things misleading for users:

The following is implied but I think should be explicitly stated at the end of the Personas section: "Once Segment's identify() call sets a custom property on the Klaviyo user profile for a Personas audience, Klaviyo segments can be created off that property when its value is "true". This will ensure membership is updated automatically as users fall in and out of eligibility criteria for the Personas audience".
In the Segment UI, a user is prompted to enter a list_id as an optional field. If that's filled in, our Klaviyo destination code will fire its _addToList method instead of the normal identify() approach. _addToList, from what I can tell, only ADDS users to the provided list_id. It does not provide a way to REMOVE users. So by including a list_id in the destination settings, it breaks the expectation set by the existing Personas language (which implies Personas will automatically keep the membership up to date). So in tandem with (1) above, I think the writeup should include a warning box for Personas along the lines of "inputting a list id in the destination settings is not recommended for Personas destinations. Doing so will instruct Segment to add users to the provided list_id, but users will not be removed. Instead leave list id empty and see guidance above for creating Klaviyo segments" (and reference (1)).

Additional information
No response

@seanhan-segment We've updated the Klaviyo Personas section with this content.  Thanks for bringing it to our attention.


FAQ gives wrong advise about NativeCall

The problem
https://doc.perl6.org/language/faq#Nativecall_can't_find_libfoo.so_and_I_only_have_libfoo.so.1.2!
Answers the issue of "Nativecall can't find libfoo.so and I only have libfoo.so.1.2!" with:
"This is commonly seen on Debian-like systems. You need to install libfoo-dev package, to set a symlink for the missing file."
This advice is wrong.
Suggestions
The correct solution is to add version information to the is native trait.
Wrong: is native('foo')
Right: is native('foo', v1) or: is native('foo', v1.2) depending on the library's API stability guarantees.
Of course it doesn't help that the nativecall documentation uses the unsafe variant throughout except for the "ABI/API version" section.

Thanks for the report. We'll get to it ASAP.

Would it better to start by improving the Native documentation?

Of course, best would be to fix both. But the one does not depend on the other.

I've been having a look at the documentation, and it's true that the only reference to versions is in that section, even if it says there that the only safe way to use shared libraries is to refer to the version. As a matter of fact, all shared libraries are symbolic links to the real thing, so we might as well use the thing they link to. I'm working on an example that uses that.

The only exception to this would probably be bundled libraries like libp5helper.so which comes with Inline::Perl5. Those will be unversioned.


Add Date / Datetime / Time Widgets

Date / Datetime / Time values should have a dedicated widget with a picker

We should find an off the shelf picker to use.

Refinement notes:

The widget should be displayed for placeholders of type Date/DateTime/Time or a simple Date/DateTime/Time.new expressions (with numeric literals only).
The widget should be similar to drop down: it displays the code as is, but clicking Date.new (or, possibly, editing any argument) shows the calendar.

The widget should have an ability to pick "today" as a dynamic value - always keeping up with current date, not fixed at selection time.


Update Stackdriver dependency to v0.12.8

Update Stackdriver to version to 0.12.8 (updates various transitive
dependencies).
Update various license files based on dependencies pulled in.
$ go get -u contrib.go.opencensus.io/exporter/stackdriver
$ go mod tidy
$ make gen-check

Required for #19783.
Signed-off-by: Nick Travers<EMAIL_ADDRESS>

Hi @nicktrav. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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

/ok-to-test

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

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

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

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

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

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

@nicktrav: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

e2e-simpleTests-distroless_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test e2e-simpleTests-distroless_istio

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

@nicktrav: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

unit-tests_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test unit-tests_istio

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

@nicktrav: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

unit-tests_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test unit-tests_istio

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

@nicktrav: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test lint_istio

unit-tests_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test unit-tests_istio

pilot-multicluster-e2e_istio
c039f3835e3fbc11cdc49970025a600300e5e6b3
link
/test pilot-multicluster-e2e_istio

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

@bianpengyuan - digging into some of the test failures has revealed that there has been a breaking change in the Stackdriver API. There is no-longer any way (at least that I can tell) to obtain the specific TimeSeries in a request that failed. This functionality is currently used to only retry certain TimeSeries.
The following code therefore is obsolete:
https://github.com/istio/istio/blob/4ec8617c073268d2e4a75414bbbbbb66398c3cc3/mixer/adapter/stackdriver/metric/bufferedClient.go#L204-L210
as the API will no longer return a CreateTimeSeriesError in the details. Rather, a CreateTimeSeriesSummary is returned, which only tells you the types of errors, rather than the specific TimeSeries that failed. Upstream change in the GCP proto was here.
Couple options:

rip out the handleError method, instead failing a batch in the case of an error - simple, but we lose retries
implement some kind of bisect-based approach to retry sub-batches to discard TimeSeries that have failed due to non-retryable errors - complex to implement, but we keep the retry functionality
ignore the deprecated lint warning that is failing the test - requires no code change other than the comment to disable the check

It is worth noting that the code currently on master is silently not retrying, as the interface check (above) will never return ok, so we probably need to fix this.

Yeah I think it makes sense to just move the retry logic. #19896 does this.


why my chatbot is wrong?

question
hello,i use deepspeed train my chatbot follow this document,but finally when i test it,i find it is incorrent.Can you give me some advice?
finally code
python chat.py --path output/step3-models/1.3b/actor
docuent address
https://techdiylife.github.io/big-model-training/deepspeed/deepspeed-chat.html
message

configuation
4*A100 80G
torch1.13.0
cuda11.4
next one
when i use reward model(350M),i find it is also incorrent.
code
python chat.py --path output/reward-models/350m
message

next two
when i use SFT model(1.3b),i find it is ok.
code
python chat.py --path output/actor-models/1.3b
message

ok,when i use actor_ema model,i find it is ok.I do not what is the different between actor and actor_ema.Can you describe them?If i use EMA,actor model will not be trained?
code
python chat.py --path output/step3-models/1.3b/actor_ema
message

@liyuyuan6969 this issue might be useful to you: https://github.com/microsoft/DeepSpeedExamples/issues/442

@liyuyuan6969 this issue might be useful to you: #442

thanks


After debugging tests is done, restore my "view state"

Testing #119545

start debugging a unit test
drill deep into some dependent code
stop debugging

I am now "lost" as the editor is still show the last place at which I have debugged. I would like things to cleaned to the state that I had before debugging, e.g close all editor that where opened during debug

I guess this is a general debug feature request. After debugging is done close all automatically opened editors.
We could add a setting for this.

I would not turn this on in my editor, since when I'm debugging I often debug to the place there's a problem and then want to make changes there. It may take some delicacy to make this work well.


migration from v2 to v3

Please, we need help to how use the new version 3 because the API is changed without notice.
var tunnel = require('tunnel-ssh');
var config = {
    username:'root',
    password:'secret',
    host:'remote.mysql.server.com',
    port:3306
}

tunnel(config, function(e, sshTunnel){
    //Now, you should be able to connect to the tunnel via localhost:3336.
});

This code is now:
var tunnel = require('tunnel-ssh');
var config = {
    username:'root',
    password:'secret',
    host:'remote.mysql.server.com',
    port:3306
}

tunnel.tunnel(config, function(e, sshTunnel){
    //Now, you should be able to connect to the tunnel via localhost:3336.
});

I completely agree, this is the first time I'm building something that needs to create an ssh tunnel to connect to a remote mysql server and I'm really struggling since the documentation isn't really sufficient. I found this lib, which I thought to be a nice abstraction layer, but at the moment I going through the source code to figure out how it works which is taking a lot more time than it should :/
Also, npm installed v3 for me. Which means that the docs in the master branch are completely outdated. v3 docs aren't up to date as well.
If I manage to figure it out, i'll definitely submit a PR with a few examples and some info how to use it.

Please note that version3 is currently in the development branch. You will find a READMEv3.md there.
But anyway, i see your point and will come up with a solution for that very soon.

@agebrock READMEv3 isn't up to date with the development branch either :/

Ok folks i have a solution to fix that problem.
We will jump from Version 2 to 4. Version 4 will include the current know bugfixes and will be compatible to Version 2. (except the callback response)
The main feature from Version 3 is moving to its own module.
I hope that will remove the confusion in near future.
I expect the release within this week.

No we did not do changes in released versions (before r4)
i am pretty sure you need to remove the first tunnel .. tunnel export should be a function.
Please update to release 4.0.0. If you have any trouble let me know..

@agebrock When I do npm install tunnel-ssh, it installs only version 3.2.1-beta. How do I install version 4.0.0?

@agebrock When I just do:tunnel instead of tunnel.tunnel, it gives me this error:
tunnel(config, function(e, sshTunnel) {
^

TypeError: tunnel is not a function

@frogbandit we published the project right now to npm. You should be able to update as you would with every package. Let me know if you have any more trouble.


Not working when adding $HOME/bin to PATH

Looks like I had to use this to get it working:
export PATH=$HOME/.local/share/bin:$PATH

Yes. It's in the README.
Thanks.

Forgot to mention...the installation script provides incorrect directions, actually:
export PATH=$HOME/bin:$PATH
❯ curl -s https://raw.githubusercontent.com/shinokada/awesome/main/install | bash -s install

/Users/seenickcode/.local/share/awesome directory is created.
/Users/seenickcode/.local/share/bin directory is created.
Cloning into 'awesome'...
remote: Enumerating objects: 640, done.
remote: Counting objects: 100% (142/142), done.
remote: Compressing objects: 100% (103/103), done.
remote: Total 640 (delta 86), reused 93 (delta 38), pack-reused 498
Receiving objects: 100% (640/640), 3.19 MiB | 15.39 MiB/s, done.
Resolving deltas: 100% (394/394), done.
awesome installation completed.
Add the following to your your terminal config file, such as .zshrc or .bashrc.
export PATH=$HOME/bin:$PATH
Try awesome -h or which awesome.

Ok, thank you for the catch. I will update it.

Thanks!
On July 14, 2021, Sean Pianka @.***> wrote:

Ok, thank you for the catch. I will update it.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/shinokada/awesome/issues/1#issuecomment-880200034,
or unsubscribe <https://github.com/notifications/unsubscribe-
auth/AAASQOO4A2Z5IYII464L4UTTXX2C5ANCNFSM5ALLAMHA>.


ActiveRecord::Enum causes Elasticsearch to throw an NumberFormatException exception.

I have a model with enum type 'state' and the  Elasticsearch::Model::Callbacks is included. Whenever I try to update the 'state' field, I get the following exception thrown at me:
Elasticsearch::Transport::Transport::Errors::BadRequest: [400] {"error":"MapperParsingException[failed to parse [state]]; nested: NumberFormatException[For input string: "submitted"]; ","status":400}
Now, this seems obvious that the state should not be a string but an integer instead. I have no clue to how this possibly be converted to an integer in the elasticsearch's query.

So, post the index mappings. It might be that you indexed numbers first for that attribute. See the create_index! force: true method to re-create the index with up to date mappings and the import method.

Any news?

I was able to resolve my issue by forcing reindex as suggested by @karmi, I used the import rake task with FORCE=y


Button to Fill Gaps with -9999 values

The technicians have requested a button that would insert -9999 into gaps that have been identified by the gap filter. I don't know that this HAS to be done, but we should discuss it when we're prioritizing feature requests.

@AmberSJones This is ready for testing on the nodvfill branch. the gui is a rough sketch, needs a little work before it is done.

I cannot get any series to plot using this branch?

what version of pandas are you using? there was some code that was deprecated so I tried to fix it. but it looks like I may have done that too soon.

@AmberSJones  reverted to deprecated version until we are ready update the library requirements

This is looking good, but I think the form needs a little work. Let's add the text:
"This function fills any gaps less than the gap duration with a no-data value at the fill frequency."
Change the labels to be "Gap Duration:" and "Fill Frequency:"
Also, the fields on the form need to be lined up.

Furthermore- looks like the units that it is using to fill the gaps are off. i.e., I try to fill with 15 minute data and it fills every 15 hours.

@AmberSJones  ready for testing

Ok- seems to be working well. Needs a couple tweaks to the form:

Needs a period at the end.
Should be 'more' rather than 'less'. (that was my fault)

Note that the correct points appear to have been created at the correct intervals, etc., but the table doesn't function as expected with sorting by ValueID or by LocalDateTime.

@AmberSJones  the form is ready for testing again. In what way is it not behaving as expected?

The form is great.
Re. the table- I assumed that sorting by ValueID would bring the 'nan' of the newly-added points to the top (or bottom) of the table. LocalDateTime seems ok- not sure what I was referring to.


feat: switchable theme

Add support for cdstheme param

That's a good idea - will probably explore that next


Implement Siddon's ray-casting

Specifically, the GPU accelerated version from this article https://aapm.onlinelibrary.wiley.com/doi/epdf/10.1118/1.3190156

Specifically, the GPU accelerated version from this article https://aapm.onlinelibrary.wiley.com/doi/epdf/10.1118/1.3190156

For the purpose of initial prototyping, we can assume that the volume has equidistant z-slicing


Creating a gate with all integers throws an error

>>> DefGate("A", np.array([[1, 0], [0, 1]])).out()

throws the following error:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/steven/workspace/pyquil/pyquil/quilbase.py", line 208, in out
    fcols = [format_matrix_element(col) for col in row]
  File "/Users/steven/workspace/pyquil/pyquil/quilbase.py", line 208, in <listcomp>
    fcols = [format_matrix_element(col) for col in row]
  File "/Users/steven/workspace/pyquil/pyquil/quilbase.py", line 68, in format_matrix_element
    assert False, "Invalid matrix element: %r" % element
AssertionError: Invalid matrix element: 1

The type of the integer in a numpy array of all ints is unexpected:
>>> type(np.array([[1, 0], [0, 1]])[0][0])
<class 'numpy.int64'>

That is strange, it works for me.

What's the different numpy versions?

Mine is 1.13.3

Might be a Python version thing. I'm on Python 3, numpy 1.13.3

I'm also affected by this. numpy 1.13.0, python 3.6.1 .

Fairly certain this is a Python 2 vs Python 3 issue. Int in Python 3 are now what longs wer in Python 2 https://www.python.org/dev/peps/pep-0237/. NumPy's integers are not related to the native Python 3 int whereas they were in Python 2.
Python2
>>> from six import integer_types
>>> import numpy as np
>>> one = np.int64(1)
>>> integer_types
(<type 'int'>, <type 'long'>)
>>> isinstance(one, integer_types)
True
>>> isinstance(one, int)
True
>>> isinstance(one, long)
False

Python3
>>> from six import integer_types
>>> import numpy as np
>>> integer_types
(<class 'int'>,)
>>> one = np.int64(1)
>>> isinstance(one, integer_types)
False
>>> isinstance(one, int)
False
>>> isinstance(one, np.int_) # np.int_ is the default integer type generated by np.array(...)
True

I'll make a PR.


Implement "prependGetter"

When Java classes are consumed by Kotlin code, property access syntax is
enabled for any methods with prepended get (e.g. getFoo()). This means
that the consuming Kotlin code can access those fields like thing.foo.
Code generation with prependGetter enabled should modify any accessor
functions only to support this use.
The property is added to the ApolloExtension to be passed to the
CodeGenerationContext so that the value can be defined by users of the
library.
Closes #749

Please let me know if you would prefer me to squash everything~
Thanks for your time

Rebased and re-worded commit

any guidance on debugging the travis failure?
com.apollographql.apollo.ApolloWatcherTest > testQueryWatcherUpdated_Store_write FAILED
    java.lang.AssertionError at ApolloWatcherTest.java:169
        Caused by: java.lang.AssertionError at ApolloWatcherTest.java:169

above failure doesn't happen locally for me when i run .buildscript/integration_tests_composite.sh

Yeah, it's a well known issue with this flaky test, we need to take a look at it. Just try to build again


Update pruefungen.md

Copy and paste :)

The numbers of the different PO's are not up-to-date if I remember correctly - e.g. the Bachelor is not at PO4 anymore 🙈

In general: should we use the summary tags here?


feat: expose runner info in hooks

fix #954
Apologies for the big PR. Had to move a lot of things and type the classes appropriately to lay the ground work for exposing the runner information to the hooks. Please have a look at runner.ts as its the main file that deals with exposing them.
Took the liberty to cleanup some of the things with launching browsers and attaching/disposing context during journey runs only when necessary instead of starting/stop browsers all the time even during skipped, unmatched journeys.
Runner information is exposed on the all the hooks during journey run, The API and interface looks like this, docs will be updated to reflect this new API through separate PR.

interface RunnerInfo {
  /**
   * Processed configuration from the CLI args and the config file
   */
  readonly config: RunOptions;
  /**
   * Currently active journey
   */
  readonly journey: Journey | undefined;
  /**
   * All registerd journeys
   */
  readonly journeys: Journey[];
}

journey({ name: 'test journey', tags: ['ltag', "hello"], }, ({ page }) => {
  before(({ info }) => {
    // info.config.params
  });
  after(({ info }) => {
    // info.journey.status
    // info.journey.duration
    // info.journey.steps
  });
  step('step 1', async () => {
    await page.goto("https://example.com")
  });
});

i did some basic testing, will do more, i do have one question, we are only doing this with hook callbacks, i think it would be nice if we can do the same with step call back. what do you think?

i do have one question, we are only doing this with hook callbacks, i think it would be nice if we can do the same with step call back. what do you think?

We chatted offline. The info will be exposed also on journeys, so you can get that in step and hooks if needed. But provide the types also on hooks as its natural to do in hooks and works in beforeAll etc.

++ LGTM, spent some time comparing HB output with this PR, everything seems consistent


[zh] Sync concepts pages for policy

[zh] Umbrella issue: pages out of sync in concepts section(#26177 Misc Batch 5)

[x] content/zh/docs/concepts/policy/resource-quotas.md
[x] content/zh/docs/concepts/cluster-administration/system-metrics.md
[x] content/zh/docs/concepts/cluster-administration/flow-control.md

sync with english version in policy/pod-security-policy.md

Signed-off-by: ydFu<EMAIL_ADDRESS>

/lgtm
/approve

/lgtm
/approve

Related:
[zh] Umbrella issue: pages out of sync in concepts section(#26177 PSP)

Related:
[zh] Umbrella issue: pages out of sync in concepts section(#26177 PSP)


Mouse wheel scroll amount

It was reported in https://github.com/i-rinat/freshplayerplugin/issues/72#issuecomment-96267978 that in Firefox and freshwrapper mouse wheel scrolls (smth.) about twice as more as in Chrome. At least in thesettlersonline.ru.

@Ri0n, there was twice as many scrolling events generated. Fixed in 78caa2dbac15bf8b02686d1d8130ba7a4fe739cc. Note in PepperFlash (in Chrome) on tick moves list by three lines, while in Flash 11.2 (in Firefox) only by one line.
Scrolling of a list can be tested on this page.

thanks.
btw is it know problem freshplayer often fails on http requests? especially under load

is it know problem freshplayer often fails on http requests?

I didn't know about that. What exactly do you mean by "fails"? Is it unable to load URL or whole plugin crashes? If it crashes, does it crash instantly or does it freeze for about half a minute and crashes after that?

Ok that was just an assumption.
This all about my favorite game thesettlersonline.ru =)
On start it sends hundreds of http requests and sometimes it just stops in the middle of loading process. I guess it's because it does not receive reply to some critical request.
Sometimes I also see the game can't load some textures.
Opening firebug in Firefox usually helps with loading. I guess it's because firebug slows down network requests intercepting all traffic.
I have ~60Mbit Internet connection.

and yes, it does not resume.


Add moving selection with arrow keys

L and R will move left or right by 1 lane, U and D will move by 1 division.

Will have to take into account the relative option from #10.


Bugfix/[MM-42361] Reactions change order when original is removed

Summary
Ensures that Reaction emojis never reorder themselves, even when removing original, by storing emojiNames and reactionsByName variables as states instead of recreating them in each render. This works for the user who removes the emoji and also for other users who receive the live update.

Set emojiNames and reactionsByName as states
Create test for Reactions ordering

Ticket Link
https://github.com/mattermost/mattermost-server/issues/19859
https://mattermost.atlassian.net/browse/MM-42361
Release Note
NONE

Hello @jtdspiria,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

Thanks for your comment!
I did some optimization in getDerivedStateFromProps() and moved reactionsByName back into the render.

@jtdspiria will review this soon :) thank you

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

@M-ZubairAhmed Have you had a chance to review this yet?

/update-branch

Thank you @jtdspiria
Tested, looks good to merge.

Verified emoji reactions are no longer rearranging when original reaction is removed.
E2E report looks good, no PR related failures.

@hmhealey Do you know what this blocker means? I've seen it on few PRs today- unable to merge.

/update-branch

No, I actually don't know what it means. I can bypass it and merge the PR though

/cherry-pick cloud

Cherry pick is scheduled.


service: extract service rest api handler from daemon

Currently, the Service REST API handler is part of the daemon.
To reduce dependencies to the daemon, this commit moves the Service REST API handler into the service cell.

/test

Removed review-request for @ysksuzuki as all code review groups are already covered.


Form.Select runs outside of Field

Steps
Use Form.Select inside Form.Group
Expected Result
For Form.Select not to run outside of Field
Actual Result
Form.Select runs outside of field, even on React Semantic-UI docs page

<Form>
        <Form.Group widths='equal'>
          <Form.Input label='First name' placeholder='First name' />
          <Form.Input label='Last name' placeholder='Last name' />
          <Form.Select label='Gender' options={options} placeholder='Gender' />
        </Form.Group>
</Form>

Version
0.77.1

@davidhenley two things are going on here.
The first is that our docs should be updated so that the Dropdown component has a fluid prop applied to it. That is what's causing the dropdown to break out of the container. Once you apply fluid to Form.Select it fixes the breaking out.
The second issue is that the CSS from SUI is intended to target an <input /> as a direct child of .field instead of a div with .ui.input. When the div is present it ALSO requires the .fluid class. So adding the fluid prop to Form.Input will make these work as expected.
Our docs need to get updated to let you know that when using equal on a Form.Groupthat the components inside need to usefluid` props otherwise they will not flex to their containers properly.


[HOTFIX] Fix broken build by adding ClassTag to ChainUtils

Compiles and tests pass locally

Merging this - I'll keep an eye on Jenkins


Assigned pre.apiVersion only when versioned route used

Hi, if you look at https://github.com/p-meier/hapi-api-version/blob/master/index.js#L96, the apiVersion is assigned the the request.pre prop even if no versioned route was found. This makes it impossible to tell from within the route handler if the request was made directly to the versioned route, or if the request has been re-written by the plugin to use the versioned route. Would you accept a pull-request where the apiVersion is only assigned to the request.pre prop when the request url is re-written to use a versioned route? (move the apiVersion assignment to line 93)
Thanks, Adam.

As with your other request the answer is sadly a no. I explain why I wouldn't accept a pull request doing this...
The idea behind the default version is that you want the client to use the newest (or some specific) version of your api if not provided some version header. Also I don't want to force the client providing a version header, thus the default version.
On the handler side you are right - there is no way to determine if the client actually provided a version or if just the default version was used. Can you briefly describe the case which makes you think you need to have this information in the handler?

Hi @p-meier,
Depending on how the version was defined may impact authentication, or the (meta) data that needs to be returned as part of the request.
I have created a fork and applied the changes I require. The fork allows you to register the plugin multiple times, and if the request is made with an invalid version number the fork returns an error (I think this is a better approach. If for example, you request version 1, but that version is no longer being serviced, I would prefer to receive an explicit error than have for example version 3 attempt to process the request, and return validation errors).
FYI, according to the hapi docs use of request.pre is for route prerequisite functions, instead you should probably be assigning plugin data to request.plugins['hapi-api-version'].
Thanks for the plugin, forking your work saved me some time :)

Hi Adam,
I think this is the best way to do your own fork and work with that.
As for invalid version - if you look to the source code closely you will find that this already happens. If you provide an invalid version you get an error instead of using default version or something else.
As for the request.pre you may be rigtht. Thanks for the hint.

Hi @p-meier, just to clarify what I said about not failing for invalid versions. Your code will fail if a valid version can be extracted, but if you pass a version of 'abc' for example, the plugin will assign that request the default version. This is because in both your 'extractVersion' methods you return null if the header can not be parsed, no error is returned.


Explodes on python 3

durr@rwpscrape:/media/Storage/Scripts/crabbit/cheaders⟫ autopxd amqp.h
Traceback (most recent call last):
  File "/usr/local/bin/autopxd", line 11, in <module>
    load_entry_point('autopxd==1.1.2', 'console_scripts', 'autopxd')()
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/autopxd/__init__.py", line 358, in cli
    outfile.write(translate(infile.read(), infile.name))
  File "/usr/local/lib/python3.5/dist-packages/autopxd/__init__.py", line 348, in translate
    p.visit(parse(code, extra_cpp_args=extra_cpp_args, whitelist=whitelist))
  File "/usr/local/lib/python3.5/dist-packages/autopxd/__init__.py", line 323, in parse
    preprocessed = preprocess(code, extra_cpp_args=extra_cpp_args)
  File "/usr/local/lib/python3.5/dist-packages/autopxd/__init__.py", line 314, in preprocess
    result.append(proc.communicate(input=code.encode('utf-8'))[0])
AttributeError: 'bytes' object has no attribute 'encode'

Basically the normal python2 encoding things.
Basically, it's the issue fixed by https://github.com/tarruda/python-autopxd/pull/3

As an alternative to that PR, you can fix it easily by opening the files in ASCII mode:
@click.command()
@click.argument('infile', type=click.File('r'), default=sys.stdin)
@click.argument('outfile', type=click.File('w'), default=sys.stdout)
def cli(infile, outfile):
    outfile.write(translate(infile.read(), infile.name))

instead of

@click.command()
@click.argument('infile', type=click.File('rb'), default=sys.stdin)
@click.argument('outfile', type=click.File('wb'), default=sys.stdout)
def cli(infile, outfile):
    outfile.write(translate(infile.read(), infile.name))

Hi
I haven't merged #3  yet because it doesn't pass 3.4 test. Perhaps you want to send another PR that fixes the problem for you?


Fix calls to ci outside main

This, hopefully, fixes something that was, to put it mildly, breaking my patience since I received test failures whenever making a push to my own fork,

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.432%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
61

Relevant Lines:
74

💛  - Coveralls


one more request for a change

Hi Augustine
Could you please make SLICE_2 a variant under SLICE
(rather than a variant under CHOP) ?
THANKS. !!

This has been fixed on dev1.cs

fixed -thank you


Python erros

Hi
I tried to run python part of processing calling
python swagger_to_uml.py petstore_example/swagger.json >petstore_example/swagger.puml
and i got message like this
  "File "swagger_to_uml.py", line 376
    print(sw.uml, end='', flush=True)"

Do you have idea what I'm doing wrong ? :)
Thanks for info :-)
Best regards

Which Python version are you using? What is the error actual message (your message only indicates a file position)?

I came across the same issue on MacOSX that uses python version 2 by default. You need to make sure you are running version 3+ by default. After you get past this error you will have to install PyYaml.

@nlohmann Sorry, I didn't notice :( - I got exactly this message
  File "swagger_to_uml.py", line 376
    print(sw.uml, end='', flush=True)
                     ^
SyntaxError: invalid syntax

I use a 2.7.12 version of Python - however I upgrade Python to 3.6 version and i got the same the new error message :-)
/opt/repos/swagger_to_uml# python3.6 swagger_to_uml.py petstore_example/swagger.json >petstore_example/swagger.puml
Traceback (most recent call last):
  File "swagger_to_uml.py", line 24, in <module>
    import yaml
ModuleNotFoundError: No module named 'yaml'

I tried to install python-yaml and i got

apt-get install python-yaml
Reading package lists... Done
Building dependency tree
Reading state information... Done
python-yaml is already the newest version (3.11-3build1).
0 upgraded, 0 newly installed, 0 to remove and 138 not upgraded.

So probably i doing something wrong again :( :]

apt search python3-yaml

Note you do not need to install all packages globally. This should work:
python3 -mvenv venv
venv/bin/pip3 install yaml
venv/bin/python3 swagger_to_uml.py

@fenollp Thanks ;) for a hint :). It's alive ;).
@nlohmann I tried to call script thats way but i got a lot more of errors ;) - so I stay with @fenollp  sollution :). Thanks for a great job :). I have a fresh new sandbox for swagger conversion ;).


The JS component is not wroking

script.js has some errors and the logic is not working. Contributions are encouraged.

Issue fixed in latest commit


Document pages with all variables, mixins and functions

Document all the scss stuff that does not directly output anything by itself.

Setup the the required markdown pages

[x] mixins
[ ] functions
[ ] variables

[ ] Colors (all available colors)
[ ] Base / Elements (Kitchen sink)
[ ] Btn-reset
[ ] Icon

Utilities

[ ] Color  (border, text, background)
[ ] Padding
[ ] Position
[ ] Z-Index
[ ] Flex
[ ] Grid

Utilities typography

[ ] Font-weight
[ ] Text-size
[ ] Text-align
[ ] Text-decoration
[ ] Text-transform


Cannot upgrade to Vite 5: Conflicting peer dependency<EMAIL_ADDRESS>

Related plugins

[x] plugin-vue

[ ] plugin-vue-jsx

Describe the bug

I run npx ncu -u and some packages are upgraded:

 @vitejs/plugin-vue   ^4.5.2  →   ^5.0.2
 laravel-vite-plugin  ^0.8.1  →   ^1.0.1
 vite                 ^4.5.1  →  ^5.0.10
 vite-plugin-vuetify  ^1.0.2  →   ^2.0.1

Then I run npm install and I get this error:

npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: undefined@undefined
npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/@vitejs/plugin-vue
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Conflicting peer dependency<EMAIL_ADDRESS>npm ERR! node_modules/vite
npm ERR!   peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR!   node_modules/@vitejs/plugin-vue
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR!

What I expect is an upgrade to Vite 5 with no errors

Reproduction
https://stackblitz.com/edit/vitejs-vite-i9kve7?file=package.json
Steps to reproduce
Run npx ncu -u followed by npm install
System Info
System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 18.18.0 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 9.4.2 - /usr/local/bin/npm
    pnpm: 8.10.5 - /usr/local/bin/pnpm
  npmPackages:
    @vitejs/plugin-vue: ^4.5.2 => 4.6.2
    vite: ^4.5.1 => 4.5.1

Used Package Manager
npm
Logs
devDependencies and dependencies before running npx ncu -u are these:
{
  "devDependencies": {
    "@mdi/font": "^7.4.47",
    "@playwright/test": "^1.40.1",
    "@types/node": "^20.10.6",
    "@typescript-eslint/eslint-plugin": "^6.17.0",
    "@typescript-eslint/parser": "^6.17.0",
    "@vue-macros/volar": "^0.18.8",
    "autoprefixer": "^10.4.16",
    "axios": "^1.6.3",
    "chrono-node": "^2.7.4",
    "eslint": "^8.56.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-json": "^3.1.0",
    "eslint-plugin-markdown": "^3.0.1",
    "eslint-plugin-vue": "^9.19.2",
    "laravel-vite-plugin": "^0.8.1",
    "lodash": "^4.17.21",
    "mariadb": "^3.2.3",
    "material-design-icons-iconfont": "^6.7.0",
    "npm-check-updates": "^16.14.12",
    "postcss": "^8.4.32",
    "postcss-cli": "^11.0.0",
    "postcss-import": "^16.0.0",
    "prettier": "^3.1.1",
    "sass": "^1.69.7",
    "typescript": "^5.3.3",
    "unplugin-vue-define-options": "^1.4.1",
    "vite": "^4.5.1",
    "vue-eslint-parser": "^9.3.2"
  },
  "dependencies": {
    "@inertiajs/vue3": "^1.0.14",
    "@mdi/svg": "^7.4.47",
    "@vitejs/plugin-vue": "^4.5.2",
    "@vueuse/components": "^10.7.1",
    "@vueuse/core": "^10.7.1",
    "alpinejs": "^3.13.3",
    "cli": "^1.0.1",
    "date-fns": "^3.0.6",
    "dotenv": "^16.3.1",
    "flowbite": "^2.2.1",
    "highlight.js": "^11.9.0",
    "vite-plugin-vuetify": "^1.0.2",
    "vue-i18n": "^9.8.0",
    "vuetify": "^3.4.9"
  }
}

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] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[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.

I have the same problem, newest package versions conflict with each other -.-
any fix for this?

I tried to install newest packages again today.
The problem is still there.
The error is now:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: undefined@undefined
npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/@vitejs/plugin-vue
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Conflicting peer dependency<EMAIL_ADDRESS>npm ERR! node_modules/vite
npm ERR!   peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR!   node_modules/@vitejs/plugin-vue
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See /home/haaiee/.npm/eresolve-report.txt for a full report.

This is a bug in npm (https://github.com/npm/cli/issues/3782). Using --force would work for now.

Less scary than a blanket --force I was able to get around this blocker by running two separate commands
npm install vite
npm install

This was inspired by reading above mentioned npm bug. Thank you.

The solutions above didn't work for me (probably because I don't know frontend as well as I'd like).
I've been doing npm install --legacy-peer-deps

vitejs/plugin-vue and vite should have matching versions, otherwise use npm install --legacy-peer-deps


UITableViewCell can't calculate a dynamic size for JSONPreview subview

Is there a way to calculate the size of the JSONPreview so that we can have dynamic sizes inside UITableViewCells?
Also, is there a way to disable the line number column?

Is there a way to calculate the size of the JSONPreview so that we can have dynamic sizes inside UITableViewCells?

Perhaps you could get the full height in the preview(_: style: completion:) callback via the jsonTextView.contentSize property. Then refresh your UITableView view to use the latest height value.

Also, is there a way to disable the line number column?

Unfortunately, there is no way to do this at the moment. If you need it, I think I can add it subsequently and the feature should be easy to implement.

Version 2.1.0 will provide the function of hiding line numbers. I will close this issue after it is released

2.1.0 has been officially released, providing the function of hiding row numbers and providing a reference demo for use in UITableView.


docs: Fix formatting typo.

Automated message from Dropbox CLA bot
@YagoGG, it looks like you've already signed the Dropbox CLA. Thanks!

Merged, thanks @YagoGG!


try out testscript

An initial attempt to add an integration test to the dealbot.

Closing in favour of https://github.com/filecoin-project/dealbot/pull/38


Component pollutes global styles

Using the player in my site, I noticed that it pollutes the styles of the whole page. E.g. it set's styles for .btn, setting the width to 14px so now all buttons on my site want to be only 14px wide.

will go through the entire code and address this

Prefixed the class name for a quick fix. The update was pushed out earlier. Closing this issue :)
Thanks for your feedback @gregbacchus


Get request  in error callback - 3.x

I try to implement following behaviour:

User visit a page route which required authentification/valid token.
user have no valid token so error callback jumps in
I redirect the user to the login form
(At this point I would like to get the URL the user tries to access and store it via a flash message for example )
return $response->withRedirect($container->get("router")->pathFor("login"), 301);
User logs in
I see that the user tried to access an another page (from the flash message) and redirect him to the path

The problem is that I can't access the Request from the error callback and the before callback is only called when a token can be found and decoded.
Any suggestions how this can be achieved?

Good question. This seems to be one use case I did no think about. Kludgish way would be to store the current url in another middleware for the error callback. Better way would probably be if I added the current url to the $arguments array.
$app->add(new Tuupola\Middleware\JwtAuthentication([
    "secret" => "supersecretkeyyoushouldnotcommittogithub",
    "error" => function ($response, $arguments) {
        $url = $arguments["url"];  // Do something with the url
        $data["status"] = "error";
        $data["message"] = $arguments["message"];
        return $response
            ->withHeader("Content-Type", "application/json")
            ->write(json_encode($data, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT));
    }
]));

Ideally the request should be added to the error callback. There seems to be no reason why it shouldn't and the code seems to be working fine if I hack the change in.

I too would love to see the Request available in the error callback 👍

Changing the error handler signature would be a BC break. Putting $request back there as it was would require major version bump. It is my plan in near future, but in the meanwhile would #155 an acceptable workaround?

I think this is OK until 4.0

I was about to post the same issue, but will leave a +1 for this instead.
My use case is different, as I don't need the URL, but the accept-header from the request - to correctly format an API-response (JSON / XML).
I can easily come up with a workaround (#155 doesn't solve my issue), but I feel like the "correct" way would be to have the request available. There are probably many other scenarios.


User Containers: Ensure linux capabilities are set for MPI workers

We discovered that HPE's internal systems have more built in k8s capabilities than those on LLNL's hetchy:

It seems that the security settings for running on hetchy are more strict than those in the test environment used at HPE.  We found that we needed to add the following security context to the demo worker container in order for ssh (and mpirun) to successfully connect to the worker:

                securityContext:
                  allowPrivilegeEscalation: true
                  capabilities:
                    add:
                    - NET_BIND_SERVICE
                    - SYS_CHROOT
                    - AUDIT_WRITE

nnf-sos should be updated to ensure these capabilities are added to the user container's workflow. Flux/users shouldn't need to define these themselves.
Not having this in the worker's podSpec was preventing the MPI launcher container from being able to ssh to the MPI worker container on hetchy. We haven't seen this issue on HPE systems.

This has been fixed via https://github.com/NearNodeFlash/nnf-sos/pull/209. The workaround in the nnf-container-example should no longer be needed.


divide class not work

1
2
3

divide is work on unocss.antfu.me, but not work on my local demo(vite with unocss)

I have a similar problem (using unocss with vite) divide class is not working as expected, I'm using latest unocss version
you can check it out here:
user: animal
pwd: efficient
https://steadfast-spiral.localsite.io/


feat(CI): add ismp feature to CI, and choosing runtime for release

Related: #270
Note: 270 is the base branch. Please only review:

.github/workflows/ci.yml
.github/workflows/release.yml

No other files changed.
Updates the CI to also  build the runtimes with --features ismp enabled. It also modifies the release CI to only build one selected runtime or the runtime for a release (see below). If the runtime is devnet, it will build the node with --features ismp.
This means the release CI will now only build ONE runtime. Considering this is for releases, I do not see a reason we would need to build several runtimes. A testnet and mainnet release should be distinct. There is no reason to have a devnet release.

Build Runtime on Release
When a release is published, the CI will build that specific runtime only. This requires that the release name abides by a specific format. This format requires the runtime name as the prefix:
<runtime_name_prefix>-<*can be whatever>
// testnet-v0.1.0
// devnet-v0.1.0
// mainnet-v0.1.0

The CI's running can be confirmed here:
release.yml

Devnet release: https://github.com/peterwht/pop-node/releases/tag/devnet-v01-CI-Test
Automatic CI run: https://github.com/peterwht/pop-node/actions/runs/10802403850
Manual dispatch: https://github.com/peterwht/pop-node/actions/runs/10803352479

ci.yml

https://github.com/peterwht/pop-node/actions/runs/10802399442

[sc-1326]

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 10.47%. Comparing base (6cd981e) to head (264b45c).

@@                 Coverage Diff                  @@
##           peter/feat-add-ismp     #276   +/-   ##
====================================================
  Coverage                10.47%   10.47%
====================================================
  Files                       35       35
  Lines                     2615     2615
  Branches                  2615     2615
====================================================
  Hits                       274      274
  Misses                    2339     2339
  Partials                     2        2


fix scanner

A scanner's last error should always be checked. This ensures a proper scan completes successfully.
Closing the original PR: https://github.com/Azure/azure-sdk-for-go/pull/3118 per @jhendrixMSFT in favor of this PR which is based off of the latest branch.

Can one of the admins verify this patch?


[SPARK-45470][SQL] Avoid paste string value of hive orc compression kind

What changes were proposed in this pull request?
Currently, Hive supports ORC format with some compression codec( Please refer ql/src/java/org/apache/hadoop/hive/ql/io/orc/CompressionKind.java).
Spark pasted many string literal of these compression codec. It is easy to make mistakes and reduce development efficiency.
Why are the changes needed?
Avoid paste string value of hive orc compression kind
Does this PR introduce any user-facing change?
'No'.
Just update inner implementation.
How was this patch tested?
Exists test cases.
Was this patch authored or co-authored using generative AI tooling?
'No'.

Ur, very sorry, but I'd not do this ORC change when we do the samething still for Parquet , @beliefer . This only increases the compile depdency for org.apache.hadoop.hive.ql.io.orc.CompressionKind. We prefer the existing loose-coupled way.

All the change in the hive module already depends on hive-exec.

Just a question, is this required for SPARK-44114? Or, simply want to remove the magic strings?

Just a question, is this required for SPARK-44114? Or, simply want to remove the magic strings?

I investigated the source code of Hive-2 and Hive-3, the supported orc compression kind not changed.

Got it. Are we going to do the same clean-up for the other data sources like Parquet? Or Avro in avro module?

Got it. Are we going to do the same clean-up for the other data sources like Parquet? Or Avro in avro module?

Yes. I will do it.

Merged to master for Apache Spark 4.0.0~

@dongjoon-hyun @LuciferYang @MaxGekk Thank you!


Add IP support to ProxyUserACL

ProxyUserACL only allowed creating squid rules based on groups and users. This Pull Request simply adds a new type of ACL where you can instead create rules based on IP addresses. The previous features, except the views, remains unchanged.

I have now completely redesigned the plugin. You can set compound conditions. These ACLs can be used not only for black/white lists, but also for restricting SSL Bump and for restricting ICAP processing.

This is a great feature!!
+1

@kekek2 what is your update ETA? @machadovilaca did good work here so we need a joint way forward as it looks like the PR clashes with your plans.

https://github.com/opnsense/plugins/pull/754

@fichtner and @kekek2, is there anything I can do to speed up the approval and merge of this PR?

I will support my own version of the plugin.

Hi,
May I know if there is any pending works to be done for this to get merged.
Thanks

Hi @pksadiq, everything ready as far as I know.

@pksadiq I think this can get merged, right?

Please merge it. It's needed feature for business FW.

@kekek2 Please look at it. 👍

@machadovilaca So I compiled and tested (OPNsense 19.1.9-amd64) your plugin from your git branch and found these bugs:

Adding new rule UI is broken. If you select Type: IP, textbox IP/Subnet is not shown. Workaround is fill IP address into Group or User Name field and Save.

After refresh (CTRL+F5) in web browser, you can go back to edit Rule and textbox IP/Subnet is visible now.

After setting up rule and Apply, no new ACLs are generated in /usr/local/etc/squid/squid.conf - plugin is not working at all. Testing Rule is like this:

When user fill Rule Priority > 0, no (empty string) priority is Saved.

@pkejval I'll work on it asap

the plugin doesn't seem to have an active maintainer, closing this PR. Eventually we're considering removing it.


Could not find matching dataclasses when pip installing in editable mode

Currently working on another PR, and I try to install Gooey in a Python 3.9 venv using pip install -e ..
I get the following error message from pip:
ERROR: Could not find a version that satisfies the requirement dataclasses>=0.8 (from gooey) (from versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6)
ERROR: No matching distribution found for dataclasses>=0.8

I believe a marker should be added to the dataclasses dependency so that it is installed only on Python < 3.7, as it's included in the stdlib since Python 3.7.
-    'dataclasses>=0.8',
+    'dataclasses>=0.8; python_version < "3.7"',

Oh, whoa -- TIL about pip's editable mode! I've been manually sym linking like a sucker.
I've patched setup.py with your suggestin on 1.2.1-release


Take a tutorial link not working?

📖 Documentation
https://gcanti.github.io/fp-ts/basics/
The link for taking a tutorial is not working. Or has it changed to some where else?

@zifahm old link (it was just a placeholder), thanks for reporting

The url https://gcanti.github.io/fp-ts/basics/ in the readme is  still 404ing****

@damiangreen that link does not exist - as you can see in the linked diff 30b35c4 the one that links to the beginning of the introduction is https://gcanti.github.io/fp-ts/introduction/core-concepts


Trying to implement a plugin for checkboxes

Hello everyone,
I'm working on a plugin to render checkboxes as in https://help.github.com/es/github/managing-your-work-on-github/about-task-lists which are immensely useful and although not being part of the original MD specification, they are part of the Github MD.
My code is as following (based on the example you have given a few hours back):
import re

__all__ = ['plugin_checkbox']

CHECKBOX_PATTERN = (
    r'^-[ ]\[([ xX])\][ ]?([^\n]*)'
)

def parse_checkbox(self, m, state):
    check = m.group(1)
    text = m.group(2)
    if check.upper()=='X':
        return 'checkbox', text, True
    else:
        return 'checkbox', text, False

# define how to render HTML
def render_html_checkbox(text, state):
    if state==False:
        status=""
    else:
        status=" checked"
    return f'<input type="checkbox"{status}>{text}'

def plugin_checkbox(md):
    md.inline.register_rule('checkbox', CHECKBOX_PATTERN, parse_checkbox)
    md.inline.rules.append('checkbox')
    if md.renderer.NAME == 'html':
        md.renderer.register('checkbox', render_html_checkbox)

But whenever I try to hook up my plugin I get the following error:
NameError: name 'plugin_checkbox' is not defined
What am I doing wrong?
Regards

Mistune has built-in task lists plugin now. Check out https://github.com/lepture/mistune/blob/master/mistune/plugins/task_lists.py
It will be released in next release.

Here is the documentation: https://mistune.readthedocs.io/en/latest/plugins.html#task-lists


SD Card does not mount on v1.8.2 (pixhawk 4)

Describe the bug
The SD card does not mount on a Pixhawk 4. Unable to determine if this is a software issue or hardware.
To Reproduce
Steps to reproduce the behavior:

Upload v1.8.2 stock firmware on pixhawk 4
power cycle autopilot with the stock 4GB SD card
Connect Qground control
See if SD card is mounted using the mount command on nsh. Only /etc and /proc is mounted. /fs/microsd is not mounted
Trying to mount the SD card using mount -t vfat /dev/mmcsd0 /mnt/fs crashes pixhawk

Expected behavior
The SD card should be mounted. mount command on NSH should return the /fs/microsd as a mounted directory.
Alternatively, if this is a hardware problem with the pixhawk 4, there needs to be a way to identify and isolate this. Verified that the SD card works with a different pixhawk 4.
Log Files and Screenshots
No log files are available since SD card can
Add screenshots to help explain your problem.
Drone (please complete the following information):
Not mounted on a drone yet
Alternative approaches tried to debug the issue:

Uploaded master and beta branches to pixhawk 4. This however prevented the pixhawk from booting up.

Can you try with a different SD card?
That said, attempting to mount should never crash the flight controller.

I did try with a different card. Same effect.

Uploaded master and beta branches to pixhawk 4. This however prevented the pixhawk from booting up.

Which version of master was this. Can you try again and paste the git hash here?

Uploaded master and beta branches to pixhawk 4. This however prevented the pixhawk from booting up.

Which version of master was this. Can you try again and paste the git hash here?

This one .
commit c0a1f5b72f99ae0170f3cfde03ddbdb25a8c1c68
Author: baumanta<EMAIL_ADDRESS>Date:   Wed Apr 17 19:20:29 2019 +0200
Collision prevention improvements (#11866)

* match max vel in col-prev to regular pos ctrl
* change warning criterium to avoid float error
* disable push back from obstacles
* use floats consistently

Hi, anyone able to take a look at this ?

How is the SD card formatted that you are trying to use?

It is fat32 formatted. I've tried other sd cards with fat32 formatting

Sounds like faulty hardware, not sure what to do about it. If you have a Dronecode debug probe (or something similar) you could get the startup output.
https://dev.px4.io/en/debug/system_console.html

@julianoes : We found a way to get the debug probe and attaching the files here.
A snapshot of the comparison of the debug probe:
Left: Debug probe without SD card. Right: Debug probe with SD card

DebugProbeWithSDCard.txt
DebugProbeWithoutSDCard.txt

@echoGee - I would try curren master. If it does not run, and does not boot the px4io, nor mounts the SD card, I would say it is a HW problem and you should contact Holybro.

@davids5 I tried with master. Same problem. I've tried contacting Holybro. Yet to hear from them.

I have asked them to give you a hand on Slack. You should get a response from them here

@echoGee
please send email to<EMAIL_ADDRESS>with invoice

@julianoes : We found a way to get the debug probe and attaching the files here.
A snapshot of the comparison of the debug probe:
Left: Debug probe without SD card. Right: Debug probe with SD card

DebugProbeWithSDCard.txt
DebugProbeWithoutSDCard.txt

Please write to<EMAIL_ADDRESS>our tech team will help you. Thanks!


updating links

Hi narinearraul,
Thanks for submitting this pull request!
Please add a comment with a DCO1.1 Signed-off-by statement in order to allow us to process your pull request.
dco-bot


Make use of StaticString

For issue #237

Hey, thank you for opening the PR, @Scvairy.
Can you please elaborate a bit more on the advantages of using StaticString in this case? I wonder if the benefits still hold after conversion back to String.
I haven't used this type before, but it seems like a good candidate in the case of #file and #function. On the other hand, if the users want to override the default values, wouldn't StaticString be a bit more limiting?

I'm going to close it for now. I'd be happy to merge if the rationale is provided for the change that would justify a breaking change in the public API.


Updating docs for new functional API

README Rendered
Additionally cleaned up imports.

@rwjblue ready when you are!


Local pull request success status testing

Docs Build status updates of commit 179afee:
:clock10: Pending: waiting for processors (12 builds ahead of you)
:warning: Docs Build is busy, currently there are 12 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 179afee:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_DocsBranch_Dynamic/index.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


[Help] Reference configuration to use modsecurity with nginx

Currently a have nginx (swag) running in docker.
What would be the best way to add modsecurity to it?
Does modsecurity-crs-docker container has everything required? or it's just an extension of modsecurity?
I'm trying to understand how to do it and the architecture something like.
internet --> modsecurity-crs-docker --> nginx --> app1, app2, app3
Can modsecurity-crs-docker work in parallel and still block? like
            modsecurity-crs-docker
               |
internet --> nginx ------> app1, app2, app3

And who the configuration should be in modsecurity-crs-docker to be linked with nginx
Any example, particularly in docker compose would be welcome.

The modsecurity-crs-docker container is based on an NGINX image. It compiles and installs ModSecurity and adds the OWASP Core Rule Set. See here: https://github.com/coreruleset/modsecurity-crs-docker/blob/master/nginx/Dockerfile
I think the easiest way is to add the modsecurity-crs-docker container in front of your container. And then to set your container as BACKEND variable.
An example docker-compose.yml can be found here:
https://github.com/coreruleset/coreruleset/blob/v4.0/dev/tests/docker-compose.yml.
The modsecurity-crs-docker container can't be run in parallel.


we need to keep 3.8.x part of the build matrix

I'm not sure if we really need such big matrix for testing. All build can increase build times.
By the way we don't have a policy which versions of which component  we maintain and how testing matrix should look

So why this has been upgraded to 3.9.0 if we don't have a policy?

simply we have new version so we update to the latest.
I not say that this change is incorrect - only I'm thinking about impact of it


SPI fix DMA rxbuf size calculation (IDFGH-8793)

(x+31)/8 doesn't round to 4 bytes (32 bits), e.g. (16+31)/8=47/8=5,
where ((x+31)/32)*4 does round to 4 bytes: (16+31)/32=(47/32)4=14=4

Thanks for your contribution.

merged in the 36fcb4b3a18810325335433603c7b37f8fff9a2e


OZW Admin UnknownSocketError

I have a strange issue where I cannot connect to the OZW Admin via embedded QT, TightVNC, or the OpenZwave desktop app.  I have a fresh HassOS 4.11 install on a Raspberry Pi 4 B.  Barely any add-ons and integrations (Check Config, File Editor, Samba, and Terminal).  I am using the official Mosquito Broker 5.1 add-on and integration and the OpenZWave add-on is 0.5.2.  I have uninstalled and installed Mosquito and OpenZwave multiple times with reboots and configs seem correct.  Everytime I try and start the OWZdaemon on 1983 in any interface, I get a progress dialog of ConnectingState of 0% that hangs and a UnknownSocketError in the log.
When I connect via embedded QT client, this is the OpenZWave log:
20200722 10:21:26.374 CDT] [ozw.library] [debug]: Detail - Node: 255 Removing current message
<IP_ADDRESS> - - [22/Jul/2020 10:22:14] <IP_ADDRESS>: Plain non-SSL (ws://) WebSocket connection
<IP_ADDRESS> - - [22/Jul/2020 10:22:14] <IP_ADDRESS>: Path: '/websockify'
<IP_ADDRESS> - - [22/Jul/2020 10:22:14] connecting to: <IP_ADDRESS>:5900
[20200722 10:22:25.181 CDT] [ozwadmin] [debug]: Doing Remote Connection: QUrl("ws://localhost:1983")
[20200722 10:22:25.185 CDT] [ozw.options] [debug]: Nothing to do till we connect
[20200722 10:22:25.197 CDT] [ozw.manager] [debug]: Attempting Connection to  QUrl("ws://localhost:1983")
[20200722 10:22:25.197 CDT] [ozw.manager] [info]: WebSocket Client State Changed:  QAbstractSocket::ConnectingState
[20200722 10:22:25.197 CDT] [ozwadmin] [debug]: Remote Connection Status:  QTOZWManager::ConnectingState QAbstractSocket::UnknownSocketError
[20200722 10:22:25.197 CDT] [ozwadmin] [debug]: QTOZWManager::ConnectingState QAbstractSocket::UnknownSocketError
[10:22:33] INFO: Starting ozw-admin...
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
ozwadmin: Settings Path is at  "/root/.config/OpenZWave/ozw-admin.conf"
ozwadmin: Checking  "/data/ozw/config"  for manufacturer_specific.xml
ozwadmin: Checking  "/data/ozw/config"  for options.xml
ozwadmin: DBPath:  "/data/ozw/config/"
ozwadmin: userPath:  "/data/ozw/config/"
ozwadmin: Settings Path:  "/root/.config/OpenZWave/ozw-admin.conf"
ozwadmin: Using Saved Network Cache Size: 1000
QT_MESSAGE_PATTERN: %{backtrace} is not supported by this Qt build
[20200722 10:22:34.258 CDT] [ozwadmin] [info]: OZWCore Initilized QTOpenZwave(0x7fb66fd1e0) QTOZWManager(0x55860f5280)
[20200722 10:22:34.320 CDT] [default] [warning]: QVncServer created on port 5900
1595431372: Client qt-openzwave-1 has exceeded timeout, disconnecting.

When I connect via desktop TightVNC Client, this is the OpenZWave log:
[20200722 10:24:12.854 CDT] [ozwadmin] [debug]: Doing Remote Connection: QUrl("ws://localhost:1983")
[20200722 10:24:12.859 CDT] [ozw.options] [debug]: Nothing to do till we connect
[20200722 10:24:12.870 CDT] [ozw.manager] [debug]: Attempting Connection to  QUrl("ws://localhost:1983")
[20200722 10:24:12.870 CDT] [ozw.manager] [info]: WebSocket Client State Changed:  QAbstractSocket::ConnectingState
[20200722 10:24:12.870 CDT] [ozwadmin] [debug]: Remote Connection Status:  QTOZWManager::ConnectingState QAbstractSocket::UnknownSocketError
[20200722 10:24:12.870 CDT] [ozwadmin] [debug]: QTOZWManager::ConnectingState QAbstractSocket::UnknownSocketError

I can connect to other ports with SSH and MQTT Explorer ,so I am not sure why I am getting UnknownSocketError specifically on port 1983.  Any ideas on what I am missing here?   What's staring me in the face that I can't see?  Thanks in advance for taking time to look at this.

I also am having this issue. I tried even exposing port 1983 and connecting with ozw-admin from a remote machine and see the same UnknownSocketError in the logs.  Hardware is also a fresh hassOS 64 bit image install on a rpi 4.

Thanks! I will give it a try tonight and see if that is the issue.  You also gave me a couple  more ideas to test.

OK my issue was in my OpenZWave config where I specified the USB Path as device: /dev/ttyACM0.  All documentation I found for ZWave Sticks was to use this path in the config.  However I am using a Nortek USB ZWave & ZigBee Adapter (HUSBZB-1).  This actually creates two more USB Serial Port adapters /dev/ttyUSB0 and /dev/ttyUSB1 .  So it seems that /dev/ttyUSB0 is the Zwave adapter and /dev/ttyUSB1 is the ZigBee adapter.  So I used /dev/ttyUSB0 in my OpenZWave config and all is good.  Thanks for the inspiration @TonyRoomZ to get me here :)