When I restart hstream through docker compose -f quick-start.yaml up -d, historical messages are repeatedly received and consumed after reconnecting with hstreamdb-java 0.15.0

Describe the bug
A clear and concise description of what the bug is.
When I restart hstream through docker compose -f quick-start.yaml up -d, historical messages are repeatedly received and consumed after reconnecting with hstreamdb-java 0.15.0
To Reproduce
Steps to reproduce the behavior:
Start hstreamdb-java to connect to hstream server normally and receive real-time data
Then modified the quick-start.yaml file
Added under zookeeper
ports:
- "2181:2181"
After restarting through docker compose -f quick-start.yaml up -d, use hstreamdb-java to reconnect and recover duplicate historical messages.
Restore quick-start.yaml to the original state, and you will still receive repeated historical messages after restarting
Expected behavior
A clear and concise description of what you expected to happen.
Restarting hstream does not need to receive historical messages
Additional context
Add any other context about the problem here.

this is the log:
hstreamdb-hserver-1  | /usr/local/script/wait-for-storage.sh: connect: Connection refused
hstreamdb-hserver-1  | /usr/local/script/wait-for-storage.sh: line 11: /dev/tcp/zookeeper/2181: Connection refused
hstreamdb-hserver-1  | Waiting for zookeeper zookeeper:2181 ...
hstreamdb-hserver-1  | /usr/local/script/wait-for-storage.sh: connect: Connection refused
hstreamdb-hserver-1  | /usr/local/script/wait-for-storage.sh: line 11: /dev/tcp/zookeeper/2181: Connection refused
hstreamdb-hserver-1  | Waiting for zookeeper zookeeper:2181 ...
hstreamdb-hserver-1  | HStore is up - Starting HServer...
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@753: Client environment:zookeeper.version=zookeeper C client 3.4.13
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@757: Client environment:host.name=1fecedecbee8
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@764: Client environment:os.name=Linux
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@765: Client environment:os.arch=5.10.134-13.1.al8.x86_64
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@766: Client environment:os.version=#1 SMP Mon Feb 6 14:54:50 CST 2023
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@774: Client environment:user.name=(null)
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@782: Client environment:user.home=/root
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@log_env@794: Client environment:user.dir=/
hstreamdb-hserver-1  | 2023-05-09 01:25:25,123:1(0x7fb0b9688640):ZOO_INFO@zookeeper_init@818: Initiating client connection, host=zookeeper:2181 sessionTimeout=5000 watcher=(nil) sessionId=0 sessionPasswd=<null> context=(nil) flags=0
hstreamdb-hserver-1  | 2023-05-09 01:25:25,126:1(0x7fb09b7f6700):ZOO_INFO@check_events@1763: initiated connection to server [<IP_ADDRESS>:2181]
hstreamdb-hserver-1  | 2023-05-09 01:25:25,161:1(0x7fb09b7f6700):ZOO_INFO@check_events@1809: session establishment complete on server [<IP_ADDRESS>:2181], sessionId=0x100129730310000, negotiated timeout=5000
hstreamdb-hserver-1  | E0509 01:25:25.379181       1 [not-set] FileConfigSource.cpp:129] stat_mtime() stat() on config file "" failed. errno=2 (No such file or directory)
hstreamdb-hserver-1  | E0509 01:25:25.379660       1 [not-set] FileConfigSource.cpp:129] stat_mtime() stat() on config file "" failed. errno=2 (No such file or directory)
hstreamdb-hserver-1  | E0509 01:25:25.383151      54 [logdevice:WG0] SSLFetcher.cpp:77] reloadSSLContext() Failed to load SSL certificate, ex: SSL_CTX_load_verify_locations: No such file or directory; no such file; system lib
hstreamdb-hserver-1  | E0509 01:25:25.384287      54 [logdevice:WG0] GetClusterStateRequest.cpp:243] onError() Retrieving the state of the cluster failed. giving up.
hstreamdb-hserver-1  | E0509 01:25:25.384299      54 [logdevice:WG0] ClusterState.cpp:260] onGetClusterStateDone() Unable to refresh cluster state: FAILED: request failed
hstreamdb-hserver-1  | 2023-05-09 01:25:26,921:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 13ms
hstreamdb-hserver-1  | W0509 01:25:28.958837      54 [logdevice:WG0] SocketSender.cpp:633] forceShutdown() Force shutdown of SocketSender w/o graceful shutdown attempt
hstreamdb-hserver-1  | E0509 01:25:28.961684       1 [not-set] FileConfigSource.cpp:129] stat_mtime() stat() on config file "" failed. errno=2 (No such file or directory)
hstreamdb-hserver-1  | E0509 01:25:28.961949       1 [not-set] FileConfigSource.cpp:129] stat_mtime() stat() on config file "" failed. errno=2 (No such file or directory)
hstreamdb-hserver-1  | E0509 01:25:28.962907      57 [logdevice:WG0] SSLFetcher.cpp:77] reloadSSLContext() Failed to load SSL certificate, ex: SSL_CTX_load_verify_locations: No such file or directory; no such file; system lib
hstreamdb-hserver-1  | W0509 01:25:30.103831      57 [logdevice:WG0] ClientReadStream.cpp:2476] updateCurrentMetaData() Existing epoch metadata has changed for log<PHONE_NUMBER>427387901 on epoch 1, check metadata log!
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][./HStream/IO/Worker.hs:35:3][thread#4]new Worker with hsConfig:HStreamConfig {serviceUrl = "hstream://********:6570"}
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][app/server.hs:153:3][thread#10]************************
hstreamdb-hserver-1  |
hstreamdb-hserver-1  |    _  _   __ _____ ___ ___  __  __ __
hstreamdb-hserver-1  |   | || |/' _/_   _| _ \ __|/  \|  V  |
hstreamdb-hserver-1  |   | >< |`._`. | | | v / _|| /\ | \_/ |
hstreamdb-hserver-1  |   |_||_||___/ |_| |_|_\___|_||_|_| |_|
hstreamdb-hserver-1  |
hstreamdb-hserver-1  |
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][app/server.hs:161:3][thread#10]************************
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][app/server.hs:234:3][thread#10]Starting server with hs-grpc-server...
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][src/HStream/Gossip/Start.hs:117:7][thread#11]Starting gossip server with hs-grpc-server...
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:30+0000][app/server.hs:164:9][thread#2]Server is started on port 6570, waiting for cluster to get ready
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][src/HStream/Gossip/Start.hs:147:3][thread#4]Only one node in the cluster, no bootstrapping needed
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][src/HStream/Gossip/Start.hs:150:3][thread#4]All servers have been initialized
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][app/server.hs:166:59][thread#26]Cluster is ready!
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][app/server.hs:173:11][thread#26]recovering local io tasks
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][app/server.hs:175:11][thread#26]recovering local query tasks
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:31+0000][app/server.hs:177:11][thread#26]recovered tasks
hstreamdb-hserver-1  | 2023-05-09 01:25:42,966:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 16ms
hstreamdb-hserver-1  | [INFO][2023-05-09T01:25:57+0000][src/HStream/Server/Core/Cluster.hs:93:3][thread#30]receive lookupShard request: LookupShardRequest {lookupShardRequestShardId =<PHONE_NUMBER>049322}, should send to "ServerNode {serverNodeId = 100, serverNodeHost = \"********\", serverNodePort = 6570}"
hstreamdb-hserver-1  | E0509 01:25:57.225585      57 [logdevice:WG0] HashBasedSequencerLocator.cpp:208] locateSequencer() No available sequencer node for log<PHONE_NUMBER>049322. All sequencer nodes are unavailable.
hstreamdb-hserver-1  | E0509 01:25:57.225614      57 [logdevice:WG0] SequencerRouter.cpp:56] operator()() Error during sequencer lookup for log<PHONE_NUMBER>049322 (NOSEQUENCER), reporting NOSEQUENCER.
hstreamdb-hserver-1  | E0509 01:25:57.225619      57 [logdevice:WG0] SequencerRouter.cpp:105] onFailure() Error during sequencer routing for log<PHONE_NUMBER>049322 (NOSEQUENCER), request[type:APPEND_REQ_TYPE, handler:0x7fb090019a28].
hstreamdb-hserver-1  | [WARNING][2023-05-09T01:25:57+0000][src/HStream/Server/Handler/Stream.hs:203:57][thread#31]NOSEQUENCER {name:NOSEQUENCER, description:NOSEQUENCER: no sequencer was found for log, callstack:CallStack (from HasCallStack):
hstreamdb-hserver-1  |   throwStreamErrorIfNotOK', called at ./HStream/Store/Internal/LogDevice/Writer.hs:135:16 in hstream-store-<IP_ADDRESS>-b4bf2d5a6afba9e5cba28f15d29ae5e2c366a59feb5ce6752a10dc8423ad197f:HStream.Store.Internal.LogDevice.Writer
hstreamdb-hserver-1  |   appendBatchBS, called at ./HStream/Store/Internal/LogDevice/Writer.hs:71:43 in hstream-store-<IP_ADDRESS>-b4bf2d5a6afba9e5cba28f15d29ae5e2c366a59feb5ce6752a10dc8423ad197f:HStream.Store.Internal.LogDevice.Writer
hstreamdb-hserver-1  |   appendCompressedBS, called at src/HStream/Server/Core/Stream.hs:190:30 in hstream-<IP_ADDRESS>-5bbf944534ed1ba138333a394d08b11e0e84afac34970537d78579944ddd8596:HStream.Server.Core.Stream
hstreamdb-hserver-1  |   appendStream, called at src/HStream/Server/Core/Stream.hs:172:11 in hstream-<IP_ADDRESS>-5bbf944534ed1ba138333a394d08b11e0e84afac34970537d78579944ddd8596:HStream.Server.Core.Stream
hstreamdb-hserver-1  |   append, called at src/HStream/Server/Handler/Stream.hs:147:3 in hstream-<IP_ADDRESS>-5bbf944534ed1ba138333a394d08b11e0e84afac34970537d78579944ddd8596:HStream.Server.Handler.Stream}
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:00+0000][src/HStream/Server/Core/Cluster.hs:93:3][thread#33]receive lookupShard request: LookupShardRequest {lookupShardRequestShardId =<PHONE_NUMBER>049322}, should send to "ServerNode {serverNodeId = 100, serverNodeHost = \"********\", serverNodePort = 6570}"
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:02+0000][src/HStream/Server/Core/Cluster.hs:93:3][thread#35]receive lookupShard request: LookupShardRequest {lookupShardRequestShardId =<PHONE_NUMBER>049322}, should send to "ServerNode {serverNodeId = 100, serverNodeHost = \"********\", serverNodePort = 6570}"
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:08+0000][src/HStream/Server/Core/Cluster.hs:106:3][thread#38]receive lookupSubscription request: LookupSubscriptionRequest {lookupSubscriptionRequestSubscriptionId = "rawdata_topic"}
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:08+0000][src/HStream/Server/Core/Cluster.hs:106:3][thread#39]receive lookupSubscription request: LookupSubscriptionRequest {lookupSubscriptionRequestSubscriptionId = "rawdata_topic"}
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:08+0000][src/HStream/Server/Core/Subscription.hs:346:7][thread#43]Create a checkpoint store reader for rawdata_topic
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:08+0000][src/HStream/Server/Core/Subscription.hs:353:7][thread#43]Create a reader for rawdata_topic
hstreamdb-hserver-1  | 2023-05-09 01:26:27,235:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 43ms
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:27+0000][src/HStream/Server/Core/Cluster.hs:93:3][thread#169]receive lookupShard request: LookupShardRequest {lookupShardRequestShardId =<PHONE_NUMBER>049322}, should send to "ServerNode {serverNodeId = 100, serverNodeHost = \"********\", serverNodePort = 6570}"
hstreamdb-hserver-1  | 2023-05-09 01:26:40,632:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 11ms
hstreamdb-hserver-1  | 2023-05-09 01:26:54,031:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 12ms
hstreamdb-hserver-1  | 2023-05-09 01:26:57,381:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 12ms
hstreamdb-hserver-1  | [INFO][2023-05-09T01:26:57+0000][src/HStream/Server/Core/Cluster.hs:93:3][thread#326]receive lookupShard request: LookupShardRequest {lookupShardRequestShardId =<PHONE_NUMBER>049322}, should send to "ServerNode {serverNodeId = 100, serverNodeHost = \"********\", serverNodePort = 6570}"
hstreamdb-hserver-1  | 2023-05-09 01:27:02,405:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 13ms
hstreamdb-hserver-1  | 2023-05-09 01:27:05,760:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 15ms
hstreamdb-hserver-1  | 2023-05-09 01:27:09,106:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 11ms
hstreamdb-hserver-1  | 2023-05-09 01:27:12,454:1(0x7fb09b7f6700):ZOO_WARN@zookeeper_interest@1597: Exceeded deadline by 11ms

hi, need some informations to help located the problem:

Did you call Ack() after the message was received by the consumer? Here is an example:      var consumer = client.newConsumer().subscription(subId).rawRecordReceiver(
              (receivedRawRecord, responder) -> {
                  System.out.println(receivedRawRecord.getRecordId());
                  responder.ack();  // <- call ACK here
              }).build();

Were all previously received messages retransmitted? Or just some of them?

yes, i call Ack();
        RawRecordReceiver receiver =
                ((rRecord, responder) -> {
                    var receiveData = rRecord.getRawRecord();
                    responder.ack();//收到消息后立即返回确认，这种下面处理如果有异常不会重新处理
                    System.out.println("接收到消息 :" + HexFormat.of().formatHex(receiveData));

                });

I don't know if it's all the messages, I saw that the first received messages were 6 days ago

In fact, our current subscription only supports at-least-once delivery, and in order to make full use of bandwidth, ack responses are sent to the server in batch, so in some scenarios, it is indeed possible that the acked data will still be retransmitted after the server restarts, e.g:

The server is restarted before it has a chance to finish processing all the received ack
When the server is restarted, the client has not yet sent the ack to the server

In addition, ack only works on the current subscription, ack is not shared between multiple subscriptions created for the same stream.
Anyway, it seems impossible for a consumer to retransmit data from 6 days ago with continuous consumption, the consumption progress will be stuck in the first unacked record.
So, for your scenario.

If you create a new subscription after a restart, instead of consuming the old one directly, then it is normal to read the old data. Because the two subscriptions are independent.
If it was a direct consumption of a previous subscription, I can only think of one possible reason for the error: In v0.15.0 we updated the underlying handling of consumption progress, so if you created a subscription before v0.15.0, and then upgraded to v0.15.0, you may have lost progress in consumption. In this case, you can only clear all the data and rebuild the entire cluster, then check if there are still retransmissions happening

yes,i upgraded from latest to v0.15.0
how to clear all the data in stream? delete stream and recreate it?

I suggest you use the image of hstreamdb/hstream:latest, we have made additional updates after v0.15.0, but no new version of the image has been released yet. The client version does not need to be updated.
Follow these steps(Note that all previous data will be removed):

Stop cluster: docker compose -f quick-start.yaml down
Remove volume: docker volume rm quickstart_data_store quickstart_data_zk_data quickstart_data_zk_datalog
Fetch new image: docker pull hstreamdb/hstream:latest
Restart cluster: docker compose -f quick-start.yaml up -d

Now you get a clean cluster and can create streams, do subscribe like before.
If there is still any retransmission occurring in the future, feel free to let us know.

I have drop the stream and recreate it.It is working now.
By the way, I created two consumption threads through the official website tutorial. But only one of the consumer threads receives the message after each startup. The other one has not received the message all the time, is this normal?

Do you mean two consumers consume the same subscription? Or each consumer bind to a different subscription? Would you mind posting the code for the subscription and consumer sections?

With the same subscription.
        String subscription = "rawdata_topic";// "your_subscription_id";
        HStreamClient client = HStreamClient.builder()
                .serviceUrl(serviceUrl)
                .build();

        // create two consumers to consume records with several partition keys.
        Thread t1 = new Thread(() -> consumeDataFromSubscriptionShared(client, subscription, consumer1));
        Thread t2 = new Thread(() -> consumeDataFromSubscriptionShared(client, subscription, consumer2));
        t1.start();
        t2.start();
        try {
            t1.join();
            t2.join();
            var i = System.in.read();
            client.close();
        } catch (Exception ex) {
            ex.printStackTrace();
        }

 public static void consumeDataFromSubscriptionShared(
            HStreamClient client, String subscription, String consumerName) {
        RawRecordReceiver receiver =
                ((rRecord, responder) -> {
                    var receiveData = rRecord.getRawRecord();
                    responder.ack();
                    System.out.println("接收到消息 :" + HexFormat.of().formatHex(receiveData));
                });
        Consumer consumer =
                client
                        .newConsumer()
                        .subscription(subscription)
                        .name(consumerName)
                        .rawRecordReceiver(receiver)
                        // When ack() is called, the consumer will not send it to servers immediately,
                        // the ack request will be buffered until the ack count reaches ackBufferSize
                        // or the consumer is stopping or reached ackAgelimit
                        .ackBufferSize(100)
                        .ackAgeLimit(100)
                        .build();

        // add Listener for handling failed consumer
        var threadPool = new ScheduledThreadPoolExecutor(1);
        consumer.addListener(
                new Service.Listener() {
                    public void failed(Service.State from, Throwable failure) {
                        //deleteSubscription(client,streamName);
                        System.out.println("消费失败, 异常信息: " + failure.getMessage());
                        consumer.stopAsync().awaitTerminated();
                    }

                    @Override
                    public void terminated(Service.State from) {
                        //deleteSubscription(client,streamName);
                        System.out.println("消费停止，线程已终止: " + from.name());
                        consumer.stopAsync().awaitTerminated();
                    }
                },
                threadPool);

        // start Consumer as a background service and return
        consumer.startAsync().awaitRunning();

    }

In addition, have you set the shard count more than one when you create stream?

Sorry, an additional question was added. For the concept of shard, please refer to https://docs.hstream.io/write/shards.html （By the way, this is our new document address)
Multiple consumers on the same subscription form a consumer group. The data of a stream will be distributed to different consumers in the consumer group according to the smallest unit of the shard. That is: if you have two consumers but the stream has only one shard, then only one consumer will deliver the data and the other will be idle. If you have 4 shards, then each consumer will deliver data for 2 shards each

ok,it is working now,thanks a lot


Fix doc typos.

Two error codes in the doc don't match the header file.

Checklist

[x] documentation is added or updated

This pull request is ready to merge

Merged, thanks for the fixes.


Differentiate commonality between composition and reaction.

Since, we have emoji-picker for both composition and reaction. There are few cases where an action has to carried out on composition or reaction. So, there needs to be a check before carrying out the respective actions.
One such case was selecting the emoji using hotkey enter. It would by default add it as reaction even when we want it to be added to the compose box. In case of empty narrow topic this would lead to error.
Other case invovles pressing the enter after entering the search string. It would by default add reaction to the message selected even if it was a composition.
So, I have added a check before evaluating such situations.
Fixes #4736

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

Should I split up the commits?

I don't think you need to split the commit.  I removed the unused helper function and merged this as 5dd5c84854cf904c800a44b102cea590fc6673d2 (with a rewritten commit message that explains the context, rather than just listing what was done.  In general, one can see what was done by reading the code, and the important thing to put in commit messages is the explanations for why the change was made).
Thanks for fixing this @tejaskasetty!!

Ok..nice.


Navigation doesn't use updated Navmesh on a dynamic Gridmap

Godot version:
3.1 Stable
OS/device including version:
Windows 10 64bit
Version	10.0.17763 Build 17763
Mint 19
Issue description:
My project involves a gridmap that procedurally generates a level on loading.  All tiles have appropriate navmeshes attached (all of which align correctly).
Using get_simple_path() does not take the generated map into account.  Instead, it uses whatever was on the level before it was run.  That is, if I paint some grids on the map, those will be what Navigation uses for get_simple_path().
This can be reproduced in a number of ways - if I clear() the gridmap before running the procgen script, get_simple_path() returns an empty array.
The expected behaviour would be that the navmeshes are rebaked when the gridmap changes, but there appears to be no function to do this.
Steps to reproduce:

Create a Scene
Add a Navigation Node
Add a Gridmap as a child of Navigation
Create a simple meshlib including navmesh
paint a handful of tiles
create a script on the Gridmap
Use Navigation's get_simple_path to generate a path
print(path)
clear() the Gridmap
Add one or more cells in code.
Use Navigation's get_simple_path to generate a path
print(path)
path is now empty

Just to make sure: does waiting a frame before invoking get_simple_path result in a proper path?

For some reason github didn't let me know there was areply to this...
It doesn't seem to.

Giving this a bump as this effects me as well.

Can anyone still reproduce this bug in Godot 3.2.3 or any later release?
If yes, please ensure that an up-to-date Minimal Reproduction Project (MRP) is included in this report (a MRP is a zipped Godot project with the minimal elements necessary to reliably trigger the bug). You can upload ZIP files in an issue comment with a drag and drop.

This issue is still valid for both Godot 4.0 and 3.5. The GridMap navmesh is broken in both versions. Some are GridMap bugs while others boil down to used navmesh being wrong for the NavigationMesh properties that control the merge on the NavigationServer.
With #61170 merged it is possible to (re)bake a working navmesh inside the Editor that fits and merges well with grids but the GridMap Node needs even more fixes.


Add support swagger and refactoring graphql

Hi @josefd8
I think this is the last change for this year)

Added support swagger (OAS 2.*, OAS 3.*)
Added adding path parameters
Refactoring GraphQL
Added GraphQL request validation by schema

P.S. Documentation generation crashes again)

