Emqtt 2.3.1 crash error during pub message with reason "no try clause matching ok in emqttd_client"

Environment

OS: docker alpine:3.5
Erlang/OTP: default installed from emq-docker Dockerfile
EMQ: 2.3.1

Description
We're trying to test the release 2.3.1 using a docker container based on Dockerfile and start.sh taken from official repo https://github.com/emqtt/emq-docker
Sending a simple message from command line

mosquitto_pub -t "topic/path" -m "my message" -h <IP_ADDRESS> -p 1883

cause a crash log into Emqtt:

11:48:51.226 [error] gen_server <0.1542.0> terminated with reason: no try clause matching ok in emqttd_client:'-send_fun/2-fun-2-'/4 line 142
11:48:51.226 [error] CRASH REPORT Process <0.1542.0> with 0 neighbours exited with reason: no try clause matching ok in emqttd_client:'-send_fun/2-fun-2-'/4 line 142 in gen_server2:terminate/3 line 1157
11:48:51.227 [error] Supervisor 'esockd_connection_sup - <0.1392.0>' had child connection started with emqttd_client:start_link([{max_publish_rate,0},{client_idle_timeout,30000},{client_enable_stats,false},{max_clientid_len,...},...]) at <0.1542.0> exit with reason no try clause matching ok in emqttd_client:'-send_fun/2-fun-2-'/4 line 142 in context connection_crashed

and the client fails with output

Error: The connection was lost.

This is the complete crash log from log/crash.log file:

