minor - :commands output broken (in client-server mode)

Hi Bruce,
I'm working on a linux client wrapper (sort of CS botdev tool)  I discovered a minor issue in client-server mode:
:commands do not report the list of CS commands, but say
use one of those as all input.

expected output is instead, that one correctly supplied in standalone mode:
   >>:commands

---- Debugging commands -
:do - Execute the arguments as an output stream, e.g., invoke a function, set variables, etc
:silent - toggle silent - dont show outputs
:log - dump message into log file
:noreact - Disable replying to input
:notime - Toggle notiming during this topic
:notrace - Toggle notracing during this topic
:redo - Back up to turn n and try replacement user input
:retry - Back up and try replacement user input or just redo last sentence
:say - Make chatbot say this line
:skip - Erase next n gambits
:show - All, Input, Mark, Number, Pos, Stats, Topic, Topics, Why, Reject, Newlines
:time - Set timing variable (all none prepare match ruleflow pattern query json macro user usercache sql tcp topic)
:trace - Set trace variable (all none basic prepare match output pattern infer query substitute hierarchy fact control topic pos)
:why - Show rules causing most recent output
:authorize - Flip authorization for all debug commands

...
...

Maybe just an erratum.  See:
>> :prepare do you eat bacon?

eat     Object: bacon ? (char*) PRESENT

>> :topicinfo

> ) ^keep ( ) ^gambit ( $$currenttopic )

 >> :commands

use one of those as all input.

modest proposal:
:commands are a really powerful CS feature for bot makers test/debug and those deserve a better usage explanation (in documentation) :-)
The wiki document that detail the syntax of each command could be enhanced:
https://github.com/bwilcox-1234/ChatScript/blob/master/WIKI/ChatScript-Debugging-Manual.md
I'd suggest, for each command, to explain one or more small parameters usage examples.
On low priority, it could be helpfull to have an online help, something like like
>>:help topicinfo

blablabla
blablabla

Thanks for your patience!
CS commands directives are great!
giorgio

in current version linux/windows I do not see a problem seeing :commands displayed as a client of a server

:prepare do you eat bacon?  -- fixed (later version)

:topicinfo -- not seeing anything displaying incorrectly.

hi Bruce
using client-server, is all fine with :* commands except with :commands:
I run the server:
$ nohup sh -c 'cd /my home/ChatScript/BINARIES && ./LinuxChatScript64 port=1024' >/dev/null 2>&1 &

so I run the client using a TCP socket connection with my Ruby code here: https://github.com/solyaris/rChatScript/
If run  :commands: I got
>> :commands

use one of those as all input.

the string is not expected output ?!
$ grep -nr 'use one of those as all input.' .

...
...
./SRC/testing.cpp:9770: { (char*)":autoreply",C_AutoReply,(char*)"[OK,Why] use one of those as all input."},

Nevertheless,  if I run:
$ nc localhost 1024
testuser^@giorgiobot^@:commands^@

I got the expected output list
---- Debugging commands -
:do - Execute the arguments as an output stream, e.g., invoke a function, set variables, etc
:silent - toggle silent - dont show outputs
:log - dump message into log file
:noreact - Disable replying to input
:notime - Toggle notiming during this topic
:notrace - Toggle notracing during this topic
:redo - Back up to turn n and try replacement user input
:retry - Back up and try replacement user input or just redo last sentence
:say - Make chatbot say this line
:skip - Erase next n gambits
:show - All, Input, Mark, Number, Pos, Stats, Topic, Topics, Why, Reject, Newlines
:time - Set timing variable (all none prepare match ruleflow pattern query json macro user usercache sql tcp topic)
:trace - Set trace variable (all none basic prepare match output pattern infer query substitute hierarchy fact control topic pos)
:why - Show rules causing most recent output
:authorize - Flip authorization for all debug commands

---- Fact info -
...

Confused.
I close myself the issue and I'll reopen, in case


Error status incorrect

I got it working easily so kudos to you but the payload.error is 0 even though I disconnected the plc. It becomes -1 only if I put non-existent address.