Hi @dmamontov
Thank you for the contributions :) Sorry I've have not taken a look at the changes yet, first the holidays and now I'm quite sick and haven't been feeling very well to look at code :p
I'll give it a look as soon as I'm back on my feet
Regards


Openai ChatCompletion not found

latest openai version 1.1.1 doesn't have openai.ChatCompletion. Need previous version of library or lida has to update the method for using latest documentation

This has been addressed by updating llmx (which lida uses) use previous version of openai library.
Please let me know if a fresh install of lida pip install -U lida still shows this error.

This worked by upgrading llmx to latest. Thanks

@victordibia Please close this issue

Does running pip install -U lida fix the error for you? It doesnt for me. How can I upgrade llmx

Does running pip install -U lida fix the error for you? It doesnt for me. How can I upgrade llmx

pip install -U llmx

This has been addressed by updating llmx (which lida uses) use previous version of openai library. Please let me know if a fresh install of lida pip install -U lida still shows this error.

@victordibia ,In our project we are using other libraries that relies on latest openAI along with lida , Since you are using previous version of openai library , we are having issues , consider upgrading llmx to use latest openAI

@victordibia can I take on this task for changing the code so that it'll run on new version ?

@victordibia ,In our project we are using other libraries that relies on latest openAI along with lida , Since you are using previous version of openai library , we are having issues , consider upgrading llmx to use latest openAI