=ERROR REPORT====
Generic server <0.1537.0> terminating Last message in was {inet_async,#Port<0.1453>,153,{ok,<<16,35,0,6,77,81,73,115,100,112,3,2,0,60,0,21,109,111,115,113,112,117,98,47,50,55,57,50,55,45,115,99,105,109,109,105,97>>}}
When Server state == {client_state,{esockd_connection,[#Port<0.1453>,#Fun<esockd_transport.2.50479399>,[]]},{{172,17,0,1},44584},running,true,undefined,65536,{none,65536},{proto_state,{{172,17,0,1},44584},#Fun<emqttd_client.0.83186262>,false,undefined,<0.1537.0>,undefined,undefined,undefined,undefined,false,undefined,undefined,1.25,1024,undefined,{proto_stats,false,0,0,0,0},undefined,undefined,undefined,undefined},undefined,false,30000,171} Reason for termination ==
** {{try_clause,ok},[{emqttd_client,'-send_fun/2-fun-2-',4,[{file,"src/emqttd_client.erl"},{line,142}]},{emqttd_protocol,send,2,[{file,"src/emqttd_protocol.erl"},{line,348}]},{emqttd_protocol,process,2,[{file,"src/emqttd_protocol.erl"},{line,228}]},{emqttd_client,received,2,[{file,"src/emqttd_client.erl"},{line,322}]},{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1046}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}
=CRASH REPORT====
crasher:
initial call: emqttd_client:init/1
pid: <0.1537.0>
registered_name: []
exception exit: {{{try_clause,ok},[{emqttd_client,'-send_fun/2-fun-2-',4,[{file,"src/emqttd_client.erl"},{line,142}]},{emqttd_protocol,send,2,[{file,"src/emqttd_protocol.erl"},{line,348}]},{emqttd_protocol,process,2,[{file,"src/emqttd_protocol.erl"},{line,228}]},{emqttd_client,received,2,[{file,"src/emqttd_client.erl"},{line,322}]},{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1046}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]},[{gen_server2,terminate,3,[{file,"src/gen_server2.erl"},{line,1157}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}
ancestors: [<0.1392.0>,<0.1391.0>,esockd_sup,<0.1146.0>]
messages: [{keepalive,start,75},emit_stats,{inet_reply,#Port<0.1453>,ok},{inet_async,#Port<0.1453>,154,{error,closed}}]
links: [<0.1392.0>,<0.1538.0>]
dictionary: [{rand_seed,{#{max =><PHONE_NUMBER>51711743,next => #Fun<rand.8.41921595>,type => exsplus,uniform => #Fun<rand.9.41921595>,uniform_n => #Fun<rand.10.41921595>},[272688887393991216|231698297063294985]}},{guid,{1512646667178503,130326487631361,0}}]
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 999
neighbours:
=SUPERVISOR REPORT====
Supervisor: 'esockd_connection_sup - <0.1392.0>'
Context: connection_crashed
Reason: {{try_clause,ok},[{emqttd_client,'-send_fun/2-fun-2-',4,[{file,"src/emqttd_client.erl"},{line,142}]},{emqttd_protocol,send,2,[{file,"src/emqttd_protocol.erl"},{line,348}]},{emqttd_protocol,process,2,[{file,"src/emqttd_protocol.erl"},{line,228}]},{emqttd_client,received,2,[{file,"src/emqttd_client.erl"},{line,322}]},{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1046}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}
Offender: [{pid,<0.1537.0>},{name,connection},{mfargs,{emqttd_client,start_link,[[{max_publish_rate,0},{client_idle_timeout,30000},{client_enable_stats,false},{max_clientid_len,1024},{max_packet_size,65536},{keepalive_backoff,1.25}]]}}]

Emqttd uses default configuration, but I don't understand if this crash is related to an authentication problem or if .
I start the container with this command

docker run --rm -p 1883:1883 -p 18083:18083 local/alpine-emqtt:2.3.1

and this is the first output during startup

listener.ssl.external.acceptors=32
node.max_ets_tables=2097152
node.process_limit=2097152
listener.ws.external.acceptors=16
<EMAIL_ADDRESS>listener.tcp.external.max_clients=1000000
listener.ssl.external.max_clients=500000
node.max_ports=1048576
listener.tcp.external.acceptors=64
log.console=console
listener.ws.external.max_clients=250000
name=72763087aec1
Node<EMAIL_ADDRESS>not responding to pings.
['2017-12-07T11:48:40Z']:waiting emqttd
Node<EMAIL_ADDRESS>not responding to pings.
Exec: /opt/emqttd/erts-8.1/bin/erlexec -noshell -noinput +Bd -boot /opt/emqttd/releases/2.3.1/emqttd -mode embedded -boot_var ERTS_LIB_DIR /opt/emqttd/erts-8.1/../lib -mnesia dir<EMAIL_ADDRESS>-config /opt/emqttd/data/configs/app.2<IP_ADDRESS>.48.39.config -args_file /opt/emqttd/data/configs/vm.2<IP_ADDRESS>.48.39.args -vm_args /opt/emqttd/data/configs/vm.2<IP_ADDRESS>.48.39.args -- foreground
Root: /opt/emqttd
starting emqttd on node<EMAIL_ADDRESS>emqttd ctl is starting...[ok]
emqttd hook is starting...[ok]
emqttd router is starting...[ok]
emqttd pubsub is starting...[ok]
emqttd stats is starting...[ok]
emqttd metrics is starting...[ok]
emqttd pooler is starting...[ok]
emqttd trace is starting...[ok]
emqttd client manager is starting...[ok]
emqttd session manager is starting...[ok]
emqttd session supervisor is starting...[ok]
emqttd wsclient supervisor is starting...[ok]
emqttd broker is starting...[ok]
emqttd alarm is starting...[ok]
emqttd mod supervisor is starting...[ok]
emqttd bridge supervisor is starting...[ok]
emqttd access control is starting...[ok]
emqttd system monitor is starting...[ok]
emqttd 2.3.1 is running now
['2017-12-07T11:48:41Z']:waiting emqttd
['2017-12-07T11:48:42Z']:emqttd start
Load emq_mod_presence module successfully.
dashboard:http listen on <IP_ADDRESS>:18083 with 2 acceptors.
mqtt:tcp listen on <IP_ADDRESS>:11883 with 16 acceptors.
mqtt:tcp listen on <IP_ADDRESS>:1883 with 64 acceptors.
mqtt:ws listen on <IP_ADDRESS>:8083 with 16 acceptors.
mqtt:ssl listen on <IP_ADDRESS>:8883 with 32 acceptors.
mqtt:wss listen on <IP_ADDRESS>:8084 with 4 acceptors.
mqtt:api listen on <IP_ADDRESS>:8080 with 4 acceptors.

@totojack Please build from the master branch. We add a [nosuspend] option for esockd_transport:async_send/2 function, unfortunately the API is not compatible with EMQ 2.3.1 now.

After this crash, and an automatic restart of emqtt, the authorization plugin is not started or enabled, so no clients can connect anymore.
Is this related or another issue?

@emqplus How to fix this bug in v2.3.1 temporary. Thank you.

I can confirm the issue.
If I use esockd v4.2 it looks working.
Please, could you pin esockd version for stable release?

@hachreak The esockd v5.1 improved the esockd_transport:asynd_send/2 function, and unfortunately the upgrade is incompatible with v4.x.
Please clone the latest master branch if you build EMQ from source. We pined the esockd version to fix the issue:
dep_esockd       = git https://github.com/emqtt/esockd v5.1


Add some standard trait derives

These have been needed for implementing SPIR-V shader reflection for a vulkan backend in gfx

@Aatch ping!


Chinese files renamed to -zh.md instead of .zh.md

Changes

🧹 Renamed Chinese translation files to follow the project's filename pattern;

Release Note

Any file named, for instance, README.zh-cn.md, or README.zn.md , is now README-zn.md.
References are also updated to the new filename

Associated with issue #24 & related with PR #36

@salaboy I am not sure how to deal with this PR - I noticed that, since the branch was created from the one used on the PR #36, it brings more commits than it should.
I want to invest time moving forward with the chapters review, so I hope, if it won't cause you too much problems, that you can accept the PR  this time.  I'll make sure to avoid the mistake of sending other PRs with  unrelated commits.


725: always produce entity forms with the offline entities spec version

Closes #725
Why is this the best possible solution? Were any other approaches considered?

Removed the older create/update spec versions which are now unused.
Although it looks a bit useless now, the "entity_features" code in xls2json.py and survey.py was retained since it seems likely that this will be needed in the near future as the entities spec evolves.
Incorporated the previous opt-in test expectations for create/update entities into the respective "basic building blocks" tests.

What are the regression risks?

Pyxform will only emit entities version 2024.1.0 so if these are provided to an older version of Central (or another spec-compliant server) then they will be rejected.
The offline column is now undefined for the entities sheet, so like other undefined columns it will now raise an error. Any forms that added the offline opt-in column will now need to remove it during their next form version update.

Does this change require updates to documentation? If so, please file an issue here and include the link below.
Filed an issue to add the proposed offline version description to the spec: https://github.com/getodk/xforms-spec/issues/319
Before submitting this PR, please make sure you have:

[x] included test cases for core behavior and edge cases in tests
[x] run python -m unittest and verified all tests pass
[x] run ruff format pyxform tests and ruff check pyxform tests to lint code
[x] verified that any code or assets from external sources are properly credited in comments

I've given this a quick look and didn't see any issues. I'm going to let it marinate and give it some more thought.
Let's hold off on merging a bit because when we do it will go on the staging server and could cause some confusion. Entity forms converted after this is merged will not work with Collect v2024.2 and prior.

Looks ready to go to me! Please fix conflict and merge when you get a chance @lindsay-stevens 🙏

I was planning to fix the merge conflict myself so I could do a release but I just realized that I don't have permissions to do so! @lindsay-stevens if you could do today, that would be very helpful. If you're not able to I'll merge these commits from another PR at the end of my day!


⚠ Bofrost.de has degraded performance

In 85371be, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1451 ms

Resolved: Bofrost.de performance has improved in ce16944.


Update README.md

I also have to do it on the website. But I think that's important to have our wiki up to date

It's double work, wouldn't it be more easy to add a link in our wiki to our website ?

I've made a modification on the website to add the documentation part of the widgets
See PR : https://github.com/suricate-io/suricate-io.github.io/pull/5
i'll modify the readme when the PR will be accepted


Support for resources import

Is there any plan to include resource import command into the supported terraform commands?

Not at the moment, for now the project isn't actively maintained, but hopefully with GitHub sponsors that can change :D


Unclear instructions

My student is following the instructions as given in the Readme and got stuck on step 5:
$ contigtax search -p 4 53.fa uniref100/diamond.dmnd assembly.tsv.gz
ERROR: This diamond version requires you to supply a taxonmap file with --taxonmap at this stage

I managed to figure out she needed to add --taxonmap uniref100/prot.accession2taxid.gz, but it's probably good to be explicit about this!

Hi Luisa! Yes thanks for the tip, will make sure to fix that in the next release!


[Sprint 50] XD-3107 build fixes

This fixes gradle 'dist' and 'distZip'. Also removes some extraneous output messages from the build. Prior to this, 'dist' appears to work correctly on CI, but doesn't do any work (thinks it's up to date) on the command line.  'distZip' resulted in 'startScripts' errors, but once those were corrected, created build/distributions/*-dist.zip for every project. The net effect was that spring-xd-dist.zip and spring-xd-yarn-dist.zip, created by 'dist', were huge due to including the module artifacts created by running 'distZip'.  So, this disables distZip for all subprojects and also disables startScripts.  Note that these issues are not observed in the CI Publish build which configures the Gradle artifactory plugin.
Added some logic to exclude hadoopDistros, 'documentation-toolchain' and the rootProject from publications('mavenCustom'). Also added logback.xml to the document-toolchain classpath to supress DEBUG and INFO log messages.

squashed and merged as b7068504a63f2439368ad34b7715fc8e4dc4a6fb


Zones are not persisted

What happened?
I can add a zone, but it is not persisted. As soon as I move to another tabpage or hit the calculation button it dissapears.
How to reproduce
one way of reproducing this is, In smart irrigation i add a zone
Name: Kas
4 m2
1 l/min
then I press the "werk alle zone data bij" button (or any of the other buttons or just move to modules tab. When I go back to the zones page, the zone is not visible anymore.
Also when adding the zone any of the zone specific buttons seem to be grey and unclickable..
Relevant log output
2024-07-26 10:40:30.563 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 452, in _handle_request
resp = await request_handler(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 543, in _handle
resp = await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
response = await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
result = await handler(request, **request.match_info)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
return await method(view, request, data, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/smart_irrigation/websockets.py", line 198, in post
await coordinator.async_update_zone_config(zone, data)
File "/config/custom_components/smart_irrigation/__init__.py", line 1699, in async_update_zone_config
entry = self.store.async_create_zone(data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/smart_irrigation/store.py", line 519, in async_create_zone
new_zone = attr.evolve(new_zone, id=self.generate_next_id(self.get_zones()))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/smart_irrigation/store.py", line 683, in generate_next_id
x = max(ids) + 1
^^^^^^^^
ValueError: max() iterable argument is empty

Which version are you running?
v2024.7.8
Diagnostics file

[X] I have attached a diagnostics file

Additional information
No response

Diagnostic log
config_entry-smart_irrigation-01J3PYT1836SZ87ZA0CDZDKYVT.json

Me too. 100% same problem, same version, etc.
Unfortunately I haven't found a solution but installing an older version of the integration... Unfortunately I'm not even able to do so, as I can't select the version in HACS.
I hope this bug gets quickly fixed in the next version of smartirrigation.

Use the update install service to install another version. For some weird reason HACS decided to remove that from the UI in their newer versions. I'd install the version before the indexing logic was changed to see if that is better?

To be specific install https://github.com/jeroenterheerdt/HAsmartirrigation/releases/tag/v2024.7.6. The issue you are logging is caused by logic we changed in v2024.7.7.

had the same issue just now, so rolled back to 2024.7.6, but that also fails for me with a similar (but different) error:
Logger: aiohttp.server
Source: /usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py:421
First occurred: 14:18:29 (1 occurrences)
Last logged: 14:18:29

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 452, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 543, in _handle
    resp = await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
    response = await handler(request)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
    return await method(view, request, data, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/smart_irrigation/websockets.py", line 198, in post
    await coordinator.async_update_zone_config(zone, data)
  File "/config/custom_components/smart_irrigation/__init__.py", line 1683, in async_update_zone_config
    elif self.store.get_zone(zone_id):
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/smart_irrigation/store.py", line 490, in get_zone
    res = self.zones.get(int(zone_id))
                         ^^^^^^^^^^^^
TypeError: int() argument must be a string, a bytes-like object or a real number, not 'NoneType'

Use the update install service to install another version. For some weird reason HACS decided to remove that from the UI in their newer versions. I'd install the version before the indexing logic was changed to see if that is better?

Am I doing something wrong? It just gives me an error that the version of smartirrigation can't be used with HACS.

Today I discovered this nice irrigation solution but as other users got into same problem zones are not saved after creating those. looking forward for the fix.
also by using HACS I didnt find how to install old version that was suggested as a workaround

Having the same issue. I tried downgrading using the HACS update service to v2024.7.5 but whenever I go to the Smart Irrigation dashboard it shows v2024.7.8 and has the same issue, no matter what version HACS claims to have installed. Removal and re-adding of the repo do not fix being unable to downgrade. Perhaps a HACS bug, might have to manually install the old version

Okay I'm silly. I thought I was going crazy with the Smart Irrigation dashboard continuing to have the issue and claiming v2024.7.8 is installed despite it being literally nowhere. Turns out I needed to clear my browser cache and the version then reverted.


cmd/go: go test complains about missing gcc (even if no tests exist, and only for certain imports)

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.11 linux/amd64
Does this issue reproduce with the latest release?
Yes, 1.11 is the latest release.
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/jot/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/jot/go"
GOPROXY=""
GORACE=""
GOROOT="/home/jot/bin/go"
GOTMPDIR=""
GOTOOLDIR="/home/jot/bin/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build025056307=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Create an empty directory, and copy a single main.go file.
Working: https://play.golang.org/p/sctz4PAGjf1
Breaking: https://play.golang.org/p/aZu1NZdtXel
Run go test
What did you expect to see?
The working main.go file shows the expected message [no test files].
What did you see instead?
The breaking main.go shows the error message
# runtime/cgo exec: "gcc": executable file not found in $PATH
Go 1.10.4 shows the correct message. Setting CGO_ENABLED="0" also leads to the correct message.
Using debian 9 (stretch) in a Windows Linux Subsystem.

Most likely a dup of #26988 and/or #27285.

Shouldn't this be part of Go1.11.1? Or are there any workarounds?
Running a CI pipeline is problematic when go test fails on the simplest of files:
package foo
import  _ "net/http"

I'm starting with #27285 because it's easy to reproduce and leads to similar symptoms. I plan to recheck this issue once that one is resolved, in case the underlying cause is the same for both.

Pretty sure this one in particular is a dup of #26988.

Setting the environment variable CGO_ENABLED to 0 fixed it for me.
If you use docker, insert the following before your RUN go test or RUN go build operation:
ENV CGO_ENABLED 0

Pretty sure this one in particular is a dup of #26988.

It's not :(
With go version go1.12.7 linux/amd64, "go build" does not need gcc, but "go test" does.
Having a directory with just one file, "foo.go", with just the lines:
package foo

import _ "net"

results in:
$ go test
# runtime/cgo
exec: "gcc": executable file not found in $PATH

ENV CGO_ENABLED 0  solved it for me

Setting the environment variable CGO_ENABLED to 0 fixed it for me.
If you use docker, insert the following before your RUN go test or RUN go build operation:
ENV CGO_ENABLED 0

This also worked for me, but I did:
RUN CGO_ENABLED=0 go test -run="" /tmp/build/pkg/*

To avoid setting an environment variable.
Thanks jkomyno


atexit.register() takes exited function causing rustpython panicked

In the following example, we define a function 'myexit' that executes sys.exit(2). The we call the atexit.register(), rustpython get panicked.
test.py:
def myexit():
    import sys
    sys.exit(2)
import atexit
atexit.register(myexit)

Behavior on rustpython(rustpython 0.1.2):
Error in atexit._run_exitfuncs: <function myexit at 0x7fd048796290>
  File "/Users/xiaxinmeng/Downloads/RustPython-main/pylib/Lib/traceback.py", line 206, in print_stack
    print_list(extract_stack(f, limit=limit), file=file)
thread 'main' panicked at 'assertion failed: unraisable.exc_type.fast_issubclass(vm.ctx.exceptions.exception_type)', vm/src/stdlib/sys.rs:550:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Behavior on CPython 3.9.1(Expected):
work well
Step to reproduce:
type "cargo run --release test.py" on the console of Ubuntu 18.04 and MacOS Big Sur 11.7.1
rust version: rustc 1.65.0

For anyone interested: this involves changing the class in the assert statement from exception to base exception, it doesn't seem to catch SystemExit since isinstance(SystemExit(), Exception) is false.

Hi @DimitrisJim, hi @xiaxinmeng,
I would like to try to tackle this. I'm pretty new to Rust, though, and completely new to RustPython, so I hope I can be of use.
I have changed the exception type from exception_type to base_exception_type. Now, when running the snippet provided by @xiaxinmeng , it exits with
Error in atexit._run_exitfuncs: <function myexit at 0x55ac73c4eac0>
  File "/path/to/repo/RustPython/pylib/Lib/traceback.py", line 206, in print_stack
    print_list(extract_stack(f, limit=limit), file=file)
: 2

instead of (Python 3.11.1):
Exception ignored in atexit callback: <function myexit at 0x7f7cfa40c4a0>
Traceback (most recent call last):
  File "/path/to/repo/RustPython/examples/atexit_test.py", line 3, in myexit
    sys.exit(2)
SystemExit: 2

@DimitrisJim,  do you have any tips on where to look to make the exit equal to the CPython one?

Well, I guess this // TODO has to be hashed out
https://github.com/RustPython/RustPython/blob/c01f014b1269eedcf4bdb45d5fbc62ae2beecf31/vm/src/stdlib/sys.rs#L554-L563


problems with internal wifihotspot

from this script code:
NUM_CARDS=-1
NICSWL=ls /sys/class/net | nice grep wlan
for NIC in $NICSWL
do
    # set MTU to 2304
    ifconfig $NIC mtu 2304
    # re-name wifi interface to MAC address
    NAME=`cat /sys/class/net/$NIC/address`
    ip link set $NIC name ${NAME//:}
    let "NUM_CARDS++"
    #sleep 0.1
done

if [ "$NUM_CARDS" == "-1" ]; then
    echo "ERROR: No wifi cards detected"
    collect_errorlog
    sleep 365d
fi

if [ "$CAM" == "0" ]; then # only do relay/hotspot stuff if RX
    # get wifi hotspot card out of the way
    if [ "$WIFI_HOTSPOT" == "Y" ]; then
		if [ "$WIFI_HOTSPOT_NIC" != "internal" ]; then
			# only configure it if it's there
			if ls /sys/class/net/ | grep -q $WIFI_HOTSPOT_NIC; then
				tmessage -n "Setting up $WIFI_HOTSPOT_NIC for Wifi Hotspot operation.. "
				ip link set $WIFI_HOTSPOT_NIC name wifihotspot0
				ifconfig wifihotspot0 <IP_ADDRESS> up
				tmessage "done!"
				let "NUM_CARDS--"
			else
				tmessage "Wifi Hotspot card $WIFI_HOTSPOT_NIC not found!"
				sleep 0.5
			fi
		else
			# only configure it if it's there
			if ls /sys/class/net/ | grep -q intwifi0; then
				tmessage -n "Setting up intwifi0 for Wifi Hotspot operation.. "
				ip link set intwifi0 name wifihotspot0
				ifconfig wifihotspot0 <IP_ADDRESS> up
				tmessage "done!"
			else
				tmessage "Pi3 Onboard Wifi Hotspot card not found!"
				sleep 0.5
			fi
		fi
    fi

MTU is limited to 1500, an error message is generate
NICSWL=ls /sys/class/net | nice grep wlan we are looking for wlan0 here, it gets renamed, then if WIFI_HOTSPOT_NIC=internal we look for it to be name intwifi0. It works if WIFI_HOTSOT_NIC is set to a MAC address name.

I'm not sure what the problem is you are trying to describe?
The internal wifi hotspot works in the last image. Are you referring to some problem when you don't use the internal wifi?

I also don't understand the problem !
The internal wifi hotspot is also working for me ...

@dposea Can you clarify the issue any further? Else i will close this as it is cluttering the issues that need to be fixed for 1.6 release.

Closing this as no updated use case was supplied.


UIView+MWLayoutHelpers.h

'UIView+MWLayoutHelpers.h' file not found with  include;use"quotes" instead
I have fill with quotes and it does not work.
diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

Hi! Sorry, just noticing this now.
I'm guessing you closing this means you figured it out?


IKS Recovery Flow with descriptor

Recovery of vault not working neither by output descriptor nor by BSMS file methods when the IKS has been used.

Verified this issue on keeper app v1.1.6(257)


add LabelsByIndex method to eliminate code duplication

@gaocegege

This change is

/ok-to-test

Coverage increased (+0.2%) to 44.468% when pulling c9efd779e842db51463a0156970f0ee4eace5e2c on rc-zhang:LabelsByIndex into 3a279aaff42d577ac766d351c2f41f380c4ddf4c on kubeflow:master.

/lgtm
@rc-zhang Thanks for your contribution!


sql: introduce crdb_internal.cluster_locks virtual table

Exalate commented:
Related PR: https://github.com/cockroachdb/cockroach/pull/80517
Commit: https://github.com/cockroachdb/cockroach/commit/bf667384655fc0e8b9be2b6a393326ed32ece492

Release note (sql change): introducing the crdb_internal.cluster_locks
virtual table, which exposes the current state of locks on keys tracked
by concurrency control. The virtual table displays metadata on locks
currently held by transactions, as well as operations waiting to obtain
the locks, and as such can be used to visualize active contention.
The VIEWACTIVITY or VIEWACTIVITYREDACTED role option, or the
admin role, is required to access the virtual table; however, if the
user only has the VIEWACTIVITYREDACTED role option, the key on which
a lock is held will be redacted.
Jira Issue: DOC-3526

@AlexTalks I'm not seeing the locks virtual table in the v22.1.0 release.  Am I holding it wrong?
Using the example query from the PR:
root@:26257/defaultdb> select version();
                                        version
----------------------------------------------------------------------------------------
  CockroachDB CCL v22.1.0 (x86_64-apple-darwin19, built 2022/05/23 16:42:40, go1.17.6)
(1 row)

Time: 1ms total (execution 1ms / network 0ms)

root@:26257/defaultdb> select range_id, table_name, lock_key_pretty, txn_id, ts, lock_strength, durability, granted, contended, duration from crdb_internal.cluster_locks;
ERROR: relation "crdb_internal.cluster_locks" does not exist
SQLSTATE: 42P01

Update: ok the PR says "This feature is gated on v22.1" but what is the gate?   I searched in the PR for "session" and "cluster" and some other things but did not find.
Also, the following queries do not reveal any obvious cluster settings (or session variables, below):
root@:26257/defaultdb> select * from [show all cluster settings] where variable ilike '%lock%';
                                   variable                                   | value | setting_type | public |                                                                                description
------------------------------------------------------------------------------+-------+--------------+--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  kv.lock_table.coordinator_liveness_push_delay                               | 50ms  | d            | false  | the delay before pushing in order to detect coordinator failures of conflicting transactions
  kv.lock_table.deadlock_detection_push_delay                                 | 100ms | d            | false  | the delay before pushing in order to detect dependency cycles between transactions
  kv.lock_table.discovered_locks_threshold_for_consulting_finalized_txn_cache | 200   | i            | false  | the maximum number of discovered locks by a waiter, above which the finalized txn cacheis consulted and resolvable locks are not added to the lock table -- this should be a smallfraction of the maximum number of locks in the lock table
  kv.lock_table.maximum_lock_wait_queue_length                                | 0     | i            | false  | the maximum length of a lock wait-queue that read-write requests are willing to enter and wait in. The setting can be used to ensure some level of quality-of-service under severe per-key contention. If set to a non-zero value and an existing lock wait-queue is already equal to or exceeding this length, requests will be rejected eagerly instead of entering the queue and waiting. Set to 0 to disable.
  server.clock.forward_jump_check_enabled                                     | false | b            |  true  | if enabled, forward clock jumps > max_offset/2 will cause a panic
  server.clock.persist_upper_bound_interval                                   | 0s    | d            |  true  | the interval between persisting the wall time upper bound of the clock. The clock does not generate a wall time greater than the persisted timestamp and will panic if it sees a wall time greater than this value. When cockroach starts, it waits for the wall time to catch-up till this persisted timestamp. This guarantees monotonic wall time across server restarts. Not setting this or setting a value of 0 disables this feature.
  sql.defaults.lock_timeout                                                   | 0s    | d            |  true  | default value for the lock_timeout; default value for the lock_timeout session setting; controls the duration a query is permitted to wait while attempting to acquire a lock on a key or while blocking on an existing lock in order to perform a non-locking read on a key; if set to 0, there is no timeout
(7 rows)

Session vars:
root@:26257/defaultdb> select * from [show all] where variable ilike '%lock%';
    variable   | value
---------------+--------
  lock_timeout | 0
(1 row)

Alex Sarkesian @.***> writes:

@rmloveland It's not gated by a cluster setting, it's just that it
only exists in 22.1.1 onwards rather than 22.1.0. Apologies for the
confusion!

No worries!  Ended up trying again and found it!  Just posted a PR at
cockroachdb/docs#14598 for your review


[Bug]: Access to the registry path is denied.

Description
First time setting up a single master node k3s with Hetzner, but terraform apply throws Error: local-exec provisioner error with:
Output: Enter the absolute path where the nvm-windows zip file is extracted/copied to: ERROR: Access to the registry path is denied.
│ ERROR: Access to the registry path is denied.
│ \NVIDIA was unexpected at this time.

Where did it get nvm-windows from and why did it get unexpected nvidia? Any idea what might be going on here?
Deploy log
│ Error: local-exec provisioner error
│
│   with module.kube-hetzner.module.control_planes["0-0-control-plane-fsn1"].hcloud_server.server,
│   on .terraform\modules\kube-hetzner\modules\host\main.tf line 55, in resource "hcloud_server" "server":
│   55:   provisioner "local-exec" {
│
│ Error running command 'install -b -m 600 /dev/null /tmp/txs4208smrcizndbiwfv
│ echo "-----BEGIN OPENSSH PRIVATE KEY-----
│ <<REDACTED>>
│ -----END OPENSSH PRIVATE KEY-----
│ " > /tmp/txs4208smrcizndbiwfv
│ ': exit status 255. Output: Enter the absolute path where the nvm-windows zip file is extracted/copied to: ERROR: Access to the registry path is denied.
│ ERROR: Access to the registry path is denied.
│ \NVIDIA was unexpected at this time.
│
╵
╷
│ Error: local-exec provisioner error
│
│   with module.kube-hetzner.module.agents["0-0-worker-1"].hcloud_server.server,
│   on .terraform\modules\kube-hetzner\modules\host\main.tf line 55, in resource "hcloud_server" "server":
│   55:   provisioner "local-exec" {
│
│ Error running command 'install -b -m 600 /dev/null /tmp/kgw2bvedqkxeuohce22w
│ echo "-----BEGIN OPENSSH PRIVATE KEY-----
│ <<REDACTED>>
│ -----END OPENSSH PRIVATE KEY-----
│ " > /tmp/kgw2bvedqkxeuohce22w
│ ': exit status 255. Output: Enter the absolute path where the nvm-windows zip file is extracted/copied to: ERROR: Access to the registry path is denied.
│ ERROR: Access to the registry path is denied.
│ \NVIDIA was unexpected at this time.

Kube.tf file
locals {
  hcloud_token = "<<REDACTED>>"
}

module "kube-hetzner" {
  providers = {
    hcloud = hcloud
  }
  hcloud_token = var.hcloud_token != "" ? var.hcloud_token : local.hcloud_token

  source = "kube-hetzner/kube-hetzner/hcloud"

  ssh_public_key = file("~/.ssh/id_ed25519.pub")
  ssh_private_key = file("~/.ssh/id_ed25519")

  control_plane_nodepools = [
    {
      name        = "control-plane-fsn1",
      server_type = "cax11",
      location    = "fsn1",
      labels      = [],
      taints      = [],
      count       = 1
    }
  ]

  agent_nodepools = [
    {
      name        = "worker-1",
      server_type = "cax11",
      location    = "fsn1",
      labels      = [],
      taints      = [],
      count       = 1
    }
  ]

  load_balancer_type     = "lb11"
  load_balancer_location = "fsn1"
  automatically_upgrade_os = false
  firewall_ssh_source = ["<<REDACTED>>/32"]
}

provider "hcloud" {
  token = var.hcloud_token != "" ? var.hcloud_token : local.hcloud_token
}

terraform {
  required_version = ">= 1.4.0"
  required_providers {
    hcloud = {
      source  = "hetznercloud/hcloud"
      version = ">= 1.41.0"
    }
  }
}

output "kubeconfig" {
  value     = module.kube-hetzner.kubeconfig
  sensitive = true
}

variable "hcloud_token" {
  sensitive = true
  default   = ""
}

Screenshots
No response
Platform
Windows

@shadryck If you are on Windows, you have to use the windows linux subsystem. This project won't run directly on the windows cmd prompt.


Add Speech generated samples

Hello there, dear PHP friends! 🐘
We'd like to incorporate the samples which GAPIC generator now supports into google-cloud-php.
tl;dr
These things are required to "Make it go"

[X] PHP samples generated should be copied into samples/ directory by synth.py (gapic-generator)
[X] Tests for code samples should be copied into samples/ directory from googleapis (synthtool)
[X] Code samples resources should be copied into samples/ directory from googleapis (synthtool)
[ ] PHP library CI should be setup to run code sample tests (google-cloud-php)
^ I need y'all's help with this last one!

=> @dwsupplee
/fyi @googleapis/samplegen
/fyi @busunkim96 @TheRoyalTnetennba @dazuma
More info: go/library-samples (internal)
End Goal
🤖 Autosynth sends PRs for new / modified code samples and tests
Should work once google-cloud-php is configured to run system tests for generated samples in CI ✨
This PR
This PR serves the purpose of being an example Pull Request with generated samples to use for CI setup.

I've communicated with some of y'all who are expecting this PR for discussion and configuring CI

The actual diff of this PR is a result of doing the following:

Update synth.py to generate samples (currently opt-in feature behind a --dev_samples flag)
Run script with functionality I plan to get into SynthTool as include_samples=True (will send PR)
Run synth.py to generate the samples (and supplemental script to add tests + resources for samples)

Companion PRs
To help with discussion / see differences between a couple languages, I send PRs to Python and Ruby:

https://github.com/googleapis/google-cloud-ruby/pull/3431
https://github.com/googleapis/google-cloud-python/pull/8210

DIY
If you want to reproduce this diff:

Clone google-cloud-php and checkout fresh master and cd Speech/
Edit synth.py to add samples s.copy(library / 'samples/')
and enable sample generation --dev_samples
Run synth python3 -m synthtool
(Run polyfill script for missing functionality)curl -LO https://gist.github.com/beccasaurus/8ac942988a8f6021a6bf938eb0b6858b/raw/include_samples.sh
chmod +x include_samples.sh
./include_samples.sh speech "v1 v1p1beta1" php

Look at the resulting samples/ directory

If you want to run the tests:

Install the googleapis code sample test runner:python3 -m pip install sample-tester

Run the testssample-tester samples/*/test/*

# just v1p1beta1 tests
sample-tester samples/v1p1beta1/test/*

# just a certain test
sample-tester --cases "My test name" samples/v1/test/*

# show the commands which invoke each sample with the resulting STDOUT
sample-tester -v detailed samples/*/test/*

https://sample-tester.readthedocs.io/

@dwsupplee Have you had a chance to look into Kokoro configuration?

@dwsupplee FYI I updated the PR to use include_samples=True from SynthTool

you can safely delete samples/ and re-run synth and it generates the same samples/ without diff

How are the tests run for each library in google-cloud-php? Particularly for CI?
Is there a way that I should run run-tests.sh locally and then add a sample-tester line?
Everything works, except CI doesn't run the tests.

@beccasaurus Nice! Getting the CI setup is on my todo list this week.

🧹 Out-of-date / Deprecated
301 Redirect => #2294


tsd reinstall does not remove stale typings

I updated my tsd.json to remove touch-events.d.ts, because the new typescript 1.5 beta includes those natively in the lib.d.ts, and the compilation fails due to duplicate type definitions.
I run tsd reinstall, and the touch-events.d.ts is left in the typings folder. Based on the documentation for reinstall:
Reset the definitions to the commits listed in tsd.json
I would expect any typings not in tsd.json to be removed.
The current workaround is everyone on the team needs to remove the typings folder whenever something is removed from tsd.json.

@alexeagle You're right, I'd expect this too. I plan on doing a lot of refactoring on this project and that's one of the first things being fixed in #150. Thanks for the report :+1:

Nice, I noticed your roadmap this morning, and glad to see you are laying plans for those fixes. Soon we will figure out the right way to distribute the type definitions for Angular, likely with tsd.

I think this should be resolved by adding an uninstall command. With this I'll ensure that any of my own typing (if exists) in the same directory (typings) will not be removed.
What do you think?

I don't think that solves our problem: we check in a tsd.json as a means to
keep the typings directories on the machines of all our team members in
sync. What command would we put in 'npm install' that would cause all the
typings to be synced? tsd uninstall --all && tsd reinstall?
On Sat, Jun 6, 2015 at 10:12 PM, Diullei Gomes<EMAIL_ADDRESS>wrote:

I think this should be resolved by adding an uninstall command. With this
I'll ensure that any of my own typing (if exists) in the same directory (
typings) will not be removed.
What do you think?
—
Reply to this email directly or view it on GitHub
https://github.com/DefinitelyTyped/tsd/issues/151#issuecomment-109694432
.

Ok @alexeagle, I Got your point. In this case the reinstall command must remove the typings not referenced by tsd.json

@alexeagle see the discussion in #179. Would do you think of tsd reinstall --clean as a solution for your problem?

@jimlloyd thanks for the notification, I commented over there.

Hi @alexeagle! I published a new version<EMAIL_ADDRESS>to fix the bug that you reported here https://github.com/DefinitelyTyped/tsd/issues/184#issuecomment-136424203
Could you verify if it is ok now?
To install:
npm install<EMAIL_ADDRESS>

yes, it looks good now, I sent a PR to use it in Angular:
https://github.com/angular/angular/pull/3940
Thanks!
On Tue, Sep 1, 2015 at 7:18 AM Diullei Gomes<EMAIL_ADDRESS>wrote:

Hi @alexeagle https://github.com/alexeagle! I published a new version (
<EMAIL_ADDRESS>to fix the bug that you reported here #184 (comment)
https://github.com/DefinitelyTyped/tsd/issues/184#issuecomment-136424203
Could you verify if it is ok now?
To install:
npm install<EMAIL_ADDRESS>—
Reply to this email directly or view it on GitHub
https://github.com/DefinitelyTyped/tsd/issues/151#issuecomment-136736564
.

Nice! I'm glad to help you with this issue!
I'll close this issue for now, feel free to reopen it if you got another problem.
Thanks!


Notebook List Empty

Hello. I am interested in using this for a project I work for.
I forked the repository and entered some notebooks in the notebooks folder. Unfortunately, when I hit the deploy button, they don't show up. Instead I get a message reading 'Notebook List Empty' in the Jupyter home page.
Am I misunderstanding what this is?

Hi MrDupin,
as long as #14 is open there will be trouble conserving notebooks.
If you want to use the notebook directory, you need to disable pgcontents (saving notebooks to the postgres database). Then your notebooks will show up. Be aware, that your changes to those notebooks are lost, if you restart your dynos.
Cheers
Patrick

OK, thanks for the help.


Add ability to export meshes with defined but empty material slots

Is your feature request related to a problem? Please describe.
I can't properly configure my meshes in Godot when I export them from Blender without materials.
Describe the solution you'd like
An option to export empty placeholder material slots instead of the real ones would be the perfect solution.
I could then populate those slots properly with my customized Godot materials later on.
Describe alternatives you've considered
Other alternatives would require Godot doing the work of discarding real materials and only keeping the slots.
But I see this feature in the Blender exporter better.

This is an interesting enhancement.
#1206 can do the job

I'm currently developing a web based 3D product customisation system and this would be a great enhancement for me too, currently I have to use grey materials as placeholders to keep material slots in place.


Is it possible to get where the scripts exactly come from ?

Hey guys,
So once i run a .dir file thru it i can get bits and pieces of code here and there.
Some seem to be exactly like it should be, but now the problem is.
It does't say where from what script it actually comes from it only has like a number.
LctX 129
Lscr 134
Handlers
But no clue if it comes from a script Called Init or Loop etc.
And what is the best way to report the missing codes getting a lot of ERROR or UNK_?
Sample File i get this with
load_play.zip
Sample File that simply wont load unprotecting no error what so ever, but it refuses to.
Could it be diff version director or something ?
game_v440.zip
i might be wrong, but it seems to work..
probably a better way..
projectorrays.js
        "unk_72": () => {             translation = new AST.SYS('player');             script.stack.push(translation); 		},         "unk_b2": () => {             if(this.obj == 305)                 var name = 'system';             if(this.obj == 307)                 var name = 'global';             else if(this.obj == 309)                 var name = 'key';             else if(this.obj == 311)                 var name = 'mouse';             else if(this.obj == 313)                 var name = 'movie';             else if(this.obj == 303)                 var name = 'sound';             translation = new AST.SYS(name);             script.stack.push(translation); 		},
ast.js
    class SYS extends Node {         constructor(value) { 			super(); 			this.value = value; 		} 		toString() { 			return "_" + this.value; 		} 	} 	AST.SYS = SYS;

clarify?
if you mean the names of the scripts, the problem is we haven't yet found a way to associate them...

Ah i see that is exactly what i was asking,
And for the bit of code provided, is it the right way to do or ?
There is more like there is a UNK_B0 if i recall it only contains a string thats it,
Often at least for the game i am trying its something like gMembers
So just doing
        "unk_b0": () => { 			var list = script.stack.pop();             translation = new AST.SYS(list.varName);             script.stack.push(translation); 		},
We get gMembers.valuehere and it seems to be fine
as you get
if gMembers.value = 4 then
stuff like that.


Moodboard

Django to put together submissions from the team for the moodboard assignment from Marija together with his own work and annotate it into a moodboard to present both to the team and also to the stakeholders to give them an idea of direction.
Design team to create moodboard based on competitor & industry analysis. Moodboard will cover aesthetic and interface inspiration.
Acceptance criteria:

[ ] Moodboard 1: Internal use, larger, more in depth
[ ] Moodboard 2: Concrete, smaller amount of data, only hits the points that we're concrete on to be presented to stakeholders
[ ]  Sixteen entries
[ ] 8x Aesthetic/Visual inspiration
[ ] 8x Interface inspiration

Closing this issue as it was considered once an ongoing work, but we need to clear the backlog :)


Camera and Video models expanded

Camera and Video models are now (for the most part) ready to accept data from Users.
Added a configuration page template for Users to interact with our models but it is not functional yet.
Added a script from @melippmann for installing OpenCV on a Pi because it worked for me and it may useful to anyone interested in our project.
Miscellaneous housekeeping

Closing to reopen as a draft


 We would need to change all occurences, also in the database

We should not change the db schema just yet. Let’s just get the external naming right and fix the schema later

If you wanted to make this clearer you could keep the alt naming for the db translation of the structure and output using the new naming in the json

i'm not sure where else this used. this is my quest to fix the naming from Turtle's recent Quest Status PR. AR/NoAR naming is used in Dragonite like this too. Imo it's a lot harder to understand Normal/Alt Quest naming


Cannot load module 'async' as 'Async'

I feel very strange when installing by Carthage.
Usually, using a Carthage framework is very easy. Just Setting: General -> Embedded Binaries and add the built frameworks like this:

However, when I finish this and wrote:
import Async

It immediately shows an error:
Cannot load module 'async' as 'Async'

Why?

Did you manage to fix the issue? Else please re-open.


404s returned for all tutorial pages

https://haystack.deepset.ai/tutorials/fine-tuning-a-model -> Returning 404 - There's no doc for the page you requested.
This is happening for all the pages under the Tutorial section.

Hi @manisnesan and thanks for reporting!
The issue was mostly fixed in https://github.com/deepset-ai/haystack-website/pull/321, I'm keeping this open as we're still missing some pages that require a different fix.


How to create a peptide model based on an amino acid sequence?

Hi,
Thank you for making this great package.
I have this code, which supposes to produce the same identical PDB file with your initial simpleExample.py.
It basically takes a string and makes a 3D model out of it.
from PeptideBuilder import Geometry
import PeptideBuilder
import Bio.PDB

def split(word):
    return [char for char in word]

wanted_peptide = "GGGGGG"
res = split(wanted_peptide)
geo = Geometry.geometry(res[0])
geo.phi = -60
geo.psi_im1 = -40

structure = PeptideBuilder.initialize_res(geo)
nres = res[1:len(res)]

for r in nres:
    print(r)
    rgeo = Geometry.geometry(r)
    PeptideBuilder.add_residue(structure, rgeo)

PeptideBuilder.add_terminal_OXT(structure)

out = Bio.PDB.PDBIO()
out.set_structure(structure)
out.save("my.example.pdb")

But the corresponding output it produces with Pymol is this:

Whereas with your initial simpleExample.py
it produces this:

Why my code doesn't produce identical results?
At the end of the day, I'd like to take an amino acid string like "LKTW" as input and make the model.
How can I approach that?
Ed

Why my code doesn't produce identical results?

Because it's different code?
You're not setting backbone angles in your for loop, so you're getting default angles, which (if I remember correctly) correspond to the extended conformation.


Google login not work

hi,thx for you work, but
now not work, work only Headless = false
if Headless = true, google say = browser not secure,
there is a solution?
i alredy test this https://github.com/Overmiind/Puppeteer-sharp-extra/issues/12
p.s
test .net4.8
test .net core 3.1
test chome ver 90
test chrome ver 85

经过本人测试，PuppeteerExtraSharp版本改成1.2.1即可正常工作！ 不用谢！~

@shunqiziran888  what version chrome do you use? I use chrome latest (97), still failed to login on google.


extra kwargs to rss feed

I've overridden the feed generator in a project and added a key for content. Do you think that'll be useful in Coltrane, @adamghill?

class CustomFeedGenerator(feedgenerator.Atom1Feed):
    def add_item_elements(self, handler, item):
        super().add_item_elements(handler, item)
        html = item["content"]
        html = html.replace("{% verbatim %}", "")
        html = html.replace("{% endverbatim %}", "")
        handler.addQuickElement("content", html, attrs={"type": "html"})

class ContentFeed(Feed):
    title = get_title()
    description = get_description()
    feed_type = CustomFeedGenerator

    def item_extra_kwargs(self, item: ContentItem):
        return {"content": item.html}

Just so I understand, the code above adds a content key with the html of the content?
It looks like content is in the Atom spec, but not the RSS spec?
Coltrane right now defaults to RSS 2.0, so unless there is a good reason to also support Atom, I'm inclined to not worry about it. What do you think?

Just so I understand, the code above adds a content key with the html of the content?

yes

It looks like content is in the Atom spec, but not the RSS spec?

Yes, but even with RSS you can add arbitrary attributes

RSS 2.0 adds that capability, following a simple rule. A RSS feed may contain elements and attributes not described on this page, only if those elements and attributes are defined in a namespace.

Coltrane right now defaults to RSS 2.0, so unless there is a good reason to also support Atom, I'm inclined to not worry about it. What do you think?t

Frankly, no, there's no good reason, I use it so that when dev.to scan my rss feed they can get the content directly, but that's just a detail.


Distrobox hook?

Hi there,
Thanks for a great project!  Python is removing binhex and uu from the standard library, which is ruinous for this script.  It's not a great situation.  My personal feeling is that the easiest workaround is to run a containerized Python.  Distrobox seems the easiest for command-line tools that want access to local files, so I propose adding a makefile target to create such a container along with some minor amendments to the readme briefly summarizing the new option, its use, and its necessity.
I have also added a uuencode test to the tests directory.
Best regards,
FNG

Hey FNG, thanks for your interest in this script, and I agree this is a bad situation. Fortunately it turns out that copying and pasting the uu and binhex modules into the source code and tweaking them slightly to fit was quite straightforward. While I appreciate the suggestion to use a Dockerfile that freezes the Python version at 3.8, I think the source inclusion approach is more "future-proof" as active support for Python 3.8 ended in May 2021 and security support ended recently in Oct. 2024. Now that this script has the uu and binhex functions included it should work with Python 3.7+.
The tests/uuencode.txt file is most appreciated and I would be happy to merge it separately.

I considered coalescing the modules, but because of their age I am under the impression they get pass through licensing instead of being under the umbrella of the standard library and PSGL license.  So you'd need to include the uuencode preamble in your docs, as far as I can tell.

I appreciate the suggestion to use a Dockerfile that freezes the Python version at 3.8, I think the source inclusion approach is more "future-proof"
I was inspired by the way Nerd Fonts is available as a containerized appliance.  You get stable back-end and a layer of abstraction against things like the security issues that are occasionally found in these now-discontinued modules (to wit, the reason they were removed from the standard library).  But I concede that it's overkill for a toy project :)

The tests/uuencode.txt file is most appreciated and I would be happy to merge it separately.
Please help yourself.

Thanks again for a great tool, cheers!


Creat flat pattern view with annotation

Get the BOM of assembly, and create each Sheetmetal part flat pattern drawing in one slddraw file, and get the material, thickness, and quality value of the parts as annotation, list below the view. The part view that with same material and thickness  will list in the same row.

Thank you for the submission. Could you please attach sample data? Original assembly and expected result.

Hello! Thanks for response.
Here is the file link. https://drive.google.com/file/d/1gpRGS9FJhCQP_lzdj8BVAC15NchtMLgM/view?usp=sharing

Hello! Thanks for response.
Here is the file link.
https://drive.google.com/file/d/1ttnfZl_V3FZrq_pDWB_FrsQHhcABU7Cc/view?usp=sharing

Thank you for the models. I will be investigating this request

That's OK.

H!s this made any advancement? This would awesome! I've got a macro that will use the bom to spam out all the parts of an assembly on one sheet , but can't get it to convert to flat pattern .


[MacOS Desktop]Ram increase after lid is close

source code: https://github.com/letungcntt/my_app
Flutter 2.8.0-3.2.pre • channel beta • https://github.com/flutter/flutter.git
Framework • revision 2901cd7208 (5 days ago) • 2021-11-18 11:15:09 -0800
Engine • revision bcc2b7f12c
Tools • Dart 2.15.0 (build 2.15.0-268.18.beta)

Hi @letungcntt, Thanks for filing the issue. How long is the lid of the laptop kept closed and  In which mode(debug/profile/release) is the app running?
I ran your sample code in debug mode and closed the lid for five minutes and reopened the app was running with same memory usage.

Before
After

@maheshmnj i test it with debug and release. But i ran code and closed the lid under ten seconds.

@letungcntt How long have you kept the lid closed? Can you try switching to master channel and see if you can reproduce it there? You can switch to master by running
flutter channel master
flutter upgrade

@maheshmnj i kept the lid closed at 5s to 10s. i will try again with branch master

The problem hasn't fixed at master

@letungcntt  Can you please verify if this happens with other apps too? Because your app is loading a lot of network images and that seems to be contributing to the memory. Even if you don't close the lid and browse the app you will see an increase in memory consumption.

@maheshmnj Keeping this issue open for further investigation.

@maheshmnj Keeping this issue open for further investigation.

@letungcntt Without enough details, we won't be able to investigate further. I can see that memory increases when you scroll the list regardless of the lid is closed. If I close and open the lid the memory usage is approximately the same.
Can you please confirm if you are seeing this behavior?

@maheshmnj oh. sorry, i has checked and the problem is loading a lot of network images

@maheshmnj oh. sorry, i has checked and it is loading a lot of network images

Provided your last message I feel its safe to close the issue, if you disagree feel free to write in the comments and I will reopen it.
Thank you.


Runtime error

I have installed Luminoth. I am  able to download checkpoints as well. When i run lumi predict on an image or lumi web server, I get the following error:
Traceback (most recent call last):
File "/home/ace/anaconda3/bin/lumi", line 11, in <module>     load_entry_point('luminoth', 'console_scripts', 'lumi')()
File "/home/ace/anaconda3/lib/python3.6/site-packages/click/core.py", line 722, in __call__     return self.main(*args, **kwargs)
File "/home/ace/anaconda3/lib/python3.6/site-packages/click/core.py", line 697, in main     rv = self.invoke(ctx)
File "/home/ace/anaconda3/lib/python3.6/site-packages/click/core.py", line 1066, in invoke     return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/ace/anaconda3/lib/python3.6/site-packages/click/core.py", line 895, in invoke     return ctx.invoke(self.callback, **ctx.params)
File "/home/ace/anaconda3/lib/python3.6/site-packages/click/core.py", line 535, in invoke     return callback(*args, **kwargs)
File "/home/ace/luminoth/luminoth/predict.py", line 241, in predict     config = get_checkpoint_config('accurate')
File "/home/ace/luminoth/luminoth/tools/checkpoint/__init__.py", line 210, in get_checkpoint_config     config = get_config(os.path.join(path, 'config.yml'))
File "/home/ace/luminoth/luminoth/utils/config.py", line 19, in get_config     model_base_config, custom_config, override_params
File "/home/ace/luminoth/luminoth/utils/config.py", line 225, in get_model_config     return cleanup_config(config)
File "/home/ace/luminoth/luminoth/utils/config.py", line 204, in cleanup_config     config.pop(cleanup_key, None)
File "/home/ace/anaconda3/lib/python3.6/site-packages/easydict/__init__.py", line 142, in pop     delattr(self, k)
AttributeError: _replace
For the rest of the getting started section, the code runs with  the following warnings:
/home/ace/anaconda3/lib/python3.6/importlib/_bootstrap.py:219: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88   return f(*args, **kwds) /home/ace/anaconda3/lib/python3.6/importlib/_bootstrap.py:219: ImportWarning: can't resolve package from __spec__ or __package__, falling back on __name__ and __path__   return f(*args, **kwds)
From what I understand, the warnings may not necessarily be a problem. Based on the traceback of the error, the indication is that running the lumi script in the bin folder is causing the error. Have I made some mistakes during installation?

https://github.com/tryolabs/luminoth/issues/223
This helped. I still have a doubt about whether the warnings might cause future problems.

Hi @AshwinAce,
You don't need to worry about the warnings, they are regular TF stuff.
The _replace issue looks to be because of change (bug?) introduced in a dependency (easydict).
I close this issue and we can continue the discussion in #223.


Starfive VisionFive 2 riscv64 benchmark test

I wanted to drop by and provide to you the duration it took to run your cargo test.
[davidm@fedora-riscv sort-research-rs]$ cargo test --release
   Compiling cc v1.0.78
   Compiling serde_derive v1.0.152
   Compiling unicode-width v0.1.10
   Compiling bstr v0.2.17
   Compiling textwrap v0.11.0
   Compiling paste v1.0.11
   Compiling plotters-svg v0.3.3
   Compiling rayon-core v1.10.2
   Compiling serde_json v1.0.91
   Compiling syn v1.0.107
   Compiling sort_comp v0.1.0 (/home/davidm/sort-research-rs)
   Compiling num-traits v0.2.15
   Compiling itertools v0.10.5
   Compiling csv-core v0.1.10
   Compiling half v1.8.2
   Compiling regex-syntax v0.6.28
   Compiling cast v0.3.0
   Compiling bitflags v1.3.2
   Compiling same-file v1.0.6
   Compiling itoa v0.4.8
   Compiling csv v1.1.6
   Compiling criterion-plot v0.4.5
   Compiling regex v1.7.1
   Compiling walkdir v2.3.2
   Compiling clap v2.34.0
   Compiling serde_cbor v0.11.2
   Compiling plotters v0.3.4
   Compiling tinytemplate v1.2.1
   Compiling rayon v1.6.1
   Compiling rand v0.8.5
   Compiling atty v0.2.14
   Compiling once_cell v1.17.0
   Compiling oorandom v11.1.3
   Compiling core_affinity v0.7.6
   Compiling criterion v0.3.6
    Finished release [optimized] target(s) in 3m 51s
     Running unittests src/lib.rs (target/release/deps/sort_comp-dacceccf28ca295e)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/main.rs (target/release/deps/main-9118c8a514cdc1ec)

running 36 tests

Seed:<PHONE_NUMBER>1725472644
Testing: rust_ipn_stable

test basic ... ok
test ascending ... ok
test comp_panic ... ok
test all_equal ... ok
test descending ... ok
test fixed_seed ... ok
test int_edge ... ok
test observable_is_less ... ok
test observable_is_less_mut_ptr ... ok
test observable_is_less_u64 ... ok
test panic_observable_is_less ... ok
test panic_retain_original_set ... ok
test ascending_saw ... ok
test descending_saw ... ok
test pipe_organ ... ok
test random ... ok
test random_1024 ... ok
test random_16 ... ok
test random_4 ... ok
test random_256 ... ok
test random_8 ... ok
test random_binary ... ok
test random_f128 ... ok
test random_narrow ... ok
test dyn_val ... ok
test random_large_val ... ok
test random_u64 ... ok
test saw_mixed ... ok
test random_u128 ... ok
test sort_vs_sort_by ... ok
test stability ... ok
test stability_with_patterns ... ok
test saw_mixed_range ... ok
test violate_ord_retain_original_set ... ok
test random_ffi_str ... ok
test random_str ... ok

test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 17.63s

Linux fedora-riscv 5.15.0-vf2-260+ #2 SMP Sun Jan 15 14:17:02 UTC 2023 riscv64 riscv64 riscv64 GNU/Linux
cargo --version
cargo 1.69.0-nightly (82c3bb79e 2023-02-04)

Hi, thanks for reaching out. It would be great if you could run some benchmarks. Some instructions how to run them:
// Install critcmp eg. cargo install critcmp
// Go to the main Cargo.toml and enable rust_glidesort as a default feature
// Go to bench.rs and change the test_sizes list to only contain 10_000
rm -rf target/criterion
cargo bench "hot-" --save-baseline general
critcmp --export general > general.json

// Go back to bench.rs and revert test_sizes to the original, and then remove
rm -rf target/criterion
// This may take 6 hours or so, maybe best to run this overnight.
cargo bench --bench bench --  --warm-up-time 1 --measurement-time 3 "hot-u64-" --save-baseline scaling

There hasn't been any activity here, and since then ipn_stable has become defunct. Closing it now.


assert_impl warns about bare trait objects with #![warn(rust_2018_idioms)]

See title.
warning: trait objects without an explicit `dyn` are deprecated
   --> src/lib\data\mod.rs:77:41
    |
77  |           static_assertions::assert_impl!(PacketData, $data);
    |                                           ^^^^^^^^^^ help: use `dyn`: `dyn PacketData`

Nevermind, I had the arguments the wrong way around. Interesting error this generates though.


Cig 1984

About the PR
Closes #10862
Screenshots

Changelog

:cl:

remove: You can no longer inject chems into cigarettes.

fine with this, my thoughts in admin chat

fine with this, my thoughts in admin chat

more or less this, it'd also give purpose to DIY smokeable crate from cargo that has literally zero use otherwise, or for botany to dabble a bit harder into making joints for a cause other than "whew time to hit the zaza"


Swift 3.0 - DO NOT MERGE!

Take a look but do not merge !!
// TODO:

Private method names need to be renamed to new swift method style
Tests need to be rewritten (only public stuff can be tested yet)
Downloader thingy is way more complex than it needs to be (maybe refac)

// DONE:

implemented namespaced UUID (v5) instead of sha1 checksum of img (can support doubles without collision now)
implemented config to be able to configure the framework without editing the code
converted to swift 3.0

Thanks – I'll go through the files and add comments one by one.


NatsObjStore.ListAsync hangs if bucket is empty

Observed behavior
As per title, if an object store bucket has no entries, then calling ListAsync hangs and doesn't return.
Expected behavior
Enumerator should return
Server and client version
Client : .Net 2.3.3
Server : Various
Host environment
No response
Steps to reproduce
No response

Here's a test that fails, not quite sure the best way to solve this...
[Fact]
public async Task Enumerate_empty_object_store()
{
    var cts = new CancellationTokenSource(TimeSpan.FromSeconds(10));
    var cancellationToken = cts.Token;

    await using var server = NatsServer.StartJS();
    await using var nats = server.CreateClientConnection();
    var js = new NatsJSContext(nats);
    var ob = new NatsObjContext(js);

    var objStore = await ob.CreateObjectStoreAsync(new NatsObjConfig("emptyStore"), cancellationToken);

    await foreach (var stream in objStore.ListAsync(cancellationToken: cancellationToken))
    {
    }
}

thanks @darkwatchuk! this is a bug. we had similar issues with KV watchers and solved them using some message properties.

Hi guys. I see the OnNoData function in the NatsKV. I think this solution can be applied to NatsObjStore. Can I fix this bug?

Hi guys. I see the OnNoData function in the NatsKV. I think this solution can be applied to NatsObjStore. Can I fix this bug?

thanks @Ivandemidov00 absolutely please go for it 💯


Neovim version compatibility is not checked when setting it up

Describe the bug
Neovim version installed on RHEL9 using official repos (including EPFL) is 0.8* which is not compatible with the packages used for customizing nvim. Basically, setup neovim option gives an error for older versions of neovim < 0.9.4.
One error: which-key.nvim requires Neovim >= 0.9.4
To Reproduce
Steps to reproduce the behavior:

Install RHEL9
run linutil > setup neovim
See error on first run of nvim after installation

Expected behavior
A clear and concise description of what you expected to happen: Check if version provided by the distribution is supported.
Screenshots

Additional context
I used setup bash before doing this. That was the only part of linutil I used before doing this. This is also a new installation without any serious config changes and did not have nvim installed previously.
I can download nvim 0.10.* from official github repository and run it without a problem with this system.

This happens because of this line
It only checks if nvim exists and not it's version.
I suggest you open an issue on that repository.

I think even if that line is changed to check for versions, the package manager installation would still do nothing since this is the most up to date version of neovim for the distribution. I can not find where the plugins for neovim are being installed by linutil, but I think that may be the place to make changes.


Emit an event when dimensions change

Hi!
I'd love it if you guys could make the Dimensions API an event emitter :)
Dimensions.addListener(dimensions => {
  // Do stuff depending on new dimensions
})

Basically I'm trying to mock matchMedia so I can plug it into Radium and use media queries in native environments.
For now I'm gonna fall back to polling Dimensions.get() :X

Moved to product pains.


After installation of latest plantuml.jar syntax problem with !includeurl

New preprocessor uses different syntax

This seems the solution
https://forum.plantuml.net/8083/update-plantuml-icon-font-sprites


Beta Proposal: Change drought to 3 tiles (from 7)

I will just keep the PR for future disasters rework.


kubeconfig - add full path to the kube exec command

reference the full path instead of just 'pybritive-kube-exec'

resolved in #153


add list of assignees to task model

Bug: multi assignee not displayed correctly in slack thread
Fix: always send back a list of current assignees
INSLY-1242

Task linked: INSLY-1242 Bug: multi assignee not displayed correcly in slack thread

!deploy


Minor fix to an assertion message

linux java tests failed after 6 hours.  kicked them; hopefully they take a bit less time on this try


Out of source build (cmake)

It would be great if out of source build will be added. In project documentation how to set up error much in that case.

In fact you can do it, I am slow learner. The trick is that you can set cwd to root paths and set working directory for "make".
Following is for code with clang:
{
  "cmd": "make",
  "args": [ "-C /Users/likask/MyBuild/um_debug/thermal" ],
  "cwd": "/",
  "sh": true,
  "errorMatch": "^(?<file>.*\\.[hc]p?p?):(?<line>\\d+):(?<col>\\d+)"
}


storage_path helper should escape spaces

Event class, sendOutputTo() using a path such as storage_path('logs/backup.log') on OSX local drive can end up with a full path like /Volumes/Macintosh HD/webdev/projectname/storage/logs/backups.log
The unescaped path in the folder name results in 'Too many arguments' error in /Volumes/Macintosh HD/webdev/projectname/vendor/symfony/console/Input/ArgvInput.php:177
The helper could avoid this issue by escaping any spaces found in the path.

Breaking change, and I totally disagree anyway. It gives you the "storage path". It made no claims about the output being suitable to pass into the command line.

Event class, sendOutputTo()

However it does look like a bug in sendOutputTo. That function should be escaping the path you give it.

Made a new issue for you: https://github.com/laravel/framework/issues/11321.


[ENG-1578] Remove the VOL from the currentUser when stopping view only

Ticket: ENG-1578
Feature flag: n/a

Purpose
The existing functionality of 1578 is only half-fixed. It's removing the VOL from the URL, but leaving it on the currentUser service, so the VOL banner still shows on the dashboard, and transitioning to any other route will put the VOL back on the url. This fixes it so that the VOL is cleared from the currentUser as well.
Summary of Changes

Clear the VOL from the currentUser service.

Side Effects
Nope.
QA Notes
This should just be the same test plan you used before for 1578.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.003%) to 71.912%

Totals

Change from base Build<PHONE_NUMBER>:
0.003%

Covered Lines:
4769

Relevant Lines:
6360

💛  - Coveralls


Too many external frameworks leaking into codebase, reducing maintainability

This main repo should not have a single mention of other frameworks. The project doesnt have the maintainers or resources to keep up.
Its a real shame because its a promising project, but its now so unmaintainable it cannot be updated.
Proposal: Remove all of those extra views and keep to just the bindings...
Blazor, uno etc can maintain their own views out the main repo, and we can get Skiasharp back updated again.

Maybe we can move the view code into the github.com//mono/SkiaSharp.Exteneded repo. This way SkiaSharp is just a binding and then the other repo consumes things via a nuget.

This will also help with maui as maui.graphics.skia depends on this repo, but this repo depends on maui for samples...

Just thinking about this over the last few days and moving all views out makes it hard to test as there is no UI part.
We might be better off removing the non-core features - like Maui, Uno, X.F and the rest. But, we would keep the iOS, Android and maybe even GTK.
Since those platform views are pretty simple and don't really have features, we can have a much easier time adding/fixing things in the Uno/Maui worlds without having to build the ENTIRE dev machine and set of requirements.
Maybe we could move the views out and have the samples/testing in the core SDKs just be offscreen things... We can draw a line anywhere - but maybe we just need to see the minimum needed for testing skia on devices...


Progress outputs are not sorted when randomly is used

When reporting an issue, include a way to reproduce the bug. For example:

Python 3.6.5
pytest 3.9.3
pytest-sugar 0.9.1
pytest-xdist 1.23.2
pytest-randomly 1.2.3

Command used to run py.test
pytest -n auto
Test files
test_qwe.py
import @pytest
@pytest.mark.parametrize('a', range(100))
def test_qwe(a):
    pass

test_asd.py
import @pytest
@pytest.mark.parametrize('a', range(10))
def test_asd(a):
    pass

(And then make a bunch of copies of those files somehow)
Output

I suppose it kind of makes sense that outputs wouldn't be sorted when you're using a plugin that would randomly sort the tests, but also, I assumed pytest-sugar would somehow 'figure it out'.
Here's what it looks like for a 'real' project of mine:

Simple fix is to just not use pytest-randomly, but I do like it's whole premise.
Not a critical problem in my book, just something I wanted to let you all know about nonetheless.

Does it work with you using xdist but without pytest-randomly?
I don't have pytest-randomly but I do have xdist and if I use pytest with more then one worker I get this exact behaviour so I uninstalled sugar again. It does look nice but for me the speedup of having multiple workers on a 16-threaded workstation is worth more.


Add Left Side Navigation Rail/Drawer

[ ] Material.io Rail

https://m2.material.io/components/navigation-rail

[ ] Material.io Drawer

https://m2.material.io/components/navigation-drawer

navigation rail classes not available for web: https://m2.material.io/components/navigation-rail/web


Fix the issue that Pinot upsert table's uploaded segments get deleted when server restarts.

Fix the issue that Pinot upsert table's uploaded segments get deleted when server restarts. The root cause is that we did not consider the new segment status introduced for upsert table uploaded segments.
Description

Upgrade Notes
Does this PR prevent a zero down-time upgrade? (Assume upgrade order: Controller, Broker, Server, Minion)

[ ] Yes (Please label as backward-incompat, and complete the section below on Release Notes)

Does this PR fix a zero-downtime upgrade introduced earlier?

[ ] Yes (Please label this as backward-incompat, and complete the section below on Release Notes)

Does this PR otherwise need attention when creating release notes? Things to consider:

New configuration options
Deprecation of configurations
Signature changes to public methods/interfaces
New plugins added or old plugins removed

[ ] Yes (Please label this PR as release-notes and complete the section on Release Notes)

Release Notes

Documentation

Codecov Report

Merging #7979 (2708d67) into master (3c4285b) will decrease coverage by 56.95%.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             master    #7979       +/-   ##
=============================================
- Coverage     71.23%   14.27%   -56.96%
+ Complexity     4214       80     -4134
=============================================
  Files          1595     1550       -45
  Lines         82720    80863     -1857
  Branches      12342    12143      -199
=============================================
- Hits          58923    11544    -47379
- Misses        19814    68459    +48645
+ Partials       3983      860     -3123

Flag
Coverage Δ

integration1
?

integration2
?

unittests1
?

unittests2
14.27% <0.00%> (+0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

.../core/realtime/PinotLLCRealtimeSegmentManager.java
67.45% <0.00%> (-11.29%)
:arrow_down:

...ata/manager/realtime/RealtimeTableDataManager.java
0.00% <0.00%> (-67.89%)
:arrow_down:

...ain/java/org/apache/pinot/core/data/table/Key.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../java/org/apache/pinot/spi/utils/BooleanUtils.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../java/org/apache/pinot/core/data/table/Record.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../java/org/apache/pinot/core/util/GroupByUtils.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...ava/org/apache/pinot/spi/config/table/FSTType.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...ava/org/apache/pinot/spi/data/MetricFieldSpec.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...va/org/apache/pinot/spi/utils/BigDecimalUtils.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...java/org/apache/pinot/common/tier/TierFactory.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 1268 more

Continue to review full report at Codecov.

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


Files formatting is run even after validation errors

Steps to reproduce:

use attached config
fabrica.sh generate fabrikkaConfig-1org-1channel-2chaincodes.json

Result:
Fabrica is powered by :
 _____        __ _                         ___  ____ _ _
/  ___|      / _| |                        |  \/  (_) | |
\ `--.  ___ | |_| |___      ____ _ _ __ ___| .  . |_| | |
 `--. \/ _ \|  _| __\ \ /\ / / _` | '__/ _ \ |\/| | | | |
/\__/ / (_) | | | |_ \ V  V / (_| | | |  __/ |  | | | | |
\____/ \___/|_|  \__| \_/\_/ \__,_|_|  \___\_|  |_/_|_|_|
=========================================================== v: 0.0.1-alpha
Errors count: 1
Warnings count: 1
=================== Validation summary ===================
Errors found:
  Orderer:
   - Raft consensus type must use network in TLS mode. Try setting 'networkSettings.tls' to true
Warnings found:
  Orderer:
   - Orderer consesus type is set to 'raft', but number of instances is 1. Network won't be fault tolerant! Consider higher value.
===========================================================
Formatting generated files
sed: /network/target/**/*.yaml: No such file or [directory](url)

Uploading fabrikkaConfig-1org-1channel-2chaincodes.json.txt…

fabrikkaConfig-1org-1channel-2chaincodes.json.txt


user icon

home :page
user logined name not aligned with img

align-items: center;
display: flex;

for link that open dropdown

check if clickable on mobile