Hi,
that's weird. I have done extensive testing with a non-existent PLC. What system do you use? (Windows /Linux)
I have observed once that the TCP stack of node. js reacts differently to the systems. However, this was the case with an earlier version of node. js.

So my setup is:

Node-red runs on raspberry pi
IBH S7 softplc runs on my windows 10 PC
I disconnect by terminating the softplc program

The node actually shows 'disconnected' but the payload.error is still 0 with array of last good values, not null.
I left my raspi at home so I cannot attach the screenshot. I will later.

In version 1.0.2 there is an error when reading an array of values. The error will be fixed in the next version (release date is Friday).
I suggest that you run the test again with the new version.

Hi,
a new version is relesed. Is the issue fixed with this version or still available?

close due to inactivity


Average electricity price today - should today/tomorrow attributes state change at midnight?

Just noticed that attributes Prices today and Prices tomorrow seem to update only when the next day prices are received. Would it make sense to update the attributes to reflect the date change? E.g. as of now, when tomorrow's prices are not yet known, Prices today attribute shows prices for yesterday, and Prices tomorrow show today's prices.

you are right. This came with the update of #71 of @sfstar . This could be fixed with an if else statement that checks if tomorrows prices are available, and then the returns the right slices.

One small correction the behaviour for the datatoday and tommorow attributes was last changed in #62.
Specifically this code block determines:
        if parsed_data.size > 48:
            data_today = parsed_data[-48:-24].to_dict()
            data_tomorrow = parsed_data[-24:].to_dict()
        else:
            data_today = parsed_data[-24:].to_dict()
            data_tomorrow = {}

        return {
            "data": data_all,
            "dataToday": data_today,
            "dataTomorrow": data_tomorrow,
        }

And is referenced in:
            "prices_today": self.get_timestamped_prices(self.data["dataToday"]),
            "prices_tomorrow": self.get_timestamped_prices(self.data["dataTomorrow"]),

#71 didn't change this behaviour (at least as far as i'm able to see. However, if i'm incorrect and it was introduced by #71 i'm sorry)

Upon further investigation one thing that might explain why #71 broke this behaviour is that only changing attributes is not enough to update the entity.
Since #71 did limit state changes for avg entity to on publish on default.
For now changing the behaviour of the entity to rotation should ensure the dataToday and dataTomorrow are correctly filled.
This will however also change your avg,min,max etc entity updates to only at midnight (instead of instantly when data is published).

Yes that is what I meant as well. The boolean can be true if the length of the list is greater than 24.

v0.5.0 is released. The discussed issues should be solved. Please feel free to open a new issue if you feel this is needed.


Feature/filter datasets by country

Following the previous PR to create countries tags for the map menu, now it needs to be connected to the data to filter the datasets menu based on the countries available. This is mostly selectors refactoring and can be a little hard to follow. Before reviewing be aware that only the most blazing practices have been applied to make the selectors as blazing as possible 🔥 💨 . Therefore complex review of these is likely unneeded.
Key points that lead to these blazing levels of performance:

refactor the map-selectors to parse all datasets initially allow the selector to be reused by other components.
refactor the menu-selectors to use map datasets and parse in sections based on countries selected and categories from the config.
display countries as subCategories above global layers when that country is selected.
display sentence for countries that have no layers in that datasets tab.
show countries statement in legend for layers that are non global and are available for certain countries "This layer is only available for certain countries" -> tooltip showing countries list.

