ERROR: Failed building wheel for pypika running pip3 install vectordb-bench

I can't get any help to resolve this while trying both :
pip3 install vectordb-bench
pip install vectordb-bench
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pypika
Failed to build pypika
ERROR: Could not build wheels for pypika, which is required to install pyproject.toml-based projects
my python3 version is :
Python 3.11.5

here is the full error :
Building wheels for collected packages: pypika
Building wheel for pypika (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for pypika (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [86 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/pypika
copying pypika/enums.py -> build/lib/pypika
copying pypika/queries.py -> build/lib/pypika
copying pypika/utils.py -> build/lib/pypika
copying pypika/functions.py -> build/lib/pypika
copying pypika/pseudocolumns.py -> build/lib/pypika
copying pypika/dialects.py -> build/lib/pypika
copying pypika/analytics.py -> build/lib/pypika
copying pypika/init.py -> build/lib/pypika
copying pypika/terms.py -> build/lib/pypika
creating build/lib/pypika/clickhouse
copying pypika/clickhouse/nullable_arg.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/type_conversion.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/search_string.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/init.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/array.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/dates_and_times.py -> build/lib/pypika/clickhouse
copying pypika/clickhouse/condition.py -> build/lib/pypika/clickhouse
running egg_info
warning: no files found matching 'requirements.txt'
writing manifest file 'PyPika.egg-info/SOURCES.txt'
running install
running install_lib
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in
main()
File "/usr/lib/python3/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/pip/_vendor/pep517/in_process/_in_process.py", line 261, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 230, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir
self.run_setup()
File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 268, in run_setup
self).run_setup(setup_script=setup_script)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 158, in run_setup
exec(compile(code, file, 'exec'), locals())
File "setup.py", line 33, in
setup(
File "/usr/lib/python3/dist-packages/setuptools/init.py", line 153, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 148, in setup
return run_commands(dist)
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 163, in run_commands
dist.run_commands()
File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 967, in run_commands
self.run_command(cmd)
File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 335, in run
self.run_command('install')
File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 68, in run
return orig.install.run(self)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/_distutils/command/install.py", line 622, in run
self.run_command(cmd_name)
File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 985, in run_command
cmd_obj.ensure_finalized()
File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 107, in ensure_finalized
self.finalize_options()
File "/usr/lib/python3/dist-packages/setuptools/command/install_lib.py", line 17, in finalize_options
self.set_undefined_options('install',('install_layout','install_layout'))
File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 290, in set_undefined_options
setattr(self, dst_option, getattr(src_cmd_obj, src_option))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 103, in getattr
raise AttributeError(attr)
AttributeError: install_layout. Did you mean: 'install_platlib'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pypika
Failed to build pypika
ERROR: Could not build wheels for pypika, which is required to install pyproject.toml-based projects

/assign @XuanYang-cn

Also it seem with python 3.10.12 no isssue with pypika however 3.11 has issue and until I have 3.11 I can't proceed with pip install vectordb-bench
ubuntu@ip-172-31-1-187:~$ pip install vectordb-bench
Defaulting to user installation because normal site-packages is not writeable
ERROR: Could not find a version that satisfies the requirement vectordb-bench (from versions: none)
ERROR: No matching distribution found for vectordb-bench
ubuntu@ip-172-31-1-187:~/ann-benchmarks$ python3 -V
Python 3.10.12
ubuntu@ip-172-31-1-187:~/ann-benchmarks$ pip install PyPika
Defaulting to user installation because normal site-packages is not writeable
Collecting PyPika
Downloading PyPika-0.48.9.tar.gz (67 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 67.3/67.3 KB 2.8 MB/s eta 0:00:00
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: PyPika
Building wheel for PyPika (pyproject.toml) ... done
Created wheel for PyPika: filename=PyPika-0.48.9-py2.py3-none-any.whl size=53738 sha256=ff1cb26b6fb29882d18bf1894abdb2b26c3e21d033d4592cf42901488eeb4f41
Stored in directory: /home/ubuntu/.cache/pip/wheels/e1/26/51/d0bffb3d2fd82256676d7ad3003faea3bd6dddc9577af665f4
Successfully built PyPika
Installing collected packages: PyPika
Successfully installed PyPika-0.48.9
ubuntu@ip-172-31-1-187:~/ann-benchmarks$ cd ..
ubuntu@ip-172-31-1-187:~$
ubuntu@ip-172-31-1-187:~$

@pauldintel pypika is a dependency of chromadb, we could ignore chromadb when install vectordb-bench. It's not released yet, but you could try the following to get the latest vectordb-bench with only pymilvus
pip install git+https://github.com/zilliztech/vectordbbench.git@main // or
pip install git+ssh://github.com/zilliztech/vectordbbench.git@main

thanks @XuanYang-cn  I managed to get rid of this issue using Python virtualenv .. not sure what was the issue but raised with pypika community too . they are looking at it .

On my system, the issue can be fixed with "pip3 install --upgrade pip setuptools wheel".


Remove cirq.Tolerance in favor of passing atol and rtol in method parameters.

Removes the Tolerance class in favor for passing atol (Absolute Tolerance) and rtol (Relative Tolerance) as float method parameters .
Addresses: https://github.com/quantumlib/Cirq/issues/1190

[x] Remove Tolerance from the public API
[x] Exposes Default atol and rtol constants internally to avoid setting defaults across the project
[ ] WIP: Renames tolerance method paramters to atol and/or rtol to explicitly indicate what tolerance type is being set on the API

Hi! It's my first PR here and wanted to tackle this one to get familiar with the codebase.  Hope that this helps!  Looking for earlier feedback before wrapping up some loose ends.

Rerun CLA

Rerun CLA

@bbonnet Thanks for taking this. I recommend running the checks locally as using the travis logs for debugging could be inefficient.

@Strilanc @dabacon Thanks for the review! I've updated based on your comments and this should be ready for another look.


Facilitate image import

Talking with clinicians, they have a hard time opening an image when launching medInria for the first time. This should not be the case. But it is not intuitive to have to go to "database", then see that there is a tab called "filesystem", and guess that it is where the import is done.
I would suggest that we add a big "Open Image" button on the home page that goes directly the file system, and switches to the database when the import is done.
I would also put this button in the database tab, to switch to the filesystem one.

I think, if this "enhancement" is applied , I suggest to switch to view.


How to exercise mqtt connection tutorial steps with minishift?

Hi there,
I am new to the enmasse and openshift origin. I installed a openshift oirigin via minishift but am having trouble on exercising the following mqtt connection tutorial steps:
MQTT
For sending and receiving messages, the quitto_sub -h $(oc get service -o jsonpath='{.spec.clusterIP}' mqtt) -t mytopic -q 1osquitto clients are the simpler way to go. These clients can be used either against the local service IP or the external route. To connect using the local service IP:
In order to subscribe to a topic (i.e. mytopic from the previous addresses configuration), the mosquitto_sub can be used in the following way :
mosquitto_sub -h $(oc get service -o jsonpath='{.spec.clusterIP}' mqtt) -t mytopic -q 1
Then the subscriber is waiting for messages published on that topic. To start the publisher, the mosquitto_pub can be used in the following way :
mosquitto_pub -h $(oc get service -o jsonpath='{.spec.clusterIP}' mqtt) -t mytopic -q 1 -m "Hello EnMasse"
The the publisher publishes the message and disconnects from EnMasse. The message is received by the previous connected subscriber.
For sending and receiving messages using the external route, have a look at an example python sender and receiver.
In order to subscribe to a topic (i.e. mytopic from the previous addresses configuration), the receiver client can be used in the following way :
./tls_mqtt_recv.py -c "$(oc get route -o jsonpath='{.spec.host}' mqtt)" -p 443 -t mytopic -q 1 -s ./server-cert.pem
Then the subscriber is waiting for messages published on that topic. To start the publisher, the sender client can be used in the following way :
./tls_mqtt_send.py -c "$(oc get route -o jsonpath='{.spec.host}' mqtt)" -p 443 -t mytopic -q 1 -s ./server-cert.pem -m "Hello EnMasse"
The the publisher publishes the message and disconnects from EnMasse. The message is received by the previous connected subscriber.
Even with the route configuration,  ./server-cert.pem is missing from sending and receiving mqtt messages in the python commands.
Here is my Services table on openshift:

Name
Cluster IP
External IP
Ports
Selector
Age

ragent
<IP_ADDRESS>
none
5672/TCP
name=admin
3 hours

subscription
<IP_ADDRESS>
none
5672/TCP
name=subserv
3 hours

console
<IP_ADDRESS>
none
5672/TCP, 8080/TCP
name=admin
3 hours

messaging
<IP_ADDRESS>
none
5672/TCP, 5671/TCP,55673/TCP,55672/TCP
capability=router
3 hours

mqtt
<IP_ADDRESS>
none
1883/TCP, 8883/TCP
name=mqtt-gateway
3 hours

queue-scheduler
<IP_ADDRESS>
none
5672/TCP
name=admin
3 hours

configuration
<IP_ADDRESS>
none
5672/TCP
name=admin
3 hours

address-controller
<IP_ADDRESS>
none
8080/TCP, 8081/TCP,5672/TCP
name=address-controller
3 hours

Thank you so much.
Cheers,
Lee

Hi Lee,
Which one of the commands is not working for you?
The commands that connect directly to the MQTT service (mosquitto_*) will not work when running on minishift. The reason for that is that minishift runs OpenShift inside a VM, so you cannot connect to the service ips, because they are internal to the VM.
You can still connect to the MQTT service using the exposed mqtt route, but that requires use of TLS:
For sending and receiving messages using the external route, have a look at an example python sender and receiver.

In order to subscribe to a topic (i.e. mytopic from the previous addresses configuration), the receiver client can be used in the following way :

./tls_mqtt_recv.py -c "$(oc get route -o jsonpath='{.spec.host}' mqtt)" -p 443 -t mytopic -q 1 -s ./server-cert.pem

Hi lulf,
This does not work for me : ./tls_mqtt_recv.py -c "$(oc get route -o jsonpath='{.spec.host}' mqtt)" -p 443 -t mytopic -q 1 -s ./server-cert.pem
Do you know where server-cert.pem is located? Thank you.
Cheers,
Lee

Lee,
Try to run: oc extract secret/external-certs-mqtt
This should create the files. The doc needs some updating, sorry!

Thank you so much for the quick reply. It solves the issue. :+1:

Should "Hello EnMasse" be showing on the receiver console, after ./tls_mqtt_send.py -c "$(oc get route -o jsonpath='{.spec.host}' mqtt)" -p 443 -t mytopic -q 1 -s ./server-cert.pem -m "Hello EnMasse" is executed?

I can tell from the console that the connection to enmasse is established. However, I did not see the message received in the console from the subscripted topic "mytopic". Is it expected?

This should've worked. Can you run the clients with environment variable PN_TRACE_FRM=1 ?
Also, providing the output after running this log printing script would be useful: https://github.com/EnMasseProject/enmasse/blob/master/systemtests/scripts/print_logs.sh

Hi @lulf, I ran the clients with what you recommended. However, I am still seeing the same issue.
Here are the output after running the log printing:
testlog.txt
I am using the release version 0.12.3
Thank you.

Here is the summary of the log file:
#######################################################################
oc logs -c address-controller address-controller-3982660230-sprz7 :
....... (to ignore identical logging information)
2017-09-05 15:32:08 INFO  AddressController:85 - Check address in address space controller: []
2017-09-05 15:32:08 INFO  AddressController:106 - Current set of clusters: []
#######################################################################
oc logs -c ragent admin-2502725539-dl5b4 :
Fri, 01 Sep 2017 14:12:34 GMT ragent info Router agent starting
Fri, 01 Sep 2017 14:12:34 GMT ragent info Subscribing with selector: {"name":"ragent"}
Fri, 01 Sep 2017 14:12:34 GMT ragent info Router agent listening on 55672
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-1] error: Error: connect ECONNREFUSED <IP_ADDRESS>:5672
[connection-1] disconnected
[connection-2] disconnected
[connection-3] disconnected
[connection-4] disconnected
[connection-5] disconnected
[connection-6] disconnected
[connection-7] disconnected
[connection-8] disconnected
[connection-9] disconnected
[connection-10] disconnected
[connection-11] disconnected
[connection-12] disconnected
[connection-13] disconnected
[connection-14] disconnected
Fri, 01 Sep 2017 14:14:50 GMT ragent info Router connected from Router.qdrouterd-2034113809-5w0s8
Fri, 01 Sep 2017 14:14:50 GMT ragent info retrieved listeners for Router.qdrouterd-2034113809-5w0s8: <IP_ADDRESS>:55672
Fri, 01 Sep 2017 14:14:50 GMT ragent info Router.qdrouterd-2034113809-5w0s8 not ready for connectivity check: false false
Fri, 01 Sep 2017 14:14:50 GMT ragent info retrieved connectors for Router.qdrouterd-2034113809-5w0s8:
Fri, 01 Sep 2017 14:14:50 GMT ragent info Router.qdrouterd-2034113809-5w0s8 not ready for connectivity check: false true
Fri, 01 Sep 2017 14:14:50 GMT ragent info EXTRACT, results: , attributes: name,identity,type,prefix,distribution,waypoint,ingressPhase,egressPhase
Fri, 01 Sep 2017 14:14:50 GMT ragent info retrieved addresses for Router.qdrouterd-2034113809-5w0s8: {}
Fri, 01 Sep 2017 14:14:50 GMT ragent info retrieved link routes for Router.qdrouterd-2034113809-5w0s8: raw-> [{"name":"override.lwt_in","identity":"1","type":"org.apache.qpid.dispatch.router.config.linkRoute","prefix":"$lwt","distribution":"linkBalanced","connection":null,"containerId":"lwt-service","dir":"in","operStatus":"active"},{"name":"override.lwt_out","identity":"2","type":"org.apache.qpid.dispatch.router.config.linkRoute","prefix":"$lwt","distribution":"linkBalanced","connection":null,"containerId":"lwt-service","dir":"out","operStatus":"active"},{"name":"override.locate","identity":"3","type":"org.apache.qpid.dispatch.router.config.linkRoute","prefix":"locate","distribution":"linkBalanced","connection":"subscription-service","containerId":null,"dir":"out","operStatus":"inactive"}]
Fri, 01 Sep 2017 14:14:50 GMT ragent info retrieved link routes for Router.qdrouterd-2034113809-5w0s8: {}
Fri, 01 Sep 2017 14:14:50 GMT ragent info updating addresses for Router.qdrouterd-2034113809-5w0s8
Fri, 01 Sep 2017 14:14:50 GMT ragent info checking connectivity for Router.qdrouterd-2034113809-5w0s8
Fri, 01 Sep 2017 14:14:50 GMT ragent info checking connectors on router Router.qdrouterd-2034113809-5w0s8, missing=, stale=
[connection-16] disconnected
[connection-17] disconnected
......
#######################################################################
oc logs -c mqtt-gateway-tls mqtt-gateway-2959230739-rh3kf :
.   ____          _            __ _ _
/\ / ' __ _ () __  __ _ \ \ \
( ( )__ | '_ | '| | ' / ` | \ \ \
\/  )| |)| | | | | || (| |  ) ) ) )
'  || .__|| ||| |_, | / / / /
=========||==============|/=////
:: Spring Boot ::        (v1.5.4.RELEASE)
14:13:12.119 [main] INFO  enmasse.mqtt.Application - Starting Application on mqtt-gateway-2959230739-rh3kf with PID 1 (/mqtt-gateway.jar started by ? in /)
14:13:12.122 [main] DEBUG enmasse.mqtt.Application - Running with Spring Boot v1.5.4.RELEASE, Spring v4.3.9.RELEASE
14:13:12.122 [main] INFO  enmasse.mqtt.Application - No active profile set, falling back to default profiles: default
14:13:12.191 [main] INFO  o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@443b7951: startup date [Fri Sep 01 14:13:12 UTC 2017]; root of context hierarchy
14:13:12.929 [main] DEBUG enmasse.mqtt.Application - Starting up 1 instances of MQTT gateway verticle
14:13:12.962 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - Starting MQTT gateway verticle...
14:13:12.966 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - SSL/TLS support enabled key /etc/mqtt-gateway/ssl/server-key.pem cert /etc/mqtt-gateway/ssl/server-cert.pem
14:13:13.415 [vert.x-eventloop-thread-0] WARN  i.netty.util.internal.MacAddressUtil - Failed to find a usable hardware address from the network interfaces; using random bytes: d9:17:b6:9c:f0:4f:e6:76
14:13:13.455 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - MQTT gateway running on <IP_ADDRESS>:8883
14:13:13.456 [vert.x-eventloop-thread-1] DEBUG enmasse.mqtt.Application - Verticle instance 1 deployed [fffc862a-55e2-4ea0-95e5-91a691c63037]
14:13:13.456 [main] INFO  enmasse.mqtt.Application - MQTT gateway startup completed successfully
14:13:13.591 [main] INFO  o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
14:13:13.601 [main] INFO  enmasse.mqtt.Application - Started Application in 1.952 seconds (JVM running for 3.148)
......
15:31:07.765 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - PUBLISH [1] from MQTT client send
15:31:15.178 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51076 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:31:25.184 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51134 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:31:27.794 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - PUBLISH [1] from MQTT client send
15:31:35.177 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51186 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:31:45.184 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51238 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:31:47.837 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - PUBLISH [1] from MQTT client send
15:31:55.179 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51288 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:32:05.182 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51352 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:32:07.880 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - PUBLISH [1] from MQTT client send
15:32:15.180 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51410 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:32:25.185 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51464 failed to connect over ssl: java.nio.channels.ClosedChannelException
15:32:27.909 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - PUBLISH [1] from MQTT client send
15:32:35.244 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerBase - Client from origin /<IP_ADDRESS>:51516 failed to connect over ssl: java.nio.channels.ClosedChannelException
#######################################################################
oc logs -c mqtt-gateway mqtt-gateway-2959230739-rh3kf :
.   ____          _            __ _ _
/\ / ' __ _ () __  __ _ \ \ \
( ( )__ | '_ | '| | ' / ` | \ \ \
\/  )| |)| | | | | || (| |  ) ) ) )
'  || .__|| ||| |_, | / / / /
=========||==============|/=////
:: Spring Boot ::        (v1.5.4.RELEASE)
14:12:43.720 [main] INFO  enmasse.mqtt.Application - Starting Application on mqtt-gateway-2959230739-rh3kf with PID 1 (/mqtt-gateway.jar started by ? in /)
14:12:43.735 [main] DEBUG enmasse.mqtt.Application - Running with Spring Boot v1.5.4.RELEASE, Spring v4.3.9.RELEASE
14:12:43.740 [main] INFO  enmasse.mqtt.Application - No active profile set, falling back to default profiles: default
14:12:43.972 [main] INFO  o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@443b7951: startup date [Fri Sep 01 14:12:43 UTC 2017]; root of context hierarchy
14:12:46.523 [main] DEBUG enmasse.mqtt.Application - Starting up 1 instances of MQTT gateway verticle
14:12:46.654 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - Starting MQTT gateway verticle...
14:12:47.587 [vert.x-eventloop-thread-0] WARN  i.netty.util.internal.MacAddressUtil - Failed to find a usable hardware address from the network interfaces; using random bytes: b9:42:61:e4:16:7b:d4:a8
14:12:47.682 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - MQTT gateway running on <IP_ADDRESS>:1883
14:12:47.702 [vert.x-eventloop-thread-1] DEBUG enmasse.mqtt.Application - Verticle instance 1 deployed [b6bacf4e-88a9-42ee-aed7-7e5c569ee5bc]
14:12:47.702 [main] INFO  enmasse.mqtt.Application - MQTT gateway startup completed successfully
14:12:48.825 [main] INFO  o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
14:12:48.839 [main] INFO  enmasse.mqtt.Application - Started Application in 7.667 seconds (JVM running for 14.423)
#######################################################################
oc logs -c mqtt-lwt mqtt-lwt-1280706187-5b88z :
.   ____          _            __ _ _
/\ / ' __ _ () __  __ _ \ \ \
( ( )__ | '_ | '| | ' / ` | \ \ \
\/  )| |)| | | | | || (| |  ) ) ) )
'  || .__|| ||| |_, | / / / /
=========||==============|/=////
:: Spring Boot ::        (v1.5.4.RELEASE)
14:12:42.604 [main] INFO  enmasse.mqtt.Application - Starting Application on mqtt-lwt-1280706187-5b88z with PID 1 (/mqtt-lwt.jar started by ? in /)
14:12:42.616 [main] DEBUG enmasse.mqtt.Application - Running with Spring Boot v1.5.4.RELEASE, Spring v4.3.9.RELEASE
14:12:42.620 [main] INFO  enmasse.mqtt.Application - No active profile set, falling back to default profiles: default
14:12:42.756 [main] INFO  o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@443b7951: startup date [Fri Sep 01 14:12:42 UTC 2017]; root of context hierarchy
14:12:44.727 [main] DEBUG enmasse.mqtt.Application - Starting up 1 instances of MQTT LWT service verticle
14:12:44.823 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttLwt - Starting MQTT LWT service verticle...
14:12:45.745 [vert.x-eventloop-thread-0] WARN  i.netty.util.internal.MacAddressUtil - Failed to find a usable hardware address from the network interfaces; using random bytes: 61:c2:86:1b:13:69:61:c3
14:12:46.525 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttLwt - MQTT LWT service connected to the messaging service internal ...
14:12:46.571 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttLwt - MQTT LWT service connected to the messaging service ...
14:12:46.575 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttLwt - MQTT LWT service connected to the storage service ...
14:12:46.588 [vert.x-eventloop-thread-1] DEBUG enmasse.mqtt.Application - Verticle instance 1 deployed [ac10cef2-49c3-4c55-80f8-654326b635d0]
14:12:46.589 [main] INFO  enmasse.mqtt.Application - MQTT LWT service startup completed successfully
14:12:47.330 [main] INFO  o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
14:12:47.396 [main] INFO  enmasse.mqtt.Application - Started Application in 6.442 seconds (JVM running for 14.479)
14:35:10.502 [vert.x-eventloop-thread-0] WARN  i.v.proton.impl.ProtonConnectionImpl - Connection closed with error
io.vertx.core.impl.NoStackTraceThrowable: Error{condition=amqp:resource-limit-exceeded, description='local-idle-timeout expired', info=null}
14:35:11.632 [vert.x-eventloop-thread-0] ERROR i.vertx.core.net.impl.ConnectionBase - java.io.IOException: Connection reset by peer
#######################################################################
oc logs -c router qdrouterd-2034113809-5w0s8 :
......
2017-09-05 15:32:40.965849 +0000 SERVER (info) Accepting incoming AMQP connection from <IP_ADDRESS>:58976 to <IP_ADDRESS>:5672 with connection id [58377]
2017-09-05 15:32:40.986334 +0000 SERVER (info) Accepting incoming AMQP connection from <IP_ADDRESS>:58978 to <IP_ADDRESS>:5672 with connection id [58378]
2017-09-05 15:32:46.250791 +0000 SERVER (info) Accepting incoming AMQP connection from <IP_ADDRESS>:51216 to <IP_ADDRESS>:5672 with connection id [58379]
#######################################################################
oc rsh -c router qdrouterd-2034113809-5w0s8 qdmanage query --type=address :
rpc error: code = 13 desc = invalid header field value "oci runtime error: exec failed: container_linux.go:247: starting container process caused "no such file or directory"\n"
#######################################################################
oc rsh -c router qdrouterd-2034113809-5w0s8 qdmanage query --type=connection :
rpc error: code = 13 desc = invalid header field value "oci runtime error: exec failed: container_linux.go:247: starting container process caused "no such file or directory"\n"
#######################################################################
oc rsh -c router qdrouterd-2034113809-5w0s8 qdmanage query --type=connector :
rpc error: code = 13 desc = invalid header field value "oci runtime error: exec failed: container_linux.go:247: starting container process caused "no such file or directory"\n"
#######################################################################
oc logs -c metrics qdrouterd-2034113809-5w0s8 :
#######################################################################
oc logs -c subserv subserv-3953856722-7pmg3 :
Tue, 05 Sep 2017 14:35:17 GMT subserv info Starting subserv
Tue, 05 Sep 2017 14:35:17 GMT subserv info Connecting to config service <IP_ADDRESS>:5672 with id=configuration-service
Tue, 05 Sep 2017 14:35:17 GMT subserv debug opening link to configuration service...
[messaging-service] error: Error: connect ENETUNREACH <IP_ADDRESS>:5672
Tue, 05 Sep 2017 14:35:17 GMT subserv debug disconnected undefined [messaging-service]
[configuration-service] error: Error: connect ENETUNREACH <IP_ADDRESS>:5672
Tue, 05 Sep 2017 14:35:18 GMT subserv debug disconnected undefined [configuration-service]
Tue, 05 Sep 2017 14:35:18 GMT subserv debug connected Router.qdrouterd-2034113809-5w0s8 [connection-1]
[messaging-service] error: Error: connect ENETUNREACH <IP_ADDRESS>:5672
Tue, 05 Sep 2017 14:35:21 GMT subserv debug disconnected undefined [messaging-service]
[messaging-service] error: Error: connect ENETUNREACH <IP_ADDRESS>:5672
Tue, 05 Sep 2017 14:35:24 GMT subserv debug disconnected undefined [messaging-service]
Tue, 05 Sep 2017 14:35:24 GMT subserv debug connected Router.qdrouterd-2034113809-5w0s8 [messaging-service]
Tue, 05 Sep 2017 14:35:24 GMT subserv debug opened anonymous sender
Tue, 05 Sep 2017 14:35:26 GMT subserv debug disconnected undefined [connection-2]
[configuration-service] error: Error: connect ENETUNREACH <IP_ADDRESS>:5672
Tue, 05 Sep 2017 14:35:33 GMT subserv debug disconnected undefined [configuration-service]
Tue, 05 Sep 2017 14:35:33 GMT subserv debug connected configuration-service [configuration-service]
......
 If not, how can I do so? Sorry, I am very new to the EnMasse.

Yes, at present you do need to create the topic. The simplest way is to use the enmasse console. You can get a URL to this from the console route in the openshift console. Alternatively you can use the REST api directly, see 'configuring addresses' in https://github.com/EnMasseProject/enmasse/blob/master/documentation/getting-started/openshift.adoc
I agree that from MQTT you probably wouldn't expect to have to do anything here. The mapping of the MQTT topic space onto the more general EnMasse (AMQP) address-space is something we want to do give some more thought to. At present the base topics exposed for MQTT are those created explicitly. Another option is to have a single enmasse topic address that represents the whole MQTT topic-space (and perhaps let you choose between these)

Thank you so much for the help, @grs . After creating "my topic" via the rest api, "Hello EnMasse" is showing in the console. Do you think if this project is production-ready? Thank you.

@LeeWong it is by no means production-ready, but we are working towards that goal. We still have several features that we need done before we consider the project 'ready', but even then we need to do stress and performance testing, improving documentation etc. before I'd say it's production ready.
We're open for contributions in any of the above areas though.

@lulf I will start with contributing the documentation as I am getting more familiar with EnMasses. ;) What are the features that are planned for the production readiness?

@LeeWong Great! The past month we have currently been working on:

Authentication of clients: https://github.com/EnMasseProject/enmasse/blob/master/documentation/design/authentication.adoc
Authentication of internal components: https://github.com/EnMasseProject/enmasse/blob/master/documentation/design/internal-tls.adoc

This means that in the next release, you will be able to control who is allowed to connect and send/receive messages, and not able to connect to the internal components from untrusted clients.
In the next month, we will focus on some technical debt and stability issues, as well as a 'brokered' address space. The brokered address space will be a more 'light-weight' alternative to the 'standard' address space, where we only deploy a broker. This will limit scalability, but will in turn allow more advanced features such as message grouping and transactions.
After that, the priorities are more uncertain, but authorization (on individual addresses and send/receive) is something that is coming soon.

@lulf Thanks for the detailed answer. I am very looking forward to seeing how well this project will grow. l think the auto scaledown feature could be considered for the later release.


Run codecov before every PR

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

Project coverage is 100.00%. Comparing base (1e15c3b) to head (e61cf5b).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main        #5   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            9         9
  Lines          790       790
=========================================
  Hits           790       790

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


v11.3.2 improve entity: game result

Current coverage is 97.57%

Merging #244 into master will not affect coverage as of a43ec58

@@            master    #244   diff @@
======================================
  Files           26      26
  Stmts          371     371
  Branches         0       0
  Methods         81      81
======================================
  Hit            362     362
  Partial          0       0
  Missed           9       9

Review entire Coverage Diff as of a43ec58

Powered by Codecov. Updated on successful CI builds.


remove WindowsDirectory

Description
Having native code complicates the gradle build and causes bugs.
The Direct-IO directory no longer needs native code, it uses JDK APIs. So the only thing left is WindowsDirectory.
I'm not sure this thing is really faster than the JDK. If i remember, the synchronization that causes the issues was in windows. Honestly, users should use MmapDirectory on windows IMO.
So maybe net/net it is better for our windows support to remove this thing?

I've no idea who uses this thing but I'm open to removing this - it does complicate things a bit.

+1

I kinda feel that going forwards, we would not do things this way with C code, but instead look to use the new FFI interfaces being added to openjdk if we really need to call native stuff...

If there are no objections, I'll handle the removal - there are some gradle scripts involved there that will also benefit from the cleanup.

Project Panama is the way to go, no need for FFI or anything like that. You can create a MethodHandle that downcalls into libc/kernel.dll.
I have an example in some talk.

This is how to call getpid() with Java 19 (you need to enable preview APIS and also enable access to native code (disabled for secuirty by default):
var cLinker = Linker.nativeLinker();
// Using a MethodHandle
MethodHandle getpidMH = cLinker.downcallHandle(cLinker.defaultLookup().lookup("getpid").get(),
                    FunctionDescriptor.of(JAVA_INT));
int pid    = (int) getpidMH.invokeExact();
System.out.printf("MethodHandle calling getpid() (%d)\n", pid);

yeah, sorry when i said FFI i meant panama (its an FFI to me).

That's pretty neat.

We should apply this to main, but I think there's no harm to backport to 9.x, right? It's not a stable API and there is a safe replacement.

Let's remove it. Actually the whole code is not tested at all. The removed Testcase extends LuceneTestCase and not BaseDirectoryTestcase. The only thing it does is to instantiate a Directory and an IndexOutput (!!) that is not even triggering custom code.

Applied on 9x and main.


Update README

A standard README file typically includes several key sections to provide a clear and comprehensive overview of a project. Here's a general structure you can follow:
Project Name
Description
A brief overview of what the project is about, its purpose, and key features. Explain why the project is useful or interesting.
Table of Contents(also need some imgs)

Installation
Usage
Contributing
License
Acknowledgements

Installation
Instructions for installing and setting up the project. Include prerequisites, installation steps, and any configuration required.

Totally agree. We should update it.


Wrong Values Total AC Output Power (Active)

I have with the new Version wrong values from Total AC Output Power (Active)
On Webinterface of the Logger i have 15W
Data in IOBroker is 1310720 W
WR is DEYE 1600
Number of Register 86 Rule 3 Key Apo_t1 Name Total AC Output Power (Active) "Einheit W" Faktor 1

Fixed in 0.0.11


[SKOOP-95] Remove control to invite users from the edit community dialog

Removed control to invite users from the edit community dialog
@LebedkoDmitry could you please take a look?

Codecov Report

Merging #61 into master will increase coverage by 0.35%.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           master    #61      +/-   ##
========================================
+ Coverage   72.64%    73%   +0.35%
========================================
  Files          66     66
  Lines        1627   1604      -23
  Branches      114    112       -2
========================================
- Hits         1182   1171      -11
+ Misses        413    402      -11
+ Partials       32     31       -1

Impacted Files
Coverage Δ

src/app/communities/communities-edit.component.ts
78.26% <ø> (+6.08%)
:arrow_up:

Continue to review full report at Codecov.

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


add ToR for TT-OS

Thanks for the comments @golfvert.  Updated for review/comment.

@golfvert small update in d2cfbc1b544bf4d27c2ed3d1012d90d83ad6e05e for your review.


[MISC] Ask questions about Turbomind's scheduling strategy

As the title suggests, where can i find the implementation of Turbomind's scheduling strategy, e.g. persistent batch?
Is it dependent on the function void LlamaBatch<T>::InternalThreadEntry(int device_id) in LlamaBatch.cc for this?

emm... well i think i find answers in #126


Error adding multiple E-mails

Get the following error when adding multiple emails using the above syntax:
Set-PnPRequestAccessEmails -Emails<EMAIL_ADDRESS><EMAIL_ADDRESS>)
Set-PnPRequestAccessEmails : Cannot bind argument to parameter 'Emails' because it is an empty array.

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

ID: d60fca92-0e4a-dbed-8e57-1b8a7ed9bc97
Version Independent ID: 334d0158-383e-3232-7255-1eef47d70cd7
Content: Set-PnPRequestAccessEmails (sharepoint-pnp)
Content Source: sharepoint/sharepoint-ps/sharepoint-pnp/Set-PnPRequestAccessEmails.md
GitHub Login: @techwriter40
Microsoft Alias: kirks

@officedocsbot assign @yogkumgit

Hello @Pasark Thanks for your feedback.
I created an issue on the corresponding repo, please follow that issue for later updates about your inquiry.
Thank you

@get-itips Thank you very much for reporting the issue in Sharepoint repository and linking here and also sharing this explanation. @Pasark   Hope this comment is helpful for you. These repos are all open source and the community would welcome to contribute. Thanks for taking out some time to open the issue. Appreciate and encourage you to follow https://github.com/SharePoint/PnP-PowerShell/

@officedocsbot close


Yet more edits to the first section, tightening up the paragraphs. Also s/web site/website/ throughout for consistency

I changed the order of the paragraphs so they made more sense.
And I added a hook to connect this intro to the rest of the chapter, after hearing your advice that the chapter needs more connecting words.

It looks good, sorry for the slow review


Real time detection issue

Hi, thanks for your valuable work! I have achieved similar model performance result. However, I have few questions related to the real time detection, much appreciate it if you could clarify :)
In the paper, it mentions that 'robust normalization of the error values of each sensor'. The normalization parameters median and inter-quartile range are calculated for evaluation set and testing set separately, which means I only can start doing anomaly detection after the GDN model predicts all the data in the testing dataset (i.e., after prediction for all the testing data, it calculates the residual, then calculate the mean and IQR, and use these to normalize the residual, then comparing with the threshsold to determine anomaly or normal). Hence, this method is not a real time detection method, right? (please correct me if I am wrong)
My question is that, is it possible to make it real time? e.g., use the mean and IQR of the evaluation set residuals to normalize the residual of the testing set data. I have tried using the mean and IQR of the evaluation set prediction residuals to normalize the testing set prediction residual, below is the result I got. Just curious, because the threshold is obtained from the evaluation set, why using the mean and IQR of the evaluation set residual to normalize the residuals of the testing dataset can result in a poor detection result?
F1 score:  0.007254261878853826
Precision:  0.9523809523809523
Recall:  0.0036409976333515383
Thanks and really looking forward to hearing from you!!

Thanks for your interest in our work.
Yes, the current method is not a real time detection method as it requires normalization based on the testing set. From my experience, the great result differences between using evaluation and testing set is mainly due to the situation when testing data have large distribution shift with the evaluation data. For example, imagine that there is a sensor behaving totally differently in evaluation data and test data, using the evaluation data to do normalization for the test data will probably induce irregular values and hence leads to inaccurate forecasting or predictions. But if the evaluation data and test data is guaranteed to no or little distribution shift, the results should be similar whenever evaluation or test data is used for normalization.
Hope it clarifies :)

Hi Ailin, much appreciate it for your quick response! And yea thanks for your explanation, it is much clear now :)
Just two more questions: If this method is not a real time detection method, are the methods that used to compare with GDN also non-real-time detection methods? e.g., MAD-GAN, LSTM-VAE, and DAGMM in table 2?
The second question is: I am thinking that non-real-time detection has its opportunity of obtaining an overview of the residuals statistics before making the decision, so generally speaking, the observed statistics can be beneficial to improve the anomaly detection performance comparing with real-time detection methods, right?
Thank you very much for your time and looking forward to hearing from you!

Hi Ailin, much appreciate it for your quick response! And yea thanks for your explanation, it is much clear now :)
Just two more questions: If this method is not a real time detection method, are the methods that used to compare with GDN also non-real-time detection methods? e.g., MAD-GAN, LSTM-VAE, and DAGMM in table 2?
The second question is: I am thinking that non-real-time detection has its opportunity of obtaining an overview of the residuals statistics before making the decision, so generally speaking, the observed statistics can be beneficial to improve the anomaly detection performance comparing with real-time detection methods, right?
Thank you very much for your time and looking forward to hearing from you!

Glad to hear that it clarifies :)

If looking into the implementation of MAD-GAN (https://github.com/LiDan456/MAD-GANs/blob/3139a73a4112d3f3f18182c9a6cdc2c671e7cfe8/data_utils.py#L143), they have also adopted the statistics from test set to process, so it is not strictly real-time detection. I think DAGMM should be able to detect based on single-point data and without using testing statistics (based on its paper) and LSTM-VAE might be a bit hard to say as they would usually use a sliding window as input and check the reconstruction error based on the sliding window to select anomalous points, which means that they might require data from T+k time step to decide if T time step has error or not.

Sure, online detection is a more difficult and challenging task especially when no further information given. It is hard to know if a sudden change is an anomaly or just due to some normal operation but not recorded in the training/evaluation data if no information is given. Knowing some statistics is a way to mitigate this issue and it could also be potentially addressed by knowing some knowledge(e.g., informed by an expert that a manual operation is performed).

Thanks Ailin for your prompt and detailed explanation, hope you have a nice rest of the week!


added css for website more responsive and some html

Description
[Please include a brief description of the changes or features added]
Related Issues
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]

Closes #

Type of PR

[x] Bug fix
[x] Feature enhancement
[ ] Documentation update
[x] Other (specify): _______________

Screenshots / videos (if applicable)
[Attach any relevant screenshots or videos demonstrating the changes]
Checklist

[x] I have gone through the contributing guide
[x] I have updated my branch and synced it with project main branch before making this PR
[x] I have performed a self-review of my code
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

Additional context:
[Include any additional information or context that might be helpful for reviewers.]

Please take a look into my code and merge the PR

@143divya What the changes you have done here?

@143divya What the changes you have done here?

I have added CSS in this code and corrected Html code at one place.


TypeScript / Solution prompts to Common Problems [Feature Request]

From @xooxdoo on July 18, 2016 2:29
In Visual C#, I'm very used to visual studio prompting me solutions to common problems like adding variable declarations and creating a file with a template ready to be used.
I know TypeScript is lot different than C#, these prompts speed the development process a huge bunch.
IMHO, I would love to see/use :
PROBLEM FIXES

Undeclared variables: if a variable is not defined prompt me to add it either as a local variable a global variable or a global variable declaration
Forgotten this: I wish TypeScript would stop asking me to type this (or make it optional :ghost:), but no I forget it all the time, would love a fast way to refactor that (one click and boom :smile:); if there is a member with that name prompt me to refactor and add it
Undeclared member values: Also, after working with pure JS, you forget that you have to declare them in TypeScript
Undeclared instantiated/extended classes: if say in new Texture("player.png"), Texture is not yet declared prompt to add an implementation or a declaration for it
Undeclared implemented/extended interfaces: if say in interface B extends A {} or class C implements A, A is not yet declared prompt to add an a declaration for it
Undeclared callable: you know the gist, if its a function/method call ask me to declare it
Declare in a new file: would love for 4 and 6 to add the option to declare them in a separate file, just the class declaration as default and make the template configurable globally or per project

PS: please make it work also with Symbols
CODE GEN

Genarate a constructor*
Generate getters and setters*: C# property equiv.
Generate getters*
Generate setters*
Extract method: when a statement or more are selected, add extraction utility
Generate method
Generate toString
Generate [Symbol.iterator]

*: from member declarations
PS: in 2 here is what I meant;
private _name: string;
public get name() { return this._name; }
public set name(value: string) { this._name = value; }

Copied from original issue: Microsoft/vscode#9423

Moving to the TS team which would provide these features.

Hello, I?m learning TypeScript Language Service API and developed ac couple of refactor suggestions you mention here: create variable declaration and constructor declaration:
https://github.com/cancerberoSgx/typescript-plugins-of-mine/tree/master/typescript-plugin-proactive-code-fixes

We have quick fixes now!


Improve lab components visibility on the site

Update copy on components overview page
Add "In progress" status to lab components page heading
Add 🚧 to sidebar label for lab components

I thought the table on the page was also being removed?

I thought we were keeping it until we have the docs for ag grid theme but I can remove it if that's not the case

it looks like the sort order is the same, is this something we can change?

@joshwooding did we agree we would make the change in Mosaic rather than changing the order for all core component pages individually?


signal-desktop: 5.39.0 -> 5.41.0

Description of changes
New releases: https://github.com/signalapp/Signal-Desktop/releases/tag/v5.41.0
https://github.com/signalapp/Signal-Desktop/releases/tag/v5.40.0

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 170861 run on x86_64-linux 1

1 package built:

signal-desktop


Changing name of memory size variables

Is your feature request related to a problem? Please describe.
I think MEM_INT_DMEM_SIZE and MEM_INT_IMEM_SIZE should be general variables that should apply even we use exrernal memories i.e. when MEM_INT_DMEM_EN and MEM_INT_IMEM_EN are false.
Describe the solution you'd like
So INT refers to Internal memory is it right? Can we remove INT to generalize these variables?

So INT refers to Internal memory is it right?

That's right.

Can we remove INT to generalize these variables?

What do you mean with "generalize"? All the generics are used to configure processor-internal features. There is no way to use the generics of a module to configure something that is outside of that module (like processor-external memory).

I thought that the memory sizes are stored in neorv32.neorv32_sysinfo in both cases (Internal or external memory) and the size variables (MEM_INT_IMEM_SIZE and MEM_INT_DMEM_SIZE) should be initialized with accurate values in both cases.

Ah ok, I think I understand your use case now :wink:
The SYSINFO module is intended to provide information about the processor configuration itself (i.e. all the internal stuff). Hence, only the internal memory configuration is available from that module.
If a setup uses processor-external memories (note that there could be a lot of different memories attached to processor) the designer is responsible to provide any kind of hardware discovery mechanism (if required at all).
For example, you could add another memory to the external bus system that features a tiny ROM (just like SYSINFO) that shows the sizes (and maybe the base addresses) of all the memories that you have attached to the core.

Thanks.


Added Python solution to Round C Stable wall problem

Have you read the Contribution Guidelines?
(Yes, I have read contribution guidelines)
Description
Added Folder Drishtant-python in folder Stable Walls containing python solution to round C problem named Stable Walls.
please merge my pull request under Hactoberfest 2021
Checklist

[ YES] I've read the contribution guidelines.
[ YES] I've checked the issue list before deciding what to submit.

Related Issues #8
Fixes Issue #8

Merged 🚀

Its showing now thanks :)


MAHOUT-1912: CLI driver tests not working with vienniacl

Issue has been fixed by previous VCL configurations.

committed to master


Change "Requirements" to "Basic Needs"

@roryaronson made a good point that "Basic Needs" is probably a more approachable way to word this. We should consider changing our strings. Thoughts?

Agreed. I was going to comment on this yesterday.

I've changed the en.yml for this, but we should probably also change our actual variables (class names in html) to make this easier to find).

Thanks Simon. I never got this one in. Agreed on the variables.
On Fri, Jan 16, 2015 at 8:35 PM, Simon<EMAIL_ADDRESS>wrote:

I've changed the en.yml for this, but we should probably also change our actual variables (class names in html) to make this easier to find).
Reply to this email directly or view it on GitHub:
https://github.com/openfarmcc/OpenFarm/issues/426#issuecomment-70354383


State Machine in Container: implementation glitch ?

This code:
    catch (Throwable ex)
    {
        throw new UncheckedException(ex);
    }

in method Container.start() leaves the Container state in STARTING. Is that the intention ? Wouldn't we rather want to set the state back to CREATED before throwing the exception ?

Looks like the same is true in stop as well. Once there has been a failure the container there isn't a whole lot the framework can do other than expect the application/developer to take some action.
However, I agree the framework should not be left in an intermittent state and the behavior isn't correct.
I think the correct solution would be to introduce another state for error cases so it's clear to the application that the container is in an invalid state.

Exactly. I teach UML classes, including State Machine diagrams. One of the
ground rules I and other colleagues always hammer into their heads: make
sure you have an ERROR state ( or FAILED, or whatever you call it ) you can
always reach from any state whose outgoing transitions may fail. From ERROR
/ FAILED, you'll prolly want to be able to reach both the INITIAL state (
in the case of Container: CREATED ), or an extra MAINTENANCE state.
*Fortuna audaces adiuvat - hos solos ? *
On 5 April 2015 at 11:20, Joe Hegarty<EMAIL_ADDRESS>wrote:

Looks like the same is true in stop as well. Once there has been a failure
the container there isn't a whole lot the framework can do other than
expect the application/developer to take some action.
However, I agree the framework should not be left in an intermittent state
and the behavior isn't correct.
I think the correct solution would be to introduce another state for error
cases so it's clear to the application that the container is in an invalid
state.
—
Reply to this email directly or view it on GitHub
https://github.com/electronicarts/orbit/issues/12#issuecomment-89739036.

I've pushed a quick fix, thanks for pointing it out.
I've also made a note to revisit this more closely and clean up the flow.


Improve how-to-upload

@baiddd It's good that you already made the docs on how to upload. I just did some adjustment to it, some adjustment on the organization, removed some steps which I think it's not necessary (e.g. check version), I reduced the bold headers because I feel the font was too heavy to read.
Another thought, I feel like the gifs in each line is a bit too disruptive to the flow. For example, you cannot really choose when to start the gif.
An other idea is to move the markdown content to imjoy-slides, so the user can follow it slide by slide. what do you think? Could you try to make such slides?

Great idea, thanks for the feedback, i will try Imjoy slides and keep you posted


filter for archive ttl (by name or SQL)

currently archive ttl docs show this, would be great if u could filter wfs by some name to not be deleted (or alternatively delete only those name prefixes specified).
Archive TTL
You can configure the time period to keep archived workflows before they will be deleted by the archived workflow garbage collection function.
The default is forever.
Example:
    persistence:
      archiveTTL: 10d

How about this? Under the persistence configuration, add a field named keepPrefixes. All matched workflows will not be deleted.
    persistence:
      archiveTTL: 10d
      keepPrefixes:
        - xxxx
        - xxxx

How about this? Under the persistence configuration, add a field named keepPrefixes. All matched workflows will not be deleted.
    persistence:
      archiveTTL: 10d
      keepPrefixes:
        - xxxx
        - xxxx

I'm not sure I like this design.
Prefixes implies that you're naming your workflows in a common, but not otherwise required manner.
Changing the list of preserved archived workflows is done centrally, and for big organizations would require coordination between the teams with the workflows and those with control over the controller.
If we are to stick to something like this I'd probably ask for something more complex such as using label matching for grouping workflows, along with namespace selection. Harder to implement as it needs more columns in the database
persistence:
  archiveTTL: 10d
  ttlOverride: # I dislike this name, naming things is hard
    - labels:
        labelname: value1
        otherlabel: value2
      namespaces:
        - production
      ttl: 20d

I was wondering about a new field on the workflow itself, which could specify the archiveTTL for this workflow. This would override the central archiveTTL. It'd still want a new column, but is much simpler in other respects. I prefer this.

      keepPrefixes:

I have to admit that your design is more flexible and accurate. However, based on my experience, there are also many users who rely on naming to differentiate between different workflows (just like the author of this issue). This number of users is almost as large as those who rely on labels or namespaces to distinguish workflows. In such scenarios, the prefix matching design is very useful.
Additionally, the implementation of prefix matching does not conflict with your design. We can first implement the prefix matching design to solve part of the problem. Afterward, I am also willing to implement the solutions for label matching and namespace selection.

How about this? Under the persistence configuration, add a field named keepPrefixes. All matched workflows will not be deleted.
    persistence:
      archiveTTL: 10d
      keepPrefixes:
        - xxxx
        - xxxx

I'm not sure I like this design.
Prefixes implies that you're naming your workflows in a common, but not otherwise required manner. Changing the list of preserved archived workflows is done centrally, and for big organizations would require coordination between the teams with the workflows and those with control over the controller.
If we are to stick to something like this I'd probably ask for something more complex such as using label matching for grouping workflows, along with namespace selection. Harder to implement as it needs more columns in the database
persistence:
  archiveTTL: 10d
  ttlOverride: # I dislike this name, naming things is hard
    - labels:
        labelname: value1
        otherlabel: value2
      namespaces:
        - production
      ttl: 20d

I was wondering about a new field on the workflow itself, which could specify the archiveTTL for this workflow. This would override the central archiveTTL. It'd still want a new column, but is much simpler in other respects. I prefer this.

I have to admit that your design is more flexible and accurate. However, based on my experience, there are also many users who rely on naming to differentiate between different workflows (just like the author of this issue). This number of users is almost as large as those who rely on labels or namespaces to distinguish workflows. In such scenarios, the prefix matching design is very useful.
Additionally, the implementation of prefix matching does not conflict with your design. We can first implement the prefix matching design to solve part of the problem. Afterward, I am also willing to implement the solutions for label matching and namespace selection.

Yea I was gonna suggest labels as well, especially as that matches k8s conventions and existing fields, particularly the existing archiveLabelSelector

Harder to implement as it needs more columns in the database

There is a label table already that may be able to do much of this. It does require a JOIN and may not be able to implement all types of selectors.

Additionally, the implementation of prefix matching does not conflict with your design. We can first implement the prefix matching design to solve part of the problem.

For consideration, just because something can be done, does not mean that it should be done.
Every feature has a maintenance burden and adding too many features can actually be poor UX, on top of being unsustainable for maintainers. Unconventional features can also be poor UX.

currently archive ttl docs show this, would be great if u could filter wfs by some name to not be deleted (or alternatively delete only those name prefixes specified).

Agree, but there is still one more question. If we only implement the label filter, does the author of the issue need to change their usage to adopt our label filter?

They might have to, unless they use an existing label they already have as the selector/filter. But if a user doesn't use prefixes (not just the issue author aka "OP"), they'd have to adapt that as well.
We usually want to make sure it's usable by the broadest audience in the most conventional way.
If they want to workaround this feature, they could add the labels to their archived tables or could have a CronWorkflow to selectively delete rows instead of using archiveTTL.
archiveTTL is basically a convenience to not need a CronWorkflow, as using one would also require you to have access to the DB and know the schema (which breaks encapsulation a bit).

Also @qingfeng777, if you're responding to the direch preceding comment and in full, you don't need to quote them, and quoting actually makes it harder to read (and if everyone did that we'd have those long quotes of quotes of quotes). Only quote when you're referencing a specific piece of someone's comment or a different comment than the prior one. You might've noticed that I edited some of your comments in order to do so.

OK， thank you for telling me that.  I will try to implement the label matching later.

We don't seem to have considered my preferred design which was to add a field to the workflow itself to control the TTL for it.

I prefer the design that adds a field to the workflow itself to control the TTL as well. I have a basic implementation design, and any advice is welcome.
The idea is to add a TTL field to the workflowSpec. If a workflow does not set its TTL, the original archiveTTL configuration of the controller will be used. Otherwise, the workflow's own TTL will take precedence. A background goroutine will be run to delete all workflows where the current time minus the finish time exceeds the TTL.

Mechanically speaking, that could be done with a label as well, especially to avoid an extra column. It really should be an annotation if used like that though (i.e. "directives" or "non-standard behavior", but we don't have a table of annotations already.
If it's part of the spec, we'd probably want a generated column that pulls it out of the workflow JSON.

The idea is to add a TTL field to the workflowSpec

archiveTTL to be exact. We could potentially make it a subfield of ttlStrategy but I'm not sure about that.

A background goroutine will be run to delete all workflows where the current time minus the finish time exceeds the TTL.

The existing archiveTTL goroutine should probably be re-used.


fix: rename dependency cause error

Resolves #401  .
I've made some attempts and found that to get the aliases of imported dependencies in Cargo.toml, we need to use the cargo_metadata crate to obtain the alias information of dependencies from the project metadata of Cargo. Can we import this new crate?
for example:
#In Cargo.toml
rename_sails={package = "sails-rs"}

#scale_sails_path::gstd::msg::id()
//Will be generated to
rename_sails::gstd::msg::id()

@reviewer-or-team

@ridesun thanks for the idea. We have already implemented our own solution https://github.com/gear-tech/sails/pull/427. This solution require manual actions, but it covers more possible cases like if one decides to re-export the sails-rs crate. Nevertheless, your solution is less demanding in terms of what a person needs to do if they just have a dependency on renamed sails-rs crate as well as it doesn't conflict with the solution provided by us. So if you want to go on with your solution, please update it from the dev branch

Thank you very much for your response. The solution you proposed is very ingenious and covers more possible cases. I will try to continue refining this solution in a new branch according to your requirements. The cargo_metadata crate may have more applications in this project.


Model Declarative Plotting

Closes #33 by creating a declarative model notebook.

Build failure looks unrelated - power cycling.

As far as I know this is ready.

Okay - that should have it all set pending CI. About to get on the plane, so I won't know for awhile.


ERROR: "oo2core_6_win64.dll" not found!!!!

PS C:\Users\Administrator\source\repos> E:\serect\code\GuJian3Tool_win-x64_v1.1.2\GuJian3Tool.exe build E:\serect\asset E:\serect\古剑奇谭三\data_index\300.idx
GuJian3Tool 1.1.2+fead1909671b045bbdf18977eff90436dfacc7cc
Copyright (C) 2021 Kaplas
ERROR: "oo2core_6_win64.dll" not found!!!!
I tried to Add / Replace files in data files but failed.
the errorr displayed in the powershell——"oo2core_6_win64.dll not found!!!!"
however,I have already put the oo2core_6_win64 under the
gujian3managertool before run the command
Can you help me solve this problem？thanks very much！！

我的英语不是很好……TvT，希望能大致表达清楚。

我的英语不是很好……TvT，希望能大致表达清楚。

I didn't use the Steam,…so it displayed 300.idx instead of 303.idx.🧐

I didn't use the Steam,…so it displayed 300.idx instead of 303.idx.🧐

To be honest，I just want to know this dll where I should copy it？？

It is very very very important for
me!!!!🥺
but I don't know what should I do…

Hello!
oo2core_6_win64.dll has to be located in the same directory than GuJian3Tool.exe. I've just published v1.1.3 that solves this bug.
Please, let me know if it works.
PS. Please, next time do not spam in the issues, it is enough with just one message. I read the issues and try to fix them when I have time.

Thank you very much!! it can work successfully！
I'm sorry to send you spam…I'm just too anxious at that time😅
all in all，thanks to your perfect work！！


TypeError: @validator(..., each_item=True) cannot be applied to fields with a schema of json-or-python

Hi, I'm getting this error when running the example https://indominusbyte.github.io/fastapi-jwt-auth/usage/basic/
Traceback (most recent call last):
  File "/Users/kang/Dev/fastapi-jwt-test/main.py", line 3, in <module>
    from fastapi_jwt_auth import AuthJWT
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/fastapi_jwt_auth/__init__.py", line 5, in <module>
    from .auth_jwt import AuthJWT
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/fastapi_jwt_auth/auth_jwt.py", line 6, in <module>
    from fastapi_jwt_auth.auth_config import AuthConfig
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/fastapi_jwt_auth/auth_config.py", line 1, in <module>
    from fastapi_jwt_auth.config import LoadConfig
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/fastapi_jwt_auth/config.py", line 11, in <module>
    class LoadConfig(BaseModel):
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_model_construction.py", line 172, in __new__
    complete_model_class(
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_model_construction.py", line 420, in complete_model_class
    schema = cls.__get_pydantic_core_schema__(cls, handler)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/main.py", line 533, in __get_pydantic_core_schema__
    return __handler(__source)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_schema_generation_shared.py", line 82, in __call__
    schema = self._handler(__source_type)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 266, in generate_schema
    return self._generate_schema_for_type(
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 287, in _generate_schema_for_type
    schema = self._generate_schema(obj)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 477, in _generate_schema
    return self._model_schema(obj)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 353, in _model_schema
    {k: self._generate_md_field_schema(k, v, decorators) for k, v in fields.items()},
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 353, in <dictcomp>
    {k: self._generate_md_field_schema(k, v, decorators) for k, v in fields.items()},
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 618, in _generate_md_field_schema
    common_field = self._common_field_schema(name, field_info, decorators)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 674, in _common_field_schema
    schema = apply_each_item_validators(schema, each_item_validators, name)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 150, in apply_each_item_validators
    schema['schema'] = apply_each_item_validators(schema['schema'], each_item_validators, field_name)
  File "/Users/kang/Dev/fastapi-jwt-test/.venv/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 165, in apply_each_item_validators
    raise TypeError(
TypeError: `@validator(..., each_item=True)` cannot be applied to fields with a schema of json-or-python

Please help. Thank you!

Hello!
The same problem here when updating to fastapi==0.100.0 and pydantic==2.0.2.

I get this error simply by importing fastapi_jwt_auth or any fastapi_jwt_auth Class.  Even if the package/Class is not called.
fastapi==0.100.0
fastapi_jwt_auth==0.5.0
pydantic==2.0.2

For me I could fix the issue by downgrading to:
fastapi==0.99.1
fastapi_jwt_auth==0.5.0
pydantic==1.10.11

Since this repo has not seen any movement in two years, this might be the only solution available until a fork appears.
Hey,
I am also blocked right now by this problem. I can't downgrade the packages for some project reasons. I think I will also need an alternative or build my own solution. Hope to see an update on this lol. If anyone has a solution for this, ping me please

I get the very same error.
thanks for the workaround, which does the job for me for the moment.

@georg-mayer If that can help, this PR shows how I migrated from fastapi-jwt-auth to fastapi-jwt to circumvent this issue. With pydantic 2.0.0 being out and fastapi-jwt-auth not having been updated for the past 3 years, I think this might be a good way forward.

For me I could fix the issue by downgrading to:
fastapi==0.99.1
fastapi_jwt_auth==0.5.0
pydantic==1.10.11

Since this repo has not seen any movement in two years, this might be the only solution available until a fork appears.

thx for solution!

Same issue

Any good replacement for fastapi-jwt-auth?

For me I could fix the issue by downgrading to:
fastapi==0.99.1
fastapi_jwt_auth==0.5.0
pydantic==1.10.11

Since this repo has not seen any movement in two years, this might be the only solution available until a fork appears.

Thanks for the quick fix

Any good replacement for fastapi-jwt-auth?

No, the last time, I used https://github.com/GlitchCorp/fastapi-another-jwt-auth as an alternative but seems like the maintainer abandoned it.

To re-iterate https://github.com/IndominusByte/fastapi-jwt-auth/issues/98#issuecomment-1656652991: I've had good success using https://github.com/k4black/fastapi-jwt as a replacement library. Some changes in the codebase were required, but not much.

I am having same issue for the pydantic==2.5.2.

Is there any update regarding this issue to make  it work with pydantic==2..?
Is there any alternative or fork for fastapi-jwt-auth ?

You will need to change Sequence type to List type in config.py file in the LoadConfig class.
Here is my entire file
from datetime import timedelta
from typing import Optional, Union, Sequence, List
from pydantic import (
    BaseModel,
    validator,
    StrictBool,
    StrictInt,
    StrictStr
)

class LoadConfig(BaseModel):
    authjwt_token_location: Optional[List[StrictStr]] = ['headers']
    authjwt_secret_key: Optional[StrictStr] = None
    authjwt_public_key: Optional[StrictStr] = None
    authjwt_private_key: Optional[StrictStr] = None
    authjwt_algorithm: Optional[StrictStr] = "HS256"
    authjwt_decode_algorithms: Optional[List[StrictStr]] = None
    authjwt_decode_leeway: Optional[Union[StrictInt,timedelta]] = 0
    authjwt_encode_issuer: Optional[StrictStr] = None
    authjwt_decode_issuer: Optional[StrictStr] = None
    authjwt_decode_audience: Optional[Union[StrictStr,Sequence[StrictStr]]] = None
    authjwt_denylist_enabled: Optional[StrictBool] = False
    authjwt_denylist_token_checks: Optional[List[StrictStr]] = ['access','refresh']
    authjwt_header_name: Optional[StrictStr] = "Authorization"
    authjwt_header_type: Optional[StrictStr] = "Bearer"
    authjwt_access_token_expires: Optional[Union[StrictBool,StrictInt,timedelta]] = timedelta(minutes=15)
    authjwt_refresh_token_expires: Optional[Union[StrictBool,StrictInt,timedelta]] = timedelta(days=30)
    # # option for create cookies
    authjwt_access_cookie_key: Optional[StrictStr] = "access_token_cookie"
    authjwt_refresh_cookie_key: Optional[StrictStr] = "refresh_token_cookie"
    authjwt_access_cookie_path: Optional[StrictStr] = "/"
    authjwt_refresh_cookie_path: Optional[StrictStr] = "/"
    authjwt_cookie_max_age: Optional[StrictInt] = None
    authjwt_cookie_domain: Optional[StrictStr] = None
    authjwt_cookie_secure: Optional[StrictBool] = False
    authjwt_cookie_samesite: Optional[StrictStr] = None
    # # option for double submit csrf protection
    authjwt_cookie_csrf_protect: Optional[StrictBool] = True
    authjwt_access_csrf_cookie_key: Optional[StrictStr] = "csrf_access_token"
    authjwt_refresh_csrf_cookie_key: Optional[StrictStr] = "csrf_refresh_token"
    authjwt_access_csrf_cookie_path: Optional[StrictStr] = "/"
    authjwt_refresh_csrf_cookie_path: Optional[StrictStr] = "/"
    authjwt_access_csrf_header_name: Optional[StrictStr] = "X-CSRF-Token"
    authjwt_refresh_csrf_header_name: Optional[StrictStr] = "X-CSRF-Token"
    authjwt_csrf_methods: Optional[List[StrictStr]] = ['POST','PUT','PATCH','DELETE']

    @validator('authjwt_access_token_expires')
    def validate_access_token_expires(cls, v):
        if v is True:
            raise ValueError("The 'authjwt_access_token_expires' only accept value False (bool)")
        return v

    @validator('authjwt_refresh_token_expires')
    def validate_refresh_token_expires(cls, v):
        if v is True:
            raise ValueError("The 'authjwt_refresh_token_expires' only accept value False (bool)")
        return v

    @validator('authjwt_denylist_token_checks', each_item=True)
    def validate_denylist_token_checks(cls, v):
        if v not in ['access','refresh']:
            raise ValueError("The 'authjwt_denylist_token_checks' must be between 'access' or 'refresh'")
        return v

    @validator('authjwt_token_location', each_item=True)
    def validate_token_location(cls, v):
        if v not in ['headers','cookies']:
            raise ValueError("The 'authjwt_token_location' must be between 'headers' or 'cookies'")
        return v

    @validator('authjwt_cookie_samesite')
    def validate_cookie_samesite(cls, v):
        if v not in ['strict','lax','none']:
            raise ValueError("The 'authjwt_cookie_samesite' must be between 'strict', 'lax', 'none'")
        return v

    @validator('authjwt_csrf_methods', each_item=True)
    def validate_csrf_methods(cls, v):
        if v.upper() not in ["GET", "HEAD", "POST", "PUT", "DELETE", "PATCH"]:
            raise ValueError("The 'authjwt_csrf_methods' must be between http request methods")
        return v.upper()

    class Config:
        str_min_length = 1
        str_strip_whitespace = True

Using it from this fork resolved the issue for me.

I have problem  belong TypeError: @validator(..., each_item=True) cannot be applied to fields with a schema of json-or-python
can you help me to solve this problem

@jahongir7797 Use the mentioned fork in the above comment. That resolved it for me.

Using it from this fork resolved the issue for me. I just bumped the pydantic version to 2.7.0 without any application errors.

Not worked with 2.9.1


How to use limit in hasmany preload?

Your Question
How to use limit in hasmany preload ? I didn't find limit func in RelationField interface.

Offset/Limit will be provided in next release version

Offset/Limit will be provided in next release version
Is there an estimated release time？

Offset/Limit will be provided in next release version

Is there an estimated release time？

try v0.2.23


[OSPK8-601] fix ansible-inventory jq query

The current jq query does not filter deleted hosts correct. Instead
it checks if any node is not deleted and then adds all of the nodes
in a role. This changes the query to delete the deleted marked nodes
from the result.

https://github.com/openstack-k8s-operators/osp-director-operator/pull/605 should fix the continuous-integration/jenkins/pr-merge issue


Map fetches grid.json for "old" maps

Steps to reproduce

Open a map (eg: in BUILDER).
Change something (eg: the style) so that the map is recreated in the server.
Move your mouse over the mouse.

Expected result

Grid.json for the current map (i.e: current layergroupid in grid.json files) files are fetched

Actual result:

It seems that map keeps requesting grid.json files for "old" maps:

Fixed in https://github.com/CartoDB/zera/commit/4ad435fa359aaca9daeb37ff64e86afa20999668
Included in in https://github.com/CartoDB/cartodb.js/commit/4e8f3f5eebda0760bd033e45800ef874741248f5


Unsafe parallel execution in build

In the build.xml config file for Ant the foreach task on line 157:
<foreach parallel="true" target="compile-country-libphonenumber" param="regioncode" list="${regioncodes}"/>
it seems, is not safe for parallel execution.
This task, with parallel="true" generates a file name dist/libphonenumber_US,AG,AI,AS,BB,BM,BS,CA,DM,DO,GD,GU,JM,KN,KY,LC,MP,MS,PR,SX,TC,TT,VC,VG,VI,RU,KZ,EG,ZA,GR,NL,BE,FR,ES,HU,IT,VA,RO,CH,AT,GB,GG,IM,JE,DK,SE,NO,SJ,PL,DE,PE,MX,CU,AR,BR,CL,CO,VE,MY,AU,CC,CX,ID,PH,NZ,SG,TH,JP,KR,VN,CN,TR,IN,PK,AF,LK,MM,IR,SS,MA,EH,DZ,TN,LY,GM,SN,MR,ML,GN,CI,BF,NE,TG,BJ,MU,LR,SL,GH,NG,TD,CF,CM,CV,ST,GQ,GA,CG,CD,AO,GW,IO,AC,SC,SD,RW,ET,SO,DJ,KE,TZ,UG,BI,MZ,ZM,MG,RE,YT,ZW,NA,MW,LS,BW,SZ,KM,SH,TA,ER,AW,FO,GL,GI,PT,LU,IE,IS,AL,MT,CY,FI,AX,BG,LT,LV,EE,MD,AM,BY,AD,MC,SM,UA,RS,ME,HR,SI,BA,MK,CZ,SK,LI,FK,BZ,GT,SV,HN,NI,CR,PA,PM,HT,GP,BL,MF,BO,GY,EC,GF,PY,MQ,SR,UY,CW,BQ,TL,NF,BN,NR,PG,TO,SB,VU,FJ,PW,WF,CK,NU,WS,KI,NC,TV,PF,TK,FM,MH,001,KP,HK,MO,KH,LA,BD,TW,MV,LB,JO,SY,IQ,KW,SA,YE,OM,PS,AE,IL,BH,QA,BT,MN,NP,TJ,TM,AZ,GE,KG,UZ.js.
This in turn causes python to error out with the file name being too long:
compile: compile-country-libphonenumber:      [exec] Traceback (most recent call last):      [exec]   File "/temp/vendor/closure-library/closure/bin/calcdeps.py", line 590, in <module>      [exec]     main()      [exec]   File "/temp/vendor/closure-library/closure/bin/calcdeps.py", line 545, in main      [exec]     out = open(options.output_file, 'w')      [exec] IOError: [Errno 63] File name too long: 'dist/libphonenumber_US,AG,AI,AS,BB,BM,BS,CA,DM,DO,GD,GU,JM,KN,KY,LC,MP,MS,PR,SX,TC,TT,VC,VG,VI,RU,KZ,EG,ZA,GR,NL,BE,FR,ES,HU,IT,VA,RO,CH,AT,GB,GG,IM,JE,DK,SE,NO,SJ,PL,DE,PE,MX,CU,AR,BR,CL,CO,VE,MY,AU,CC,CX,ID,PH,NZ,SG,TH,JP,KR,VN,CN,TR,IN,PK,AF,LK,MM,IR,SS,MA,EH,DZ,TN,LY,GM,SN,MR,ML,GN,CI,BF,NE,TG,BJ,MU,LR,SL,GH,NG,TD,CF,CM,CV,ST,GQ,GA,CG,CD,AO,GW,IO,AC,SC,SD,RW,ET,SO,DJ,KE,TZ,UG,BI,MZ,ZM,MG,RE,YT,ZW,NA,MW,LS,BW,SZ,KM,SH,TA,ER,AW,FO,GL,GI,PT,LU,IE,IS,AL,MT,CY,FI,AX,BG,LT,LV,EE,MD,AM,BY,AD,MC,SM,UA,RS,ME,HR,SI,BA,MK,CZ,SK,LI,FK,BZ,GT,SV,HN,NI,CR,PA,PM,HT,GP,BL,MF,BO,GY,EC,GF,PY,MQ,SR,UY,CW,BQ,TL,NF,BN,NR,PG,TO,SB,VU,FJ,PW,WF,CK,NU,WS,KI,NC,TV,PF,TK,FM,MH,001,KP,HK,MO,KH,LA,BD,TW,MV,LB,JO,SY,IQ,KW,SA,YE,OM,PS,AE,IL,BH,QA,BT,MN,NP,TJ,TM,AZ,GE,KG,UZ.js'

Your list isn't being split. Please see my comment from the other issue you filed. I believe that you don't have ant-contrib properly set up.


Remove or optimize engines section

If you will try to run yarn with node version >11, f.e. inside docker image node:latest you'll get an error:
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">= 4.x <= 10.x". Got "11.6.0"

It appears because of engines section in your package.json
  "engines": {
    "node": ">= 4.x <= 10.x",
    "npm": ">= 2.x <= 5.x"
}

So, question is do you really need node >= 4.x <= 10.x, or maybe you should replace it with >= 4.x and allow users to use aws-xray-sdk-node with latest version of node?

Hi @EugeneDraitsev, the SDK is only tested under <=10.x and we do have some work need to be done for testing against v11. I'm OK with removing this restriction and have some wording on the README about the version we officially support. I will post some update regarding this change as soon as possible.


Error info for Debugger is displays

Hi! I start the  program with debugger, then appears “ERROR: Command aborted. See the output window for additional details.” ,  so I open the output window，but I  clicked  any the options and  no seen additional details  in the output window,
I setting "logging -> engineLogging : true" in the lauch.json

/needsMoreInfo including version, platform, and what language you are coding in.

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

I'm sorry , I found issure , but the output window  hasn't error info for additional details. environment to following:
vscode version:  1.67.2
OS run :  the ubuntu 22.04 tls for virtual Box in the window 7
language:  C
plugins:
C/C++
C/C++ Extension package
remote ssh
remote development
vscode settings:
settings--> searching logging -> selecting c/c++ --> select Debug for options
lauch.json:
adding attach  "logging" :{"engineLogging" : true} and “miDebuggerServerAddress”
process:
the ubuntu 22.04 tls for virtual Box in the window 7 remote debug program of the alpine.  alpine compile program with  the musl gcc ,  and yet I  remote debug program with the GNU gcc, so appears the error info for “ERROR: Command aborted. See the output window for additional details.” , but the output window no has addition details.

Please file this on the C++ extension repo


Fix bug: It doesn't adapt events read from journal.

Noticed that this inmemory implementation doesn't adapt events read from journal. This PR fixes it.

Hi, thanks for the PR. Its a really nice feature to have. I will give it some thought and discussion with the akka team before merging, as akka query spec doesn't mention event adapters.

We've faced this when run tests, because we use your plugin for tests whereas during normal run we use different

Please dont close its a good discussion, I am asking Konrad what his ideas about it are and why the other plug-ins do this feature with disregard to the spec

Update to this PR. There is an ongoing discussion to making EventAdapters first class citizen to akka-persistence-query. The tickets are Akka Ticket #18050 - Integrate EventAdapters to the Query side, Akka Persistence Cassandra Ticket #116 - Optionally apply event adapters in queries and Akka Ticket #21065 - Make using EventAdapters nicer in PersistenceQuery. For now a workaround (like your PR) and implemented in LevelDB and akka-persistence-cassandra for example would solve any immediate usage problems. I will look into both the Cassandra and LevelDB implementations and your PR and see if it is compatible with the EventAdapter configuration used in both.

@dnvriend Sounds good! Thanks for update!

Hi, based on your PR I have adapted the code and strategy just a little bit and adopted the akka-persistence-cassandra and levelDB strategy. The strategy is that the readPlugin must contain a write-plugin section so that it knows which writePluginId writes events to the journal. Based on that knowledge, the readPlugin will get the event adapters from that writePlugin and use those event adapters to adapt events from the data model to the application model. Version 1.3.9 of the inmemory plugin will be released shortly. Thanks again!

@dnvriend Thanks a lot for the release!


Show icon to mark start and end of each .gpx

I'm using Omnivore to run through a directory of .gpx files, and I need to mark where is the start and end of each track.
I was using this:
              for (var i = 0; i < jsonRes.length; i += 1) {
                var runLayer = omnivore.gpx(folderPath + jsonRes[i], null, customLayer)
                  .on('ready', function() {
                      //runLayer.showExtremities('arrowM');
                  })
                  .addTo(trackmaps[trackmapCount])
                  .on('click', function(d) {
                      console.log(d);
                  });
              }

But that showExtremities function (plugin - https://github.com/makinacorpus/Leaflet.LineExtremities) makes the map slow, because for whatever reason draws not only on the start and end of each track. Is there any solution for this problem?

Using the plugin you mentioned would be the best technique - leaflet-omnivore doesn't and shouldn't include any style-related code.


Rewrite local file loading to not use require

require doesn't work for JSON files not having an extension: https://github.com/joyent/node/issues/6073

I forgot I had already done this.


Add --version flag to make it quick to determine the version of Forseti running.

maybe we can include --version flag to show the version.

Is this really needed? Version can currently be viewed on Stackdriver logging.

Can I work on it?

Is this still up for grabs

@garrettwong are you working on this?

@TravisDavis-ops TravisDavis-ops - sorry for the delayed response, feel free to take this.  If not, I'll revisit in a week.

This was merged in but does not appear to be working:
Traceback (most recent call last):
  File "/usr/local/bin/forseti", line 11, in <module>
    load_entry_point('forseti-security==2.25.1', 'console_scripts', 'forseti')()
  File "/usr/local/lib/python3.6/dist-packages/forseti_security-2.25.1-py3.6.egg/google/cloud/forseti/stubs.py", line 34, in RunForsetiCli
    forseti_cli.main()
  File "/usr/local/lib/python3.6/dist-packages/forseti_security-2.25.1-py3.6.egg/google/cloud/forseti/services/cli.py", line 1232, in main
    services[config.service](client, config, output, config_env)
TypeError: run_version() takes 0 positional arguments but 4 were given


Added general usage examples

Q
A

Is bugfix?
❌

New feature?
❌

Breaks BC?
❌

Tests pass?
✔

Fixed issues

Merged. Thanks!


Allow GoogleSignIn installation via cocoapods

This change adds one extra entry for the headers search path. This make it possible for the library build process to locate GoogleSignIn dependency installed via cocoapods as opposed to requiring developers to download and drop GoogleSdk into the project manually.

@devfd any chance to merge that soon? Merci d'avance.

@devfd tjs en vie ?

Thanks for your PR.
I'm planning to include the CocoaPods setup in the docs aswell.
To copy the sdk folder in the installation process feels a bit rough..


wrong url

Perhaps it's a mistake, I found out that you pointed your python-obfuscator on PyPI to davidteather/TikTok-Api instead of this repo.

You're right I forgot to release an update to pypi with the url. Thanks for reminding me


Webloc crash

A straightforward fix for #2176.

#2020 :
I'm actually cheating : -pasteboardByFilteringContents: doesn't actually do anything since I-cant-even-begin-to-guess-when so I'm just dispatching something that doesn't work to the main thread so it does nothing later™.
This code was responsible for extracting contents of .textClipping files (which are stored in resource forks use dark voodoo magic). I know you could use it to right-arrow into text clippings because I played with that looong ago, but I can't seem to get it to work now. I suspect 64bit ? PPC ? I'm also really not sure what it's expecting to get back anyway... @hmelman does that ring a bell to you ?

LSCopyItemInfoForURL : the commit says it all. I unfortunately got the crashlog only once. I think I got the explanation right though : the autorelease pool would get drained at the end of a scan "cycle", and since I think it does it's think in another thread, you'd get a crash.

@tiennou - indentation... :S
This is the first test my check_indent script has had.

Hope I was quick enough that my failed rebase wasn't visible ;-). Looks like Travis saw me though...
I've made some changes to the check_indent script so it's not as painful. It could be better tough but at least you don't end up doing loads of little commits ;-).
I'll add a check for the CFRelease stuff though.

Yeah, you can also use it locally now, it'll just use master as a "default" diff base. It would be nice if it kept the diff header ;-). And then it would be ready to be promoted to commit-hook status ;-).
In case that wasn't clear I added the tab-switching stuff here (Xcode + TextMate).

(Also, w.r.t to your lost comment about thread safety, it's actually NDResourceFork that's not threadsafe. I think pasteboardByFilteringContents: is actually fine too...
Anyway, right now this code is dead, I've just kept in because 1) I wasn't sure if it was readily fixable, and 2) I'm not even sure what can be done about NDResourceFork...

On Jan 25, 2016, at 8:57 PM, Etienne Samson<EMAIL_ADDRESS>wrote:
• This code was responsible for extracting contents of .textClipping files (which are stored in resource forks use dark voodoo magic). I know you could use it to right-arrow into text clippings because I played with that looong ago, but I can't seem to get it to work now. I suspect 64bit ? PPC ? I'm also really not sure what it's expecting to get back anyway... @hmelman does that ring a bell to you ?

Not really sure. The Text Manipulation Plugin allows you to right-arrow into a text file and get back a results list with an item for each line. I haven't used it in all long time. Just trying it now, it seems to work right-arrowing into a .txt file.
Howard

Yeah, that's right. I think that resource-forky stuff tries to enable the same behavior with clippings. I might be conflating the two then...

@tiennou  - I just cherrypicked your 'smarter script for local deployment' into master.
My first PR since that travis test also just failed because of the same reason :S
Haha!


Unstruct

Replaces #32. I've changed, improved and simplified the interface. The documentation looks pretty neat. I can build on top of that.
This is building the basic infrastructure to create generic tools/clients that work with no compiled-in knowledge of the types.

This can actually be slightly simplified to (4 loc shorter, yay ;-)):
m := u.Map()
if m == nil {
return fmt.Errorf("expected a map")
}
f := m.Field("int").Set("Number one")
Since m.Field("int") creates the field for you.

Ugh, see, that's a grumpy interface - It's not at all obvious that it
has side-effects, and it's not clear if there is a side-effect-free
form.

The plan is to create this abstraction and tools that can be re-used with various implementations. For example, one of the end goal is to tie this "unstruct" values with the openapi definition. So that you can walk a json and its type definition at the same time.
I'm also building a "jsonpath" engine that let's you find values and/or specific openapi types. This would probably be the recommended way to walk a json/yaml if you don't know if fields are present or of the proper type, since it simplifies error handling. Also, that engine allows you to use "selectors" as "predicates" such as<EMAIL_ADDRESS>< 10)] 1. Which means that at this point you know the "price" field exists for each "book" value that you have (this removes the need to check that "book" is a map, that has a field "price"). Having to re-cast everything from interface{} to maps to ... is kind of unnecessary.

Those sound cool, but who is using them (or going to be using them)?
I'd suggest starting this code wherever it is called, and then move it
here when it's utility is established.
I don't mean to be a pain, but we should try to keep this as tight as possible.

I don't mean to be a pain, but we should try to keep this as tight as possible.

I share that goal. I'm with that, thanks!


PipelineMessage should check for null on arguments that it uses

Library name
System.ClientModel
Please describe the feature.
In this method we blindly use options without first checking if it is null.  If the client library has nullable disabled this is possible to make this call.
An alternative here would be to perform a no op if it is null with this implementation
    public void Apply(RequestOptions options)
    {
        options?.Apply(this);
    }

Thanks, @m-nash.  We will throw ArgumentNullException here instead.
I'll also do a pass over the library to see if there are other places we're not validating arguments that we expect not to be null.
Thanks for catching this!


Projects map filters

Test document: https://drive.google.com/open?id=1Fc-noApzkPmGKauonO9QMSHAVIvhh2s8WpGXsO9WmBA


#21293 read enum values for databases that supported it

:cherry:

verified

When this fix will be released?


Removed duplicate anchor to resolve RHOARDOC 1364

[test]

@tradej @inoxx03 can you two double check this? Technically its right, but i wanted to make sure there was no explicit reason for 2 anchors and i just missed it.

I'm fairly sure there wasn't a reason and it was just my script being too eager to insert anchors. My apologies.

np thank you @tradej

merging