@victordibia Raised a PR to fix this issue https://github.com/victordibia/llmx/pull/17


The constructs provided by this package need to be marked Sendable

Swift 5.5 introduces Sendable, which puts new constraints on transferring values across concurrency domains.
The constructs provided by this package are designed to be safe to use without synchronization, so they should be marked Sendable. (Hopefully people aren't passing around naked ManagedAtomic values, but in case they do, the compiler should know that this is safe.)
Information

Package version: 1.0.1
Platform version: iOS 15 & macOS Monterey
Swift version: 5.5

Checklist

[X] If possible, I've reproduced the issue using the main branch of this package.
[X] I've searched for existing reports of the same issue.

The big question that needs to be answered is this: do we need to restrict ManagedAtomic<T>/UnsafeAtomic<T> to be only marked Sendable if T itself is also Sendable?
For example, SomeClass below is very much not safe to transfer across concurrency domains, so it looks like an atomic reference to it shouldn't be, either.
class SomeClass: AtomicReference {
  var array: [Int] = []
}

let v: ManagedAtomic<SomeClass> = ...
let instance = v.load(ordering: .sequentiallyConsistent) // OK
instance.array.append(42) // data race

Putting this back on 1.0.2 -- we'll need to decide whether this can technically go in a patch release, but I think we'll want to release this together with #41 in any case. We may just need to rename the milestone to 1.1.0.

This is more urgent than I expected, as UnsafeAtomic has gained an implicit, unconditional, Sendable conformance in the Swift 5.5 release. The implicit conformance isn't right, and the longer we wait to fix it, the more likely it becomes that someone starts depending on it.

Filed #47 to track the UnsafeAtomic issue, which we will need to fix as soon as possible.
Fixing the Sendable conformance for UnsafeAtomic can be done in an emergency patch release, but conforming ManagedAtomic to Sendable can only be done in a new minor release.

The new Swift Concurrency Checking warnings in Xcode 14 (in Targeted mode) told me that my ManagedAtomicLazyReference are not sendable, even though it's one of the main reason to use this package, so having this fixed would be great 😁

When trying to adopt Atomics in Swift NIO, we see CI failure because of missing Sendable conformance in Swift 5.5, where @preconcurrency is not supported.
Since we cannot drop 5.5 at the time, it’s better to add the conformance in Atomics, which holds all the managed atomic types. These values are not intended for production, but instead as part of the test utilities.


Make C# extension compile.

-- some C# tests are passing, some not yet.

All C# tests are now passing.


fixes path in Nomad deploy

path and name of files has changed a while ago

@nustiueudinastea we can probably just delete these lines as the deploy_doc for nomad uses the healthcheck container on docker hub

@vlal even better. Will make the change.

@vlal done


Add Andrés Letelier, github: Ailnlv, role: Chile setter, auth: cruz

Andrés will also be setter for la-tcap

invited to la-super


Interactive list

Add a new JavaScript file and import it as a module:
Status updates (completed: true / false).
Added event listener to the checkbox (change).
Update items object's value for completed key upon user actions.
Implemented a function for the "Clear all completed"

Please i stated that to get the project running you need to do npm start using the liveserver wont work. Kindly note that we are using webpack and live server wont work with it.
kindly use npm start to get it running and you would be able to add it.. its working here


[Form] Add File Input Styles

It would be nice if the file input styled and has some effects.

The Bootstrap demo page is very nice. This would indeed be a nice addition to this library.

+1

+1

+1

+1

There’s a Meteor package for file uploads that claims its file upload control is styled for Semantic UI:
https://github.com/tomitrescak/meteor-uploads
Perhaps the control from this package can be decoupled from Meteor and adapted for front-end use anywhere?

+1

+1
waiting for this feature, i need so much.

+1

+1

+1

+1

+1

+1

+1

+1

+1

I guess this is pretty low hanging fruit.

Good news!

What did you all do in the mean time ?

@metasyn Cough https://github.com/jlukic?tab=activity

+1

@Anachron I meant like what kind of form input styling did you do / use in the mean time? Not, what work as been done on semantic in the mean time

+1

+1

+1

Discussed in #1703 as wel

+2

+1

:+1:

+1

+1

+1

+1

+1

+1

http://tympanus.net/Tutorials/CustomFileInputs/
Seems very nice! :smile:

Thanks I'll keep those links in mind

@caiotarifa :+1:

This library also looks like a good option.

Flow.js does not have any external dependencies other than the HTML5 File API. This is relied on for the ability to chunk files into smaller pieces. Currently, this means that support is limited to Firefox 4+, Chrome 11+, Safari 6+ and Internet Explorer 10+.

+1

+1

+1

+1

+1

+2

+1

+1

+1 This really should have been implemented a long time ago :/

For now, I'm using something likes this
http://jsfiddle.net/bm0u8snr/1/

+1

:+1:

:+1:

+1

:+1:

:+1:

+1

+1

+1

+1

+1

+1

+1

+1

Guys, please!
When you are intressted in this topic, please click on Subscribe.
If you want to to say that this is a nice feature just click on the smiley and press your reaction. Github added that for a reason. One of the reason is that the +1 is annoying for all that subscribed or watch a issue/repo.
Thanks!

not sure to understand that why after 3 years , this requirement is still open

+1

+1

+1

+1

+1

Do not comment +1.
Scroll to top and click on thumbs up.

My friend Mr.Bahador, modified @cspeer's fiddle, because that not worked for multiple inputs.
http://jsfiddle.net/Dr_Dev/2nu1ngk5

Something like this would be nice =)

@Dr-Dev Counter-intuitively, clicking the paperclip on http://jsfiddle.net/Dr_Dev/2nu1ngk5 does not bring up the file dialog. If possible, what about the whole element being one clickable zone?

This is my fork of @cspeer's fiddle, that I use in production for several months:
http://jsfiddle.net/ww4ky6gr/
It has the following features:

supports clicks on label, text field & button
supports multiple file input fields
supports <input type="file" multiple> (select more than one file in the second file dialog)

@larsbo your fiddle is broken for me :question:

@Anachron can you provide a little more details about what seems to be broken for you and maybe which browser you have used?
It is tested with Chrome, Firefox, Safari Desktop & Safari Mobile so far.

Weird, on mobile iOS Safari it works but not on my latest Win 7 Firefox. Nvm :)

Hi, it's 2017 :D

it's been 4 years...

+1 pls

It's tagged for an upcoming milestone

4 years, wow. I look forward to this. Would be intuitive if it also including a drag and drop window, but let's try to crawl with this first.

This is basically a one-man-project. This might sound rude, but there is nothing cool about counting the time, as everyone can submit a pull request with this feature.

It's been a long time.
But Google ranks high in the results.
For this reason I share.
Your might need one.

 		Dosya seçiniz..
 		<input type="file" id="file">