BONUS (don't add to blazingness, but still 🔥):

updated layer manager
minor structure change to <Pill /> component
loader for when datasets on the menu are loading
fix an old issue with the <Threshold Selector /> in the Legend components from getting the correct Layer data.

Looks like its working really well 👍

@sorodrigo thanks for the comments. I will take a look at addressing them. classnames is a nice thought that we forgot about a long time ago. It would make the components more expressive. We can address the selectors styles at a later date and I will make a note.
I am not sure I agree on your isEmpty comment, as that is the purpose of the function. Agreed it means you can't see the type but I wouldn't say it is abusing it.

@sorodrigo feel free to review again.


enable updates through KUDO cli

What would you like to be added:
Add support in KUDO cli to support easy updates to an instance
kubectl kudo update --instance=kafka -p ZOOKEEPER_SESSION_TIMEOUT_MS=15000
right now its possible through kubectl patch
Why is this needed:
To simplify the updates process, and make it easier to tune an instance in case if some issues are coming up

Already done


Remove events module.

Only used by RTM client. Can be kept in slack crate.

makes sense, LGTM :+1:


Use correct syntax in XmlDoc

Fixes #787

Current coverage is 83.30% (diff: 100%)

Merging #789 into master will increase coverage by <.01%

@@             master       #789   diff @@
==========================================
  Files           314        314
  Lines         11910      11912     +2
  Methods           0          0
  Messages          0          0
  Branches       1564       1564
==========================================
+ Hits           9921       9923     +2
  Misses         1561       1561
  Partials        428        428

Powered by Codecov. Last update 7fc695f...9fe94ab


add minification step at prepublishOnly and test-ci

@Swivelgames if you are available and would review this, please review
I tried two different esbuild minifier commands, because the main "--minifier" command broke esmock and caused the tests to fail.

esbuild $filename --minify,
esbuild $filename --minify-whitespace --minify-identifiers

name
src
--minify
whitesp.

esmock.js
1498
731
750

esmockCache.js
888
427
463

esmockLoader.js
3708
1482
1626

esmockIsLoader.js
209
184
184

esmockModule.js
6883
2680
2911

total
13186 (13.2kB)
5504 (5.5kB)
5934 (5.9kB)

The same version of node passes the same tests here as used by the failing CI tests. I'm not sure what causes this.

I think the echo command is breaking the encoding

I made a serious error storing the values in the variable first. I didn't find the esbuild option to allow over-writing to the source file so was trying to work around that. Fortunately, the ci tests are updated to test the minified sources and will catch this error if it happens in the future. https://github.com/iambumblehead/resolvewithplus/pull/17

> npx esbuild ./src/*[mj]s --minify --allow-overwrite  --outdir=src/

  src/esmockModule.js    2.6kb
  src/esmockLoader.js    1.4kb
  src/esmock.ode.js      743b
  src/esmock.js          731b
  src/esmockCache.js     427b
  src/esmockIsLoader.js  184b

⚡ Done in 3ms

this command works nicely, should work in windows and has a nice little summary

I couldn't find a way to make esbuild process a set of files in windows. The minify commands here aren't nice but maybe they could be replaced later on.


[FLINK-18818][filesystem][tests] Ignores exceptions after files written successfully in HadoopRenameCommitter test

What is the purpose of the change
This PR fixes the issue occurred in HadoopRenameCommitterHDFSTest. With Hadoop 2.x some exception might thrown after files are written successfully, these exception should be ignored.
Brief change log

fb621d653a6765dca63ad6c057fbcd7a2b549a90 ignores the exceptions on closing FSDataOutputStream.

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature?no
If yes, how is the feature documented? not applicable

The fix looks good! I'll merge once CI is green.

@flinkbot run azure

Thanks a lot for this fix! I merged it. 👌


🍒 Cherry pick PR #18293 to staging 🍒

🍒 Cherry pick https://github.com/Expensify/App/pull/18293 to staging 🍒

🚀 Cherry-picked to staging by https://github.com/OSBotify in version: 1.3.20-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Deployed to production by https://github.com/Julesssss in version: 1.3.20-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Cherry-picked to staging by https://github.com/AndrewGable in version: 1.3.28-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Deployed to production by https://github.com/AndrewGable in version: 1.3.28-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


server_cc: Allow shared ownership of GlobalCallbacks

This commit adds an additional static method for providing a shared
instance of GlobalCallbacks.
The original header documentation seemed to imply that the server_cc.cc
implementation did NOT have ownership (which it did via the reset).  If
a caller follows the documentation (deleting their raw pointer, or using
a shared pointer with .get()), a double-free will most likely be
encountered.
It appears that the raw pointer method limits a caller from using a
shared instance.  Maybe this was intended?

@nicolasnoble

We'll need you to sign the CLA before we can take a look at this.

We'll need you to sign the CLA before we can take a look at this.


cmd+shift+B with multiple "isDefault" build tasks should only show those build tasks

Have multiple tasks configured with

"group": {
    "kind": "build",
    "isDefault": true
},

Press cmd+shift+B
See all detected tasks

See the vscode-jupyter repo for an example. I see dozens of tasks, including stuff detected from stuff that isn't even my repo.

I'm not sure what this list is since the "Run task" list is much cleaner

It's weird that I get

1 default task -> cmd+shift+B runs it
2 default tasks -> cmd+shift+B shows dozens of tasks

This has been fixed


added tailwind option in project config and Exe enum

Building first-party support for tailwindcss.
Added bool option for enabling tailwind support in ProjectConfig
Added tailwind to the Exe enum and ExeMeta struct

Also:

Please check that that tests pass
In lib_package.rs the tailwind bool should be added to the  Debug implementation

Also:

Please check that that tests pass
In lib_package.rs the tailwind bool should be added to the  Debug implementation

Can you please guide me on how to work with tests.
I updated all references to sass in the copy-paste code.

Can you please guide me on how to work with tests.

I'm sorry, but I really don't have time for that. Check the rust documentation, tutorials etc.
Also, please add a test to src/exe/test.rs that checks the tailwind download.
To run the full test suite run cargo test --features=full_tests

Looks like only the tailwind  URL for windows is correct. Please add appropriate endings.

I have fixed issues with all tests except for the download tailwind one. The tailwind GitHub directly provides an executable that doesn't have to be extracted so I tried to add a method that saves the downloaded data by the download function into a binary file using std::fs but with every method I try I get the error No such file or directory.
@akesson can you please have a look at my latest commit and see what am I missing

@akesson I have added all the necessary changes required for downloading the tailwind binary. All tests passed on my machine so I think now the code is fully functional and there shouldn't be any errors.

@ManitVig thanks. I don't have time to review it until Sunday.

@akesson were you able to review the PR?

Sorry for taking long before reviewing.

I have made the changes you requested

Thanks!


Rewrite v1

Squash? :D :D

i thought about it, but was thinking it might be good to not do it since it shows the flow the rewrite and its easier to pick though for people that want to read it

Sure! :shipit:

@josephholsten can you review as well?


Release Google.Cloud.ServiceControl.V1 version 2.3.0

Changes in this release:
New features

Change netstandard2.1 target to netstandard2.0 (commit 7707366)

Created release for Google.Cloud.ServiceControl.V1-2.3.0


Added use_keyring to config

Added use_keyring option to config file, where instances that passwords are not saved on file.

Nice work. Thanks  @cubewise-gng


For non-use of ros dependency

Hi, our developers are using pluginlib now, but it is always difficult to transfer from ROS to ROS2 or other communication tools, so my question is that is it possible for us not to use pluginlib without using ROS?

In short: not really.  This package depends on several ROS-specific headers and functionality (most notably class_loader, ros/console.h, and ros/package.h).  The ROS 2 version has far fewer dependencies (only class_loader, as far as I can tell).  In theory it should be possible to replace those with custom implementations, but we don't have anything to do that right now.
I'm going to close this out.  In the future, please ask questions like this on https://answers.ros.org, which is our central place for questions and answers.


How to add background in CSS?

If I use   the svg is rendered.
But say I want to add the svg as background in CSS.
.myclass {
   background: *** // How do I get the svg here?
}

@Ajeey well you have some options.
all included templates for generating the css / scss from your svg files are using the :before selector to set the background image / size and position.
if that is not a problem for you you can just "extend" the icon class in your css / html

 which will set the icon to the before element of your .myclass
you can also write your own template that does not use :before.
templates are here https://github.com/shakyShane/gulp-svg-sprites/tree/master/tmpl
if you use sass / scss you can make use of the mixin feature. i would use https://github.com/shakyShane/gulp-svg-sprites/blob/master/tmpl/sprite.scss and just extract the background style definition to an extra mixin. so you can use it everywhere

@Ajeey
Could this be what you are looking to do?
`{{#shapes}}
{{#first}}
.myclass {
background-image: url('insert_dir_here');
}
{{/first}}
.icon--{{base}} {
/add other code here/
}
{{/shapes}}`


Tiny typo

Added an "s"!

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Set-CsImConfiguration.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

@greiginsydney - thanks for catch!


Update README.md

Verification token not visible till after event subscription created.

I'll take your word for it, thanks!


[Feature Request]: AI supported chatbot

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
This chatbot is trained on our website data so it will assist the user more accurately
Use Case
It will give the answer based on his intelligence and with knowledge of our website better customer satisfaction user engaging
Benefits
No response
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC-EXT contributor
[X] I'm a HACKTOBERFEST contributor
[X] I have starred the repository

@Sawan-Kushwah, Chat bot is already present on our website please explore the website.
Thank you

@GAVINESHWAR but it is not AI supported it's rule based I will create an chatbot which will answer its own intelligence  trained on our website data

@Sawan-Kushwah, do you have an Open AI API Key?

@jeevan10017 chat4. 0

@jeevan10017
https://github.com/user-attachments/assets/b4de45b4-f3a9-48a2-bf6e-f8be622c3076
Sample chatbot ! i have integrated this to a website

@Sawan-Kushwah go ahead 👍


Accelerator refactor sharded rpc

Fix RPC

Hello @justusschock! Thanks for opening this PR.

In the file pytorch_lightning/accelerators/accelerator_connector.py:

Line 372:5: E303 too many blank lines (2)

In the file pytorch_lightning/plugins/training_type/rpc.py:

Line 44:25: E203 whitespace before ':'

In the file pytorch_lightning/plugins/training_type/rpc_sequential.py:

Line 46:16: E203 whitespace before ':'

Do see the Hitchhiker's guide to code style


release artifacts for release v1.0.0

ACK GA for MemoryDB
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/test all

/lgtm


Fix missing semicolon to separate rules

The missing semicolon was preventing those CSS vars to be properly declared

Hi @accountingnerd :) Is there any additional action I need to perform?
Thanks!

@jmlweb - sorry I didn't see this sooner. I was traveling this week. Merged! Good catch!


Hackernoon pictures are missing?

First of all, thanks for this repo.
The hackernoon article which contains interesting docs, might have lost all the picture links ? This is the only image I can see.

I don't know if this is intentional

Oops! Nice catch!
I think images disappeared when Hackernoon moved from Medium to their custom platform.
I try to make them back.
Thanks!

Ok, I updated the article link with the original one: https://github.com/wilk/microjob/commit/f536a14fbfe389bb01da9963ec9080f8cab31be4
Now you should be able to see the gists.


Render components in a ThreadPool

Uses a ThreadPoolExecutor to execute sync views in an asynchronous fashion.
This ensures IO bound components do not permanently lock the GIL.

So unfortunately, this change doesn't parallelize things in the way you might imagine. The main reason is that calls to Layout.render need to happen serially. That is the order in which things render might matter. We can see here that we do one render after the other.
The other thing is that there's already a solution to IO bound operations, and that is the use_effect hook. Let's say you have a component which does some long IO bound operation. Well, the way to achieve that is to put this long operation inside an "effect":
import idom

@idom.component
def WaitOnResource():
    resource, set_resource = idom.hooks.use_state(None)

    @idom.hooks.use_effect
    async def await_resource():
        result = await long_io_operation()
        set_resource(result)

    if resource is None:
        return make_fallback_display()
    else:
        return make_actual_display(resource)

The way this works is that the first time this component renders the resource will be None and we display a fallback to the user (maybe a spinner of some sort). However, we also registered a callback with use_effect. The use_effect hook tells the layout to schedule the given callback to run asynchronously after its current render completes. Thus, we can wait on our long running IO operation without blocking the layout from rendering in the meantime. Once that operation completes, we get back a result and set_resource causing the component to re-render. This time though, we'll make_actual_display since the resource is no longer None.