.ui.action.file.input > input { display: none; }
.ui.action.file.input:not([class*="left action"]) > label { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; border-right-color: transparent !important; }
.ui.action.file.input > label:first-child { cursor: pointer; width: auto; -webkit-box-flex: 1; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: 1 0 auto; outline: 0; -webkit-tap-highlight-color: rgba(255,255,255,0); padding: .67861429em 1em; background: #FFF; border: 1px solid rgba(34,36,38,.15); color: rgba(0,0,0,.87); border-radius: .28571429rem; -webkit-transition: box-shadow .1s ease,border-color .1s ease; transition: box-shadow .1s ease,border-color .1s ease; box-shadow: none; }
.ui.action.file.input > label:first-child:last-child { border-radius: 0 .28571429rem .28571429rem 0 !important; }

@hmaesta no worries, nobody's demanding anything. Just poking a little fun at the age of this one and keeping it alive :)

I hope these give you a little hint guys https://jsfiddle.net/09hp81dd/4/

@jafarpagerjaya but that has nothing to do with File Input Styles? Doh.

@Anachron Yes, it does. Mouseover image and click the button.
It is a good contribution, thank you @jafarpagerjaya.

Oh wow, that's very hidden! Just a bit non-fitting to the rest of Semantic UI!

Sorry if this is rude, but is this still headed to be added in the near future?

Seems to be less of a headache (and no Jquery) this way:
https://stackoverflow.com/questions/37457128/react-open-file-browser-on-click-a-div

I'm using react-semantic-ui, and I had to do this.upload.inputRef.click().

I am also looking for the same for using in angular..

I have worked around this issue this way:

    File

	<input type="text" readonly>
	<input type="file" name="File" style="display: none!important;" />

then in JS

$('input:text, .ui.button', '.ui.action.input').on('click', function (e) {
    $('input:file', $(e.target).parents()).click();
});

$('input:file', '.ui.action.input').on('change', function (e) {
    var name = e.target.files[0].name;
    $('input:text', $(e.target).parent()).val(name);
});

thanks a lot. let me try this

it's been 5 years...

😞

+1 Semantic UI is a very beautiful framework and would definitely be even better having file uploads styled!

Thank you, brigand.
I write something like this(http://jsfiddle.net/nickevin/a4sD4/), YES, i copy your code.

        <input type="text" id="_attachmentName">

             <input type="file" id="attachmentName" name="attachmentName" style="display: none">

var fileExtentionRange = '.zip .rar .tar .pdf .doc .docx .xls .xlsx .ppt .pptx';
var MAX_SIZE = 30; // MB

$(document).on('change', '.btn-file :file', function() {
    var input = $(this);

    if (navigator.appVersion.indexOf("MSIE") != -1) { // IE
        var label = input.val();

        input.trigger('fileselect', [ 1, label, 0 ]);
    } else {
        var label = input.val().replace(/\\/g, '/').replace(/.*\//, '');
        var numFiles = input.get(0).files ? input.get(0).files.length : 1;
        var size = input.get(0).files[0].size;

        input.trigger('fileselect', [ numFiles, label, size ]);
    }
});

$('.btn-file :file').on('fileselect', function(event, numFiles, label, size) {
    $('#attachmentName').attr('name', 'attachmentName'); // allow upload.

    var postfix = label.substr(label.lastIndexOf('.'));
    if (fileExtentionRange.indexOf(postfix.toLowerCase()) > -1) {
        if (size > 1024 * 1024 * MAX_SIZE ) {
            alert('max size：' + MAX_SIZE + ' MB.');

            $('#attachmentName').removeAttr('name'); // cancel upload file.
        } else {
            $('#_attachmentName').val(label);
        }
    } else {
        alert('file type：
 ' + fileExtentionRange + '');

        $('#attachmentName').removeAttr('name'); // cancel upload file.
    }
});

im sorry im still confused with this

Well it's been 6 years^^

@DennisLoska This project is currently in hiatus with all development taking place over at Fomantic UI

@omairvaiyani Thanks for the info. They don't have a file uploader component yet, but at least the last comment was like two weeks ago https://github.com/fomantic/Fomantic-UI/issues/105

It's now 2021, this issue was created on 2013...

It's now 2021, this issue was created on 2013...

Then go & implement it yourself?
There is Foomatic UI, too, where you can help out.

Then go & implement it yourself?
There is Foomatic UI, too, where you can help out.

The community fork Fomantic-UI now prepared file input styling by https://github.com/fomantic/Fomantic-UI/pull/2145

апрапрапр


Add cstdio to status.h includes

snprintf() is called in status.cc and belongs to cstdio, which should then be included
This should fix #316, but this code is deprecated, efforts should be made to implement R bindings within Arrow.

thanks @gansanay! I am definitely going to push back against any non-trivial changes but bugs like these are fine


Add rocket league reward logging

Closing, as I think this is no longer in scope. Will open again on the new repo once we move the RocketLeague environment out of this package.


phoneScreenSize value

@virakri : How did you come up with : phoneScreenSize - width: 0.0623908297, height: 0.135096943231532 ?

Hi @kavishjuneja11,
It’s the actual size of the screen of iPhone X (6.24 cm * 13.51cm)which I got them from using the screen actual pixel count divided by the screen resolution.

@virakri : according to https://support.apple.com/kb/SP770?locale=en_US
the screen size of iPhone X is : 7.0866 cm * 14.351 cm.

Hi @virakri,
I have a related question: What is the heightCompensation?
I am trying to use the App on the new iPad Pro.
Thanks

@a1209910 I'm assuming heightCompensation relates to how the camera is a certain distance above the center of the screen. Not sure what the units are, maybe points?

Hi, can you explain how to make the division? I'm struggling for different phone

@virakri : can you explain how to calculate heightCompensation(312) and phoneScreenSize -( width: 0.0623908297, height: 0.135096943231532 ) for differenct iOS Device. I am struggling to calculate values for different iOS Devices.

(screen_width_pixel/ppi)/(screen_heigth_pixel/ppi) = width / height  ## phoneScreenSize
(1125/458)/(2436/458) = 0.0623908297/0.135096943231532
1125/458
a_ratio=(1125/458)/0.0623908297
b_ratio=(2436/458)/0.135096943231532

# e.g. iPhone X
x=1125/458
y=2436/458
print(x/a_ratio)
# 0.0623908297
print(y/b_ratio)
# 0.135096943231532

# e.g. iPhone XS Max
x=1242/458
y=2688/458
print(x/a_ratio)
# 0.0688794759888
print(y/b_ratio)
# 0.1490724890830698

(screen_width_pixel/ppi)/(screen_heigth_pixel/ppi) = width / height  ## phoneScreenSize
(1125/458)/(2436/458) = 0.0623908297/0.135096943231532
1125/458
a_ratio=(1125/458)/0.0623908297
b_ratio=(2436/458)/0.135096943231532

# e.g. iPhone X
x=1125/458
y=2436/458
print(x/a_ratio)
# 0.0623908297
print(y/b_ratio)
# 0.135096943231532

# e.g. iPhone XS Max
x=1242/458
y=2688/458
print(x/a_ratio)
# 0.0688794759888
print(y/b_ratio)
# 0.1490724890830698

You can calculate by the screen resolution and PPI (pixels per inch)
since size include some non-monitor portion
(screen_width_pixel/ppi)/(screen_heigth_pixel/ppi) = width / height ## phoneScreenSize
(1125/458)/(2436/458) = 0.0623908297/0.135096943231532
1125/458
a_ratio=(1125/458)/0.0623908297
b_ratio=(2436/458)/0.135096943231532

# e.g. iPhone X
x=1125/458
y=2436/458
print(x/a_ratio)
# 0.0623908297
print(y/b_ratio)
# 0.135096943231532

# e.g. iPhone XS Max
x=1242/458
y=2688/458
print(x/a_ratio)
# 0.0688794759888
print(y/b_ratio)
# 0.1490724890830698

What about height compensation( iphoneX=312) for different devices?

Hi @virakri, I have a related question: What is the heightCompensation? I am trying to use the App on the new iPad Pro. Thanks

Hi your Did you manage to get it to work on the iPad?

This code defines a computed property screenSize that returns the physical screen size of the device in points. It uses the screen's native width and height in points, the device's scale factor, and an assumed pixels per inch (PPI) value to calculate the physical width and height in inches. The width and height ratios are then computed based on the native resolution and scale factor, resulting in a CGSize object representing the calculated ratios.
`
// Computed property to get the physical screen size in points
static var screenSize: CGSize {
// Get the native width and height of the screen in points
let screenWidthPoints: CGFloat = UIScreen.main.nativeBounds.width
let screenHeightPoints: CGFloat = UIScreen.main.nativeBounds.height
// Substitute the real PPI (pixels per inch) of the device, assuming 458 PPI here
let ppi: CGFloat = UIScreen.main.scale * 458

// Calculate the physical width and height of the screen in inches
let physicalWidth: CGFloat = screenWidthPoints / ppi
let physicalHeight: CGFloat = screenHeightPoints / ppi

// Calculate the width and height ratios based on the screen's native resolution and scale factor
let widthRatio = physicalWidth / (screenWidthPoints / UIScreen.main.scale)
let heightRatio = physicalHeight / (screenHeightPoints / UIScreen.main.scale)

// Return a CGSize representing the width and height ratios
return CGSize(width: widthRatio, height: heightRatio)

}
`

Recently read this, but seems no one has said it clearly, this is my method to calculate for iPhone x:
1125(width pixel for iPhoneX)/458(ppi for iPhoneX)*2.54(cm/inch) = 6.2390829694cm ≈ 0.0623908297m
2436(height pixel for iPhoneX)/458(ppi for iPhoneX)*2.54(cm/inch) = 13.5096943231cm ≈ 0.135096943231532m
@virakri Am i right here ?


chore: update x/net version

fix https://github.com/hertz-contrib/http2/issues/30

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

fix #30

need to sign cla

Update go.mod only without go mod tidy?


Checkbox doesn't' work properly. "splice" is wrong function.

When I tried to use checkbox, it doesn't' work properly.
In the File surveyjs-widgets.js has code like
var index = oldValue.indexOf(event.target.value);
if (index >= 0) {
oldValue.splice(index, 1);
question.value = oldValue;
}
Unfortunately, function "splice" called from survey.react.js instead of array.splice.
i Rewrote code (after that works fine):
if (question.getType() === "checkbox") {
var oldValue = [];
question.value.map(function(item) {oldValue.push(item)});
      // var oldValue = question.value || [];
      var index = oldValue.indexOf(event.target.value);
      if (index >= 0) {
        oldValue.splice(index, 1);
        question.value = oldValue;
      }
    }

Could you please clarify - what's wrong with the current behavior?

Event does not work when i do uncheck and i need click 3 times instead of 2
that check and uncheck checkbox.
чт, 8 авг. 2019 г., 15:14 tsv2013<EMAIL_ADDRESS>
Could you please clarify - what's wrong with the current behavior?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/surveyjs/widgets/issues/134?email_source=notifications&email_token=AM3H3X4LFX7HEHYHRUVZZMLQDQE2VA5CNFSM4IKJVPD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD33NKOY#issuecomment-519492923,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AM3H3X6LOQSF3T65CJL4QJ3QDQE2VANCNFSM4IKJVPDQ
.

Event onValueChanged
чт, 8 авг. 2019 г., 15:21 Сергей Подольский<EMAIL_ADDRESS>
Event does not work when i do uncheck and i need click 3 times instead of
2 that check and uncheck checkbox.
чт, 8 авг. 2019 г., 15:14 tsv2013<EMAIL_ADDRESS>
Could you please clarify - what's wrong with the current behavior?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/surveyjs/widgets/issues/134?email_source=notifications&email_token=AM3H3X4LFX7HEHYHRUVZZMLQDQE2VA5CNFSM4IKJVPD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD33NKOY#issuecomment-519492923,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AM3H3X6LOQSF3T65CJL4QJ3QDQE2VANCNFSM4IKJVPDQ
.

Hello Sergey,
Indeed this is a bug. We fixed it via this commit. It will available in package with next minor update
Thanks, Alex
SurveyJS Team

Thanks😀


kube: cleanup GetDeployMetaFromPod

We don't need the full meta, only the name/namespace

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test unit-tests-arm64

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test unit-tests-arm64

integ-pilot-multicluster_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test integ-pilot-multicluster

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test unit-tests-arm64

integ-pilot-multicluster_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test integ-pilot-multicluster

integ-security-multicluster_istio
2b1ba30b5f104ea9cb894a7675483fd6d42d1507
link
true
/test integ-security-multicluster

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

PR needs rebase.

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


User invite UX issues

We often get reports from customers that are not able to accept invites.
Current working theory is that it is users who have existing accounts but don't know it and hence try to register again. We cannot tell them they already have an account as it leaks user information, but we can perhaps change the workflow to encourage users that may already have an account to sign in rather than register.

The invite email should check if the account exists. If it does they should land on the login page. If they don't it should land on the sign up page.


make fails with esp_err.h file not found

Current version of esp-idf as per their wiki setup into ~/esp
Toolchain is in the path, and IDF_PATH is setup appropriately.
make fails with esp_err.h file not found

echo  build/main.o
build/main.o
mkdir -p build
echo precompile
precompile
cc -I. -I../src -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/app_update/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/driver/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/esp32/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/freertos/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/log/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/newlib/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/sdmmc/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/sim/stubs/vfs/include -I/Users/lawrence/esp/esp-idf/components/soc/esp32/include -I/Users/lawrence/esp/esp-idf/components/esp32/include -I/Users/lawrence/esp/esp-idf/components/bootloader_support/include -I/Users/lawrence/esp/esp-idf/components/app_update/include -I/Users/lawrence/esp/esp-idf/components/spi_flash/include -I/Users/lawrence/esp/esp-idf/components/wear_levelling/include -I/Users/lawrence/esp/esp-idf/components/fatfs/src -I/Users/lawrence/esp/esp-idf/components/fatfs/test_fatfs_host/sdkconfig -I/Users/lawrence/esp/mk_esp32fat/sdkconfig/ -I/Users/lawrence/esp/esp-idf/tools/catch -g -m32 -ggdb  -c -o  build/main.o  src/main.c
In file included from src/main.c:11:
/Users/lawrence/esp/esp-idf/components/spi_flash/include/esp_partition.h:21:10: fatal error: 'esp_err.h' file not found
#include "esp_err.h"
^~~~~~~~~~~
1 error generated.
make: *** [build/main.o] Error 1

Hi,
unfortunately the build error seems to be inside esp-idf in components/spi_flash/include/esp_partition.h. I'm a little surprised to see this error though. The file the compiler is searching for should be located in /Users/lawrence/esp/esp-idf/components/esp32/include which is a directory included in the build command. Could you please verify there is a esp_err.h in /Users/lawrence/esp/esp-idf/components/esp32/include?

No, such file there.
esp_attr.h
esp_clk.h
esp_himem.h
esp_intr.h
esp_intr_alloc.h
esp_spiram.h
esp_ssc.h
rom/
esp32/
but no esp_err.h

What version of esp-idf are you using? The current master seems to have shuffled the include files quite a bit. Please try using v3.2 . That one should work just fine.

git pull
make clean
make
->
../partition.c:285:11: error: conflicting types for 'esp_partition_erase_range'
esp_err_t esp_partition_erase_range(const esp_partition_t* partition,
^
../include/esp_partition.h:259:11: note: previous declaration is here
esp_err_t esp_partition_erase_range(const esp_partition_t* partition,
^
2 warnings and 2 errors generated.
make[1]: *** [build/partition.o] Error 1
make: *** [/Users/lawrence/esp/esp-idf/components/spi_flash/sim/build/libspi_flash.a] Error 2

Hm, strange. Are you stll using ESP-IDF master? I've just tried with a fresh clone of esp-idf and it is working fine. Would you mind posting the full log output? It might help me track down what's wrong.

Any news on this topic? Did you get it to work?

Closing due to inactivity. Please feel free to reopen if you have any news regarding this topic


Enhance visual script, selection area popped up when disconnected nodes

Bugsquad edit: Fixes #11641.

CC @swarnimarun @fire @kidrigger

I still need to test the actual patch will do that later though.

@ChristopheLY Is this still desired? If so, it needs to be rebased and tested on the latest master branch. Additionally, the commits need to be squashed into one (or few).

I do not experience the source bug 11641

Closing as we just removed VisualScript for 4.0, so this can no longer be evaluated as is.
The VisualScript module has been moved to https://github.com/godotengine/godot-visual-script with the aim that it might be ported to a GDExtension if there are interested contributors to do so. Further work to improve the features could be done on that repository too (so currently there isn't anyone dedicated to maintain this repository, it will depend again on whether some contributors step up to do so).


change rootdir -> mitgcmdir

this PR is an attempt at simplifying my daily use of MITgcm. I replaced all occurences of ROOTDIR by MITGCMDIR in genmake2 and suggest_optfile_names
the idea is that I can put in my .bashrc
export MITGCMDIR=~/MITgcm and export PATH=${PATH}:${MITGCMDIR}/tools
and then use genmake2 wherever I want without genmake2 --rootdir=../../.
the previous rootdir option was already working but I am less inclined to put in my .bashrcfile export ROOTDIR=~/MITgcm
it is probably one of the least important PR you will ever get..

@jm-c the mitgcm_rootdir you put in #63 makes sense to me.

This PR is also problematic for the case when we need to call taf from a machine that cannot communicate to the internet: we need to pass the code to a different machine, and there you specifically have to point rootdir to ../../../MITgcm etc instead of hard-coding it, because on the machine with internet the absolute directories are different, but ../../../ works the same.

@antnguyen13 : just submitted a new PR with minimal changes in genmake2 ; note that
the generated Makefile is not affected so that it should not prevent you to continue
to do the same thing (pass code to a different and connected  machine).
@bderembl : with these changes (PR #76), if you set the environment variable MITGCM_ROOTDIR,
(e.g., in your .bashrcfile), it will allow you to do the same things as with MITGCMDIR in PR #62.
On Sun, Mar 25, 2018 at 10:12:56PM +0000, antnguyen13 wrote:

This PR is also problematic for the case when we need to call taf from a machine that cannot communicate to the internet: we need to pass the code to a different machine, and there you specifically have to point rootdir to ../../../MITgcm etc instead of hard-coding it, because on the machine with internet the absolute directories are different, but ../../../ works the same.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/MITgcm/MITgcm/pull/62#issuecomment-376007895

sorry, I didn't take the time to finish this. Thanks for the update


chore: update deployment example files

Update container tags to correct release version
Remove moac related definition files
Include persistent storage for etcd instance
Remove iSCSI transport SC example

Hell no!  Must have inadvertently based this feature branch off develop, not release/1.0
Closing this PR.


[#750] fix alias based map key dereferencing

fixes #750

Eclipselink messes up the order of joins:
SELECT t1.ID FROM     map_container_entity t2 LEFT OUTER JOIN map_value_entity t0 ON ((t0.CONTAINER_ID = t2.ID) AND (t1.ID = t0.map_KEY)) , root_entity t3, map_key_entity t1 WHERE (t2.ID = t3.CONTAINER_ID)

The cartesian join with map_key_entity t1 comes after the left outer join that uses t1 in its join condition.
The query should rather be:
SELECT t1.ID FROM     map_key_entity t1, map_container_entity t2 LEFT OUTER JOIN map_value_entity t0 ON ((t0.CONTAINER_ID = t2.ID) AND (t1.ID = t0.map_KEY)) , root_entity t3 WHERE (t2.ID = t3.CONTAINER_ID)

Since this is a bug in Eclipselink I am ignoring the test for Eclipselink.

Merged by 8601bf0eafdfbb4569ed7ed5c4c7496bbfc3e9bb


[XPathBridge] Allow to define enclosure inside content

Following my own request: https://github.com/RSS-Bridge/rss-bridge/issues/2843
Add a enclosuresPosition list parameter to define the enclosure as an enclosure or as an embed media inside the content.
Values can be: Enclosures, BeforeContent, AfterContent.
This feature follows the support of enclosures, which is limited to images only. I choose as well to use the plural of enclosure everywhere, as it is the case right now.

:-1:  This is an overly specific setting to add for a general bridge. The correct way to create this behavior would be to inherit from XPathAbstract and override formatItemContent.

I agree, especially after seeing that you are working on that https://github.com/RSS-Bridge/rss-bridge/pull/2719. However, I'll need to evaluate twice the enclosures one time in the Abstract, one time when I'm formatting content. Perhaps, a better way would be to have a kind of post-processing function after all the params have been evaluated.

As explained here, its not necessary to implement a dedicated post processing method for being able to manipulate items, as you can aswell overwrite BridgeAbstract's getItems() method to accomplish that. So I think the postProcessParams method offers a nice and direct way, but would be "dispensable". Basically its a design decision to have it or not.
The remaining changes in XPathBridge seem meaningful to me, as @imagoiq explained here. I am not sure how different feed readers interpret images attached as "enclosures" versus images embedded in the items content.

Thanks @Niehztog for the support. You were right, everything can be done from getItems. So, here is the latest update.

@yamanq @dvikan is there something blocking the merge?

Can you try to contain everything inside one or two methods?

Make a smaller set of changes.


Compatibility Issue Between ldapjs Library and FreeRADIUS

I've set up an LDAP server in Node.js using the ldapjs library, and it responds perfectly when using 'ldapsearch' as a tool. I attempted to configure FreeRADIUS to contact the LDAP server, the bind succeeds upon startup, and FreeRADIUS is ready to accept requests. Unfortunately, when I try with 'radtest,' the LDAP server crashes with the following error:
node:events:497
      throw er; // Unhandled 'error' event
      ^
VError: Parser error for <IP_ADDRESS>:57296: attribute must be a valid string
    at Parser.<anonymous> (/home/node/app/node_modules/ldapjs/lib/server.js:459:26)
    at Parser.emit (node:events:519:28)
    at Parser.write (/home/node/app/node_modules/ldapjs/lib/messages/parser.js:131:10)
    at Socket.<anonymous> (/home/node/app/node_modules/ldapjs/lib/server.js:474:19)
    at Socket.emit (node:events:519:28)
    at addChunk (node:internal/streams/readable:559:12)
    at readableAddChunkPushByteMode (node:internal/streams/readable:510:3)
    at Readable.push (node:internal/streams/readable:390:5)
    at TCP.onStreamRead (node:internal/stream_base_commons:190:23)
Emitted 'error' event on Server instance at:
    at Parser.<anonymous> (/home/node/app/node_modules/ldapjs/lib/server.js:459:12)
    at Parser.emit (node:events:519:28)
    [... lines matching original stack trace ...]
    at TCP.onStreamRead (node:internal/stream_base_commons:190:23) {
  jse_shortmsg: 'Parser error for <IP_ADDRESS>:57296',
  jse_cause: Error: attribute must be a valid string
      at set attributes [as attributes] (/home/node/app/node_modules/@ldapjs/messages/lib/messages/search-request.js:212:15)
      at new SearchRequest (/home/node/app/node_modules/@ldapjs/messages/lib/messages/search-request.js:158:21)
      at parseToMessage (/home/node/app/node_modules/@ldapjs/messages/lib/parse-to-message.js:61:19)
      at LdapMessage.parse (/home/node/app/node_modules/@ldapjs/messages/lib/ldap-message.js:262:41)
      at Parser.write (/home/node/app/node_modules/ldapjs/lib/messages/parser.js:117:38)
      at Socket.<anonymous> (/home/node/app/node_modules/ldapjs/lib/server.js:474:19)
      at Socket.emit (node:events:519:28)
      at addChunk (node:internal/streams/readable:559:12)
      at readableAddChunkPushByteMode (node:internal/streams/readable:510:3)
      at Readable.push (node:internal/streams/readable:390:5),
  jse_info: {},
  cause: [Function: ve_cause]
}

Debugging, I noticed that it only calls the bind function (with correct DN and password, as when I use ldapsearch), which I've written like this: server.bind(baseDn, async function (req, res, next) {. So, I tried to print req, res, and next to see the differences between the call with ldapsearch and the one coming from FreeRADIUS. Using 'diff,' I observed the variances and I don't see anything strange:
╰─❯ diff correct.txt wrong.txt
93c93
<    _peername: { address: '<IP_ADDRESS>', family: 'IPv4', port: 50162 },
---
>    _peername: { address: '<IP_ADDRESS>', family: 'IPv4', port: 57296 },
95c95
<      id: '<IP_ADDRESS>:50162',
---
>      id: '<IP_ADDRESS>:57296',
109c109
<    [Symbol(async_id_symbol)]: 283,
---
>    [Symbol(async_id_symbol)]: 323,
128,129c128,129
<  logId: '<IP_ADDRESS>:50162::1',
<  startTime:<PHONE_NUMBER>856,
---
>  logId: '<IP_ADDRESS>:57296::1',
>  startTime:<PHONE_NUMBER>212,
221c221
<    _peername: { address: '<IP_ADDRESS>', family: 'IPv4', port: 50162 },
---
>    _peername: { address: '<IP_ADDRESS>', family: 'IPv4', port: 57296 },
223c223
<      id: '<IP_ADDRESS>:50162',
---
>      id: '<IP_ADDRESS>:57296',
237c237
<    [Symbol(async_id_symbol)]: 283,
---
>    [Symbol(async_id_symbol)]: 323,
256c256
<  logId: '<IP_ADDRESS>:50162::1',
---
>  logId: '<IP_ADDRESS>:57296::1',

Any advice? Did I misconfigure something, or is it a bug?
Thank you in advance.

Update: freeradius should call the search first and then the bind; however, despite having implemented the search in my node application, it only calls the bind and then crashes. This is a behavior that the library has had since version 3.0.0 onwards.
With version 2.3.3, on the other hand, it works perfectly. It doesn't crash and correctly calls the search first and then the bind. Currently, I'll stick to the old version but I'm hopeful for a fix.
I would like to propose something to reproduce the error but unfortunately, I don't know how to do it.


ADDED : [Django by Django Girls]

Hey @archana-1209 !
Congrats on submitting your pull request.
You PR has been merged and the changes will be reflected on the website in a few minutes,.
Do leave a star, if you liked the repo ;)
Happy hacking ! 🎊


How can i configure this plugin?

I'm trying to configure it, but the plugin doesn't even recognize the "Broadlink RM3 Pro" device ... I'm not managing to scan the IR code or anything ...

I finally got to do it! : D
I don't understand how anyone posted this before, it's all separate ...

,
{
"platform": "BroadlinkRM",
"debug": "true",
"plugin_name": "homebridge-broadlink-rm",
"accessories": [
{
"name": "Logitech z906 Speaker",
"type": "switch",
"data": {
"on": "2600500000012990151015341510150f160f15101510150f160f15101510150f151015341510153415101510150f151015101510150f153416331634153415341534153415341510150005da0001294616000d050000000000000000",
"off": "2600500000012990151015341510150f160f15101510150f160f15101510150f151015341510153415101510150f151015101510150f153416331634153415341534153415341510150005da0001294616000d050000000000000000",
"hosts": {
"address": "<IP_ADDRESS>7",
"mac": "78:0f:78:00:5e:e7"
}
}
}
],
"plugin_map": {
"plugin_name": "homebridge-broadlink-rm"
}
}


All users filtred when importing

I have set up Lync connector with only four attributes, three in and four out.
All users are filtred out when importing, ou are not.
Lync 2010.
Importing
I have no Inbound System Scoping Filter set.
Relation between accountName and SamAccountName
Only flowing Enabled, RegistrarPool and SipAddress.
Outbound
4 attributes in Outbound.

DN
RegistrarPool
Enabled
SipAddress

Error
I have enabled tracelog and gets this in the log.
Its seems strange to search for 9*, any clues or am I on wrong tracks?
Method Name : PowerShellRuntime : Initialize
The progress record is parent = -1 id = 1 act = Import-Users stat = Invoking Get-CsUser -LdapFilter '(&(objectCategory=person)(objectClass=user)(msRTCSIP-PrimaryUserAddress=sip:9*))' cur =  pct = -1 sec = -1 type = Processing

Do you have any users that are already Lync enabled? If not, you won't see any in the CS. What you are seeing in the event log is expected and is explained at https://github.com/Microsoft/MIMPowerShellConnectors/wiki/Lync-Connector-Configuration#paging-filter

Yes thanks, I see now that I totally missunderstood how the import was suppose to work.
I have a lot of users activated though... looking deeper.

I had some leftover data in my Lab AD from previous installation. After cleaning up my lync attributes I can provision Lync.
Sorry to bother you.


Add example to README.md

Some simulation example with beam elements would be nice to have in README, including graphics. In the same way than in FEMPlates.jl.

Is it possible to use Literate.jl to generate the README example? When adding some test at the end we can easily follow if the example breaks.

I think it's not easy to do that way because README.md is usually a static file inside the repository. But we could include the example in the documentation using Literate of course.


Fixed typo in newFolderPicker.js

Hi I am enjoying the extension.
When you create a new folder then the title says create new file instead of folder, I think I fixed the problem.
Greetings Ferenc.

Thanks @GyorgyFerenc  👍
Can you give the repo a ⭐ too if you get a chance?

Yes obviously


First draft of topic for calling http3 from .NET 6

Summary
New topic for .NET 6 RC1.

Failure seems to be a lint issue in a different file. help !

closing and reopening for a fresh build

@samsp-msft We've addressed the other warnings. The only remaining build issues are from the content in this PR.

@BillWagner - just needs a signoff from docs.

@IEvangelist I thought about using the os switcher but considering it's like a single paragraph, and only in one part of the whole article, I thought it was overkill and probably just easier for the user to read it this way instead of worrying about the correct platform selected.

I think all the feedback has been addresssed.

@BillWagner - I think this is ready to go

ping @adegeo

I just realized this isn't in the TOC


Test on dor-services 7

Coverage remained the same at ?% when pulling 180a6ccf99ba61ad8227efede252f0580daf8c11 on test-dor-services into e60b9d7fdae1136ed41f0788eba85e182625b9df on master.


Ready this transformer plugin for GraphQL Transformer v2

👋  This is Rene from the AWS Amplify team! First off, THANK YOU for your amazing plugin!
I have some great news to share, we've rewritten the GraphQL Transformer plugin from the ground up to take advantage of some really amazing capabilities. All the details here: https://github.com/aws-amplify/amplify-cli/issues/6217#issuecomment-929677992
How to migrate your plugin to GraphQL Transformer v2
In order to make this plugin forward compatible with GraphQL Transformer v2, you need to make some tiny adjustments to the classes you inherit from. Migration steps here: https://gist.github.com/renebrandel/0b9537e2016e3dd9ed6d794b30b2e3f4
Happy to also hop on a call with you to walk you through the process. Email me at any time: renbran at amazon dot com

Hey @renebrandel,
Just wanted to appreciate that you seem to be on top of things here 🙇. Excited to see that the Amplify finally seems to have a good lead where things seem better coordinated. We've been affected by so many issues in the past where coordination lacked so much that new features or attempted bug fixes just shifted the problem.
P.S. While this would retire this plugin, this really should be part of the Amplify core, but having it as a plugin is definitely better than not having this option. There is a slight annoyance with the use of plugins like this, where the Amplify Console needs the package installed, but the only way (that we are aware of) to install the plugin so it can do it's work is by including it in the project package.json and that means added run time and a bunch of unnecessary overhead. More here: #9
I know you are not responsible for the Ampify Console, but maybe you know of a better way or could ping the Console team to have a look at how Amplify plugins that are needed for the build process only can be initiated/installed better?

Hi @houmark  - thanks for the pointers. While we can't automate the process in the short-term, I'm also trying to rewrite our docs to be more use case oriented. Happy to specifically call out the additional steps required on the documentation to reduce customer confusion in the short-term.

A new version of this transformer was released which is now compatible with GraphQL Transformer v2 🚀


Breaking issue - Fix regression from #2819

Hello!
Pull request overview

Fix breaking issue from #2819

The bug
NLTK can no longer be imported without having installed "wordnet", and wordnet cannot be downloaded without nltk being imported. This prevents users from using NLTK whatsoever.
After deleting the wordnet and wordnet_ic folders from my nltk_data folder, and importing NLTK, this is the result:
>>> import nltk
Traceback (most recent call last):
  File "[sic]\nltk\corpus\util.py", line 84, in __load
    root = nltk.data.find(f"{self.subdir}/{zip_name}")
  File "[sic]\nltk\data.py", line 583, in find
    raise LookupError(resource_not_found)
LookupError:
**********************************************************************
  Resource wordnet not found.
  Please use the NLTK Downloader to obtain the resource:

  >>> import nltk
  >>> nltk.download('wordnet')

  For more information see: https://www.nltk.org/data.html

  Attempted to load corpora/wordnet.zip/wordnet/

  Searched in:
    - '[sic]/nltk_data'
    - '[sic]\\Python39\\nltk_data'
    - '[sic]\\Python39\\share\\nltk_data'
    - '[sic]\\Python39\\lib\\nltk_data'
    - '[sic]\\AppData\\Roaming\\nltk_data'
    - 'C:\\nltk_data'
    - 'D:\\nltk_data'
    - 'E:\\nltk_data'
**********************************************************************

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "[sic]\nltk\__init__.py", line 153, in <module>
    from nltk.translate import *
  File "[sic]\nltk\translate\__init__.py", line 24, in <module>
    from nltk.translate.meteor_score import meteor_score as meteor
  File "[sic]\nltk\translate\meteor_score.py", line 13, in <module>
    from nltk.stem.porter import PorterStemmer
  File "[sic]\nltk\stem\__init__.py", line 34, in <module>
    from nltk.stem.wordnet import WordNetLemmatizer
  File "[sic]\nltk\stem\wordnet.py", line 12, in <module>
    class WordNetLemmatizer:
  File "[sic]\nltk\stem\wordnet.py", line 33, in WordNetLemmatizer
    def lemmatize(self, word: str, pos: str = wn.NOUN) -> str:
  File "[sic]\nltk\corpus\util.py", line 121, in __getattr__
    self.__load()
  File "[sic]\nltk\corpus\util.py", line 86, in __load
    raise e
  File "[sic]\nltk\corpus\util.py", line 81, in __load
    root = nltk.data.find(f"{self.subdir}/{self.__name}")
  File "[sic]\nltk\data.py", line 583, in find
    raise LookupError(resource_not_found)
LookupError:
**********************************************************************
  Resource wordnet not found.
  Please use the NLTK Downloader to obtain the resource:

  >>> import nltk
  >>> nltk.download('wordnet')

  For more information see: https://www.nltk.org/data.html

  Attempted to load corpora/wordnet

  Searched in:
    - '[sic]/nltk_data'
    - '[sic]\\Python39\\nltk_data'
    - '[sic]\\Python39\\share\\nltk_data'
    - '[sic]\\Python39\\lib\\nltk_data'
    - '[sic]\\AppData\\Roaming\\nltk_data'
    - 'C:\\nltk_data'
    - 'D:\\nltk_data'
    - 'E:\\nltk_data'
**********************************************************************

>>> import nltk
Traceback (most recent call last):
  File "[sic]\nltk\corpus\util.py", line 84, in __load
    root = nltk.data.find(f"{self.subdir}/{zip_name}")
  File "[sic]\nltk\data.py", line 583, in find
    raise LookupError(resource_not_found)
LookupError:
**********************************************************************
  Resource wordnet not found.
  Please use the NLTK Downloader to obtain the resource:

  >>> import nltk
  >>> nltk.download('wordnet')

  For more information see: https://www.nltk.org/data.html

  Attempted to load corpora/wordnet.zip/wordnet/

  Searched in:
    - '[sic]/nltk_data'
    - '[sic]\\Python39\\nltk_data'
    - '[sic]\\Python39\\share\\nltk_data'
    - '[sic]\\Python39\\lib\\nltk_data'
    - '[sic]\\AppData\\Roaming\\nltk_data'
    - 'C:\\nltk_data'
    - 'D:\\nltk_data'
    - 'E:\\nltk_data'
**********************************************************************

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "[sic]\nltk\__init__.py", line 155, in <module>
    from nltk.stem import *
  File "[sic]\nltk\stem\__init__.py", line 34, in <module>
    from nltk.stem.wordnet import WordNetLemmatizer
  File "[sic]\nltk\stem\wordnet.py", line 12, in <module>
    class WordNetLemmatizer:
  File "[sic]\nltk\stem\wordnet.py", line 33, in WordNetLemmatizer
    def lemmatize(self, word: str, pos: str = wn.NOUN) -> str:
  File "[sic]\nltk\corpus\util.py", line 121, in __getattr__
    self.__load()
  File "[sic]\nltk\corpus\util.py", line 86, in __load
    raise e
  File "[sic]\nltk\corpus\util.py", line 81, in __load
    root = nltk.data.find(f"{self.subdir}/{self.__name}")
  File "[sic]\nltk\data.py", line 583, in find
    raise LookupError(resource_not_found)
LookupError:
**********************************************************************
  Resource wordnet not found.
  Please use the NLTK Downloader to obtain the resource:

  >>> import nltk
  >>> nltk.download('wordnet')

  For more information see: https://www.nltk.org/data.html

  Attempted to load corpora/wordnet

  Searched in:
    - '[sic]/nltk_data'
    - '[sic]\\Python39\\nltk_data'
    - '[sic]\\Python39\\share\\nltk_data'
    - '[sic]\\Python39\\lib\\nltk_data'
    - '[sic]\\AppData\\Roaming\\nltk_data'
    - 'C:\\nltk_data'
    - 'D:\\nltk_data'
    - 'E:\\nltk_data'
**********************************************************************

The core of the bug can be found in this line:
  File "[sic]\nltk\stem\wordnet.py", line 33, in WordNetLemmatizer
    def lemmatize(self, word: str, pos: str = wn.NOUN) -> str:
  File "[sic]\nltk\corpus\util.py", line 121, in __getattr__
    self.__load()

My recent changes from #2819 has converted
from nltk.corpus import wordnet
from nltk.corpus.reader.wordnet import NOUN

...

   def lemmatize(self, word, pos=NOUN):
...

to
from nltk.corpus import wordnet as wn

...

   def lemmatize(self, word: str, pos: str = wn.NOUN) -> str:
...

This change seems innocuous, with no real consequences whatsoever - but it seems that using wn.NOUN forces the WordNetCorpusReader to load. This is not a problem if wordnet is already downloaded. But, if it isn't, then an exception gets thrown, telling the user to download wordnet.
However, this cannot be done when import nltk throws an exception, and then
>>> import nltk
>>> nltk.download("wordnet")

cannot be executed.
The fix
Simply replace wn.NOUN with "n", which is clearer (people recognise strings, but not wn.NOUN), but removes the "mental link" to the wordnet global variables. Perhaps there's a way to use NOUN again without loading the corpus loader.

By the way, the reason the tests never picked this up, is because nltk_data is cached. As a result, loading wordnet doesn't give issues. However, if the cache ever needed renewing, then it would start complaining.
I must say that I never imagined these consequences.

Tom Aarsen

I'm open to some feedback on this, but I think it's best to have this merged ASAP.


Does the current version support vue2?

When referencing, it prompts entry.js:11 Uncaught TypeError: Cannot set properties of undefined (setting '$shepherd')

I don't think it does. You can use older versions for vue 2.


Unable to move/change text selection

Device: iPad Pro (11-inch), iOS 15.3.1
I'm unable to select text properly. I double tap to select an initial word, but then I cannot move/change the text selection at all.
Here's a screen recording. I double tap "Hello", and try move the text selection to "Hello, World".
https://user-images.githubusercontent.com/98935285/154841718-6fa402f7-a430-43e5-bac3-bdc2dbed0b26.MOV
I just got codeapp today. Previously I used Spck Editor, but it stopped getting updates on iOS, so now it's fairly outdated.
Spck Editor's text selection works great. They have big buttons for moving text selection, and a quick-menu popup. Here's a screenshot:

Please fix this, I can't really use codeapp until properly selecting text is possible. I also hope you can add a quick-menu popup for Cut/Copy/Paste/Select All, as shown in the Spck Editor screenshot.

Thank you for reaching out. I know it's important and  I will try to replicate this feature.


play-json: ScalaJS support missing for recent versions

Hi there,
Im in the means of upgrading a project to scalajs 1.0.0. We use it for our SPA where our API calls to our backend are facilitated using tapir, sttp client and play-json as serializer.
While doing the upgrade I realized that for the artifact "com.softwaremill.sttp.client" %%% "play-json"  no scalajs version was published since version 2.0.9. Past versions also only supported scalajs 0.6.x.
https://mvnrepository.com/artifact/com.softwaremill.sttp.client/play-json
From what I understood (by asking one of softwaremill's employees) support was not dropped as I initially suspected, but the problem is merely caused by a bug in a buildfile.
If you could look into that, it would be highly appreciated.

I think play-json didn't have a scalajs 1.x release for some time, hence this was disabled in the build. I did a release for version 2.2.9 of that module, and in 3.x this is already enabled.

I think play-json didn't have a scalajs 1.x release for some time, hence this was disabled in the build. I did a release for version 2.2.9 of that module, and in 3.x this is already enabled.


got TS2344 [ERROR]: Type does not satisfy the constraint 'Record<string, unknown>' using stmt.get

I have this table:
CREATE TABLE producers
   ( id INT UNIQUE NOT NULL
   , title TEXT NOT NULL
   , phone TEXT NOT NULL
   , address TEXT NOT NULL
   , city TEXT NOT NULL
   , zip_code TEXT NOT NULL
   )

And this code produces a typescript error(TS2344):
interface ProducerRecord {
  id: number
  title: string
  phone: string
  address: string
  city: string
  zip_code: string
}

export function fetchProducer(id: number) {
  const stmt = db.prepare(
    'SELECT * FROM producers WHERE id=?;'
  )
  const datum = stmt.get<ProducerRecord>(id)
  if (datum) {
    return {
      ...datum,
      address: datum.address ? datum.address.split('\n') : []
    }
  }
  return null
}

This is the error I get:
error: TS2344 [ERROR]: Type 'ProducerRecord' does not satisfy the constraint 'Record<string, unknown>'.
  Index signature for type 'string' is missing in type 'ProducerRecord'.
  const datum = stmt.get<ProducerRecord>(id)

If I ignore this statement with:

  // @ts-ignore
  const datum = stmt.get<ProducerRecord>(id)

It works.
yet the documentation suggests that this is what is expected .
Did I miss something ?

The deno devs should be using
---get<T extends Record<string, unknown>>(
+++get<T extends Record<string, any>>(

Ah yes... indeed. I am not an expert, but that makes sense.


[WIP] Load more messages webview

Some work is remaining, will complete is ASAP. :)

Let's do that in several steps.
I have objections to a good portion of the code, so likely the end result will be very different.
Try to first just add the 'fetch more' code, and do it with some error margin and test it well.

Closing as implemented differently.


Update volumenetshare images

I noticed the volumenetshare images are quite out of date https://github.com/rancher/os-services/blob/master/images/20-volumenetshare/Dockerfile#L4
Can these be updated? I'm running into some issues with volume-nfs and can't help but wonder if the latest version would work.
I'd be happy to submit a (trivial) PR, but I'm not entirely sure how one would go about building and testing an image that runs under system docker.

@nvx RancherOS is EOL https://github.com/rancher/os/issues/3000 we just created release candidate under BurmillaOS name where these have been updated: https://github.com/burmilla/os/releases/tag/v1.9.0-rc1


Support Optional Dependencies

I'm currently working on a project where I have a number of different modules which make up our web application stack. We have many of these stacks defined, all of which pull from a set of top-level .hcl terragrunt files (one for each module). Some of these modules are optional for a given stack, in my case for example whether or not to enable AzureAD single sign-on is an optional, and is defined as a separate module. However, I have a module which is dependant on the outputs of the AzureAD module when present. Therefore, having an option within the dependency block to simply enable or disable a given dependency would be really helpful. Right now even if I set skip_outputs to true terragrunt still expects the module directory (as pointed to by the config_path attribute) to exist and contain a terragrunt.hcl file.

This seems reasonable. Having an enabled attribute on the dependency makes sense to me! We're a bit buried with other initiatives at the moment, so would greatly appreciate a PR to add this feature.

This seems reasonable. Having an enabled attribute on the dependency makes sense to me! We're a bit buried with other initiatives at the moment, so would greatly appreciate a PR to add this feature.

I came here looking for a very similar solution. In my case I would like the enabled status to be conditional:

I also use a super DRY config of single root level HCL files that are used by modules that are deployed in different server environments and different AWS regions.
This way each module has a state file for any given combination of environment and/or region.
Occasionally the "primary" region will create a unique value that must be used by the "secondary" regions.
Clearly the answer to that is for the "primary" to output the value for use as an input to the "secondaries" and to do this by using a dependency block.
The issue is that this causes a dependency cycle that currently cannot be conditionally broken.

My hope is that an attribute such as enabled (TRUE by default) could evaluate its required boolean via an expression. In this way if the dependency block is to be evaluated and the current region variable is the "primary" then the dependency block will be skipped. Therefore if we are running in "primary" then code execution continues as normal with no dependency requirements but if the region is not "primary" the dependency is actioned and the outputs can be fetched and passed back to the calling region.
I will take a look at the code and attempt a rough PR but does that sound reasonable within the general TerraGrunt ethos @yorinasub17?

I wish this was implemented, this would really solve our use case for blue/green environment flips within terragrunt.

I am using a dummy configuration to achieve this in my projects - an empty Terraform module with just these files:
.terragrunt/mock
├── main.tf
├── outputs.tf
├── terragrunt.hcl
└── variables.tf

The .terragrunt/mock/terragrunt.hcl looks like this:
remote_state {
  backend = "local"
  config = {}

  generate = {
    path = "backend.tf"
    if_exists = "overwrite_terragrunt"
  }
}

The other files are empty and variables.tf and outputs.tf only exist to make TFLint happy.
Then in my root terragrunt.hcl file (or wherever I would need the optional dependency), I set the config_path conditionally:
dependency "optional" {
  config_path  = local.optional_dependency_config_path != "" ? local.optional_dependency_config_path : "${get_parent_terragrunt_dir()}/.terragrunt/mock"
  skip_outputs = local.optional_dependency_config_path == ""
}

I am using Terragrunt 0.31.3, so I'm a bit behind, but I think this would still work in the current version as well.

Hi, what about implementing this flag for dependency block ?

Could really use this

Released in https://github.com/gruntwork-io/terragrunt/releases/tag/v0.50.17


GCC inside AlphaRTC as a compilable branch

Closing as https://github.com/OpenNetLab/AlphaRTC/tree/gcc is ready.


Voice recognition issue while executing "new paragraph" command

some time droidspeech work properly but sometimes skip the whole sentence specially after writing multiple lines and at that time drodspeech stucks and also skip the "new paragraph" command to enter "new line". "new paragraph" command not execute when we just say new paragraph

I am facing same issue.
Words, even short sentences are ignored. Seems not being listen by DroidSpeech.
Punctuations when said SOLO no action most of the time. Like keep saying NEW PARAGRAPH it will add MAY BE one time but nothing afterwards. However was expecting to add NEW LINES 3-4 times.
Suggest whats the issue & how to fix ?


Fix overflow from i64::MIN

wrapping_neg has the correct behavior, and avoids - num from crashing with an overflow error in debug builds in jzon::number::Number::from(i64::MIN).

Ui, well spotted, thanks for the contribution!


core-to-plc: fix a number of things to get Swap compiling

Support the GHC runtime errors from e.g. failed pattern matches.
Support @ patterns properly.

This is painless at the code level due to PIR, but unfortunately I changed the order in which we compile things so all the uniques change again. Need that clever golden testing lib...

Explicitly don't support record selectors.

This is surprisingly non-trivial to support properly, and can always be replaced by pattern-matching.

Use our own definition of Ratio inside Swap.

Ack, I always forget to cabal clean before cabal testing because poor old cabal doesn't understand the tests' compile-time dependency on the plugin code...

Hm, actually the approach I've taken for @ patterns does duplicate the scrutinee expression. Perhaps we should use a reference to the bound variable for the match itself. That would give us an extra let-binding in all cases where there isn't an @ pattern. Maybe we can use GHC's occurrence analysis to improve this...
Also, I'm confused by the tests failing again. I guess those errors include names generated by GHC, which maybe aren't stable :see_no_evil:

I've added a patch to strip error context in the tests. That should make things stable again.
I think I'm going to consider codegen improvements to at patterns in a separate PR. My preferred solution I think is to always insert the let binding, and then add a PIR pass to inline let-bindings where the binding is just to another variable reference.


robot.html doesn't show image for each camera in render, does this mean the demo didn't work?

I ran the following in the terminal and the script finished with no errors and the output is a robot.html:
python relpose/demo.py  --image_dir examples/robot/images \     --mask_dir examples/robot/masks --output_path robot.html
When I open the robot.html in the browser, I see a number of cameras but there's no image associated with each one. Is this normal?

You should be able to see the original images, similar to here: https://amyxlase.github.io/relpose-plus-plus/robot.html
If you can't seem them, maybe try checking if the image was embedded in the HTML file properly


Rich text control does not display the correct theme colors for fonts.

Thank you for reporting an issue, suggesting an enhancement, or asking a question. We appreciate your feedback - to help the team understand your
needs please complete the below template to ensure we have the details to help. Thanks!
Please check out the documentation to see if your question is already addressed there. This will help us ensure our documentation is up to date.
Category
[ ] Enhancement
[ x] Bug
[ ] Question
Version
Please specify what version of the library you are using: [  2.4.0  ]
If you are not using the latest release, please update and see if the issue is resolved before submitting an issue.
Expected / Desired Behavior / Question
The font colors for the rich text control should be shown according to the applied SharePoint theme. On our SharePoint tenant, we are using a custom theme (based on the colors orange), however we can still see the default theme colors in the font colors palette (blue colors shades).
Observed Behavior
I believe that the theme colors should be reflected in the control based on the theme that is being used.
Steps to Reproduce
Apply any theme with different color shade in sharepoint site.
Verify the default theme colors for font in Richtext control panel.
Thanks!

Hi @jayprajapati,
By now (version 3.15.0) this should work now.
Can you confirm on your side?


Ships behaving strangely

Hello again!
I was testing build 99 on a fresh SP world and I had a couple of issues with the ships after infusing them with physics. At first I had the issue of ships keeling over and swinging mid-air like pendulums. I soon figured it was just me not configuring the hovercraft controller properly (thrust for stability was set to 0).
Once I had a problem with ships spontaneously rising to high altitudes. I don't know what caused it, but it did not happen in a fresh SP world after that. Perhaps the ship I built was just so ugly that the earth started to actively repel it.
There was also an issue with both of the above combined, at first, the hoverbarge tilted forward at an extreme angle and then refused to level off no matter the amount of thrust I input for stability. Afterwards, I came back to the barge and installed a new Infuser and Hovercraft Controller. After this the ship kept level, but whenever I applied forward momentum with an elite engine, the ship would also start to rise fast. As I cut off the signal to the engine, the ship came back down to Y level 86 as it was set in the HC.
As mentioned in #45 I also had issues with "sliding" off the moving ships in survival mode. I even commandeered a villager's hut, which for it's enclosed space, made for a great shuttle, however I still slid through the walls.
I tried to hijack a lone pirate ship on the seas, but the mod said that this is exceeding the permitted size limit. I tried to change it with /setPhysConstructionLimit, but it wouldn't work. I was given an "unknown command" message.
These issues might have to do with the fact that I have lots of mods installed and things get busy for the PC with chunkloading etc. Once I get the build installed on our SpongeForge server, I will report back of my findings.

The ship randomly going up forever is something I've experienced too, relogging (single player) or restarting your server has fixed it every time I've experienced that.
About that pirate ship: was it touching the ground at all? Also it's /physSettings <use TAB for options> now, was changed with the release of 0.8.7 (not sure if the error message says that, though :/)

No, the pirate ship was in water and I double checked, no ground connection. Thank you for clearing up the command confusion. I didn't know that I could use "tab" for options. I will try it.
I failed to specify that the Infuser told me to use the now obsolete command (/setPhysConstructionLimit).

Ah OK, that's easy to fix. @BigBastard probably has some to say about ships going up forever.
As for the pirate ship, that could do with the algorithm including water when infusing physics on an object. I'll have a look at that too.

Hello again!
I tried build 106 today and was able to assemble a ship I built into water. After a while it started to fly upwards on it's own. I tried to relog into the world (SP) and the game crashed. I am attaching a crash log:
crash-2017-03-16_16.57.12-server.txt

@Liiw I've been trying to track down that error for over a month. Does the crash persist whenever you load the world?

I tried build 109. Created a new SP world, made a ship in the world. After a while it started to fly upwards. I quit the world and relogged into the world. It crashed. I restarted the game and tried to join again, it crashed again. Although, it seemingly rather "froze" than crashed. The crash log appeared in the folder, but nothing indicated, that the game is not responding. Attaching all sorts of stuff in hopes that this will help:
crash-2017-03-18_05.31.34-server.txt
crash-2017-03-18_05.44.07-server.txt
fml-client-latest.txt
latest.txt

I think I found the cause. VW was creating an infinite loop, but the crash itself didn't report as an infinite loop crash because the Chunk Provider was calling Reflection, causing the java.lang.reflect.InvocationTargetException error.
Anyways, as always let me know if this didn't fix it.
https://jenkins.ironhide.de/job/Valkyrien-Warfare-Revamped/111/

That seems to have fixed it! I made a fresh world, built a ship, ship tried to leave the atmosphere, I relogged. The game didn't crash and the ship came down to my preset Y level. Excellent work!

W00T!

Fair enough, I understand, the other issues require separate threads.
Anyways, great work on the bugfixing!


Build issue for Nest.js in production

I am facing the below issue in production whiel building nest.js app.
/app/node_modules/cli-highlight/node_modules/chalk/source/index.js:103
    ...styles,
    ^^^

SyntaxError: Unexpected token ...
at createScript (vm.js:53:10)
at Object.runInThisContext (vm.js:95:10)
at Module._compile (module.js:543:28)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object. (/app/node_modules/cli-highlight/dist/theme.js:10:28)
chalk version from package.json
"cli-highlight": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.4.tgz",
"integrity": "sha512-s7Zofobm20qriqDoU9sXptQx0t2R9PEgac92mENNm7xaEe1hn71IIMsXMK+6encA6WRCWWxIGQbipr3q998tlQ==",
"requires": {
"chalk": "^3.0.0",
"highlight.js": "^9.6.0",
"mz": "^2.4.0",
"parse5": "^5.1.1",
"parse5-htmlparser2-tree-adapter": "^5.1.1",
"yargs": "^15.0.0"
}
node.js version - v12.14.1
npm version - 6.14.8
nest version - 7.5.1
typeorm - "version": "0.2.26"
"cli-highlight": "^2.0.0"
I saw some similar issue raised .But couldn't come to a conclusion on which is better way to fix this issue.
Could you please help with this issue.

That error happens when you're using an older Node.js version.

node.js version - v12.14.1

This is not the Node.js version being used when the error happens.

Closing as this is not an issue with Chalk.


PDF render blank

Attach (recommended) or Link to PDF file here:
A2 Id. Sup. Ct. Orig. Drwg.PDF
Configuration:

Web browser and its version:
Chrome: Version 65.0.3325.181 (Official Build) (64-bit)

Operating system and its version:
Mac OSX 10.13.3

PDF.js version:
Latest master branch on with commit a8e9f6cc290e4f12ceb01f36c783477d1fc75bfe

Is a browser extension:
No

Steps to reproduce the problem:

After upload the pdf, it render as blank page
No error shows on Inpsector

What is the expected behavior? (add screenshot)
Show open it will all the content
What went wrong? (add screenshot)
Blank page
Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

This is a duplicate of issue #6741, and should be closed as such.

I see the #6741 is still open for over 2 years.  Will there be a fix for this?

Closing since this is a duplicate.


HD Wallet as Default

I would strongly recommend to make HD wallet the default wallet, so that you can't loose your coins when you're wallet.dat is corrupted or has gone.
If somebody has imported addresses additionally, a warning exclamation mark along with a tooltip info should light up.The info should say, that it is highly recommended to send the coins to a address created by the HD wallet.

Redundant to #82


Impeller: add minimal golden image tests for iOS

While implementing the conical gradient ( https://github.com/flutter/engine/pull/40236 ) I noticed there was no infrastructure for doing a golden image test with the result to make sure it doesn't get broken.  Gradient tests can be flakey but we should have some guarantee that the gradients don't break.
design doc: https://docs.google.com/document/d/1_Ckq2Enl0PTAy987vDgcnDswe8PMoEFGwWbfB6aau2s/edit?usp=sharing

@flar noted in a chat that there is already something like this for display lists where we are testing display lists vs directly into skia.  We could potentially add an impeller backend to those tests and add a comparison to images versus comparison to skia.
See display_list_rendertests : https://github.com/flutter/engine/blob/f9f7706de5e058f1000d55900e361fdba1c07dd3/display_list/dl_rendering_unittests.cc


Fix bug in the teamPager.

Conditional logic in the teamPager route only renders teams if the user is a member of at least one team.  If a user is a maintainer of all of their teams and never a member no teams display when selecting "Your Teams."
Current logic

Updated logic

Thanks so much! 🙇🏻


Installation fails with "install-share.sh: UNPACK_PARAMS: not found"

Hello contributor,
I found an error after run command $make at build path. An error show as below.
[100%] Built target llvmir2hlltool
Install the project...
-- Install configuration: "Release"
Downloading archive from https://github.com/avast-tl/retdec-support/releases/download/2017-12-15/retdec-support_2017-12-15.tar.xz ...
2017-12-20 20:27:00 URL:https://github-production-release-asset-2e65be.s3.amazonaws.com...xxxx....attachment%3B%20filename%3Dretdec-support_2017-12-15.tar.xz&response-content-type=application%2Foctet-stream [124618948/124618948] -> "/retdec-build/share/retdec/support/retdec-support_2017-12-15.tar.xz" [3]
Verfifying archive's checksum ...
Unpacking archive ...
/retdec/cmake/install-share.sh: 93: /retdec/cmake/install-share.sh: UNPACK_PARAMS: not found
ERROR: unpacking failed
CMake Error at cmake_install.cmake:42 (message):
  RetDec share directory installation FAILED

Makefile:83: recipe for target 'install' failed
make: *** [install] Error 1

Line number of error refer at install-shared.sh file. You can check at link below.
https://github.com/avast-tl/retdec/blob/ecc3464d60b779d0f5eea8439ef3ef7ac4a36fe3/cmake/install-share.sh#L93

Thank you for the report! We have fixed it in acf6ead232230f531af2de9507a54e8139a6e75d, so after you pull the changes via Git, it will work.