Official support and or documentation for auto discovery of (sub-)commands.

Support and documentation for auto discovery of (sub-)commands.
I'd like to be able start a  ToolboxCLI in just a few lines of code.
I'd like official support for a toolbox scenario: Developer teams tend to create tool collections over time. Those collections tend to get messy because they lack a convention (language, documentation, argument parsing, online help) how to implement commands. I've seen teams working on django applications collecting their toolbox in management commands and not facing this challenge.
I'd like something that is close to django management commands, but based on click. And without django obviously. I think it's a common usage scenario for click that is currently harder to implement than needs to be.
My current solution looks somewhat like this. I had to delete and rename some stuff and I didn't run this anonymized code. It's most obvious shortcoming is that it doesn't show global options on the subcommand help page.
#toolbox_cli.py
import pathlib
import click
import os
import typing

class ToolboxCLI(click.MultiCommand):
    commands_folder = pathlib.Path.joinpath(
        pathlib.Path(__file__).parent, "commands"
    ).resolve()

    def list_commands(self, ctx: click.Context) -> typing.List[str]:
        rv = []
        for filename in os.listdir(self.commands_folder):
            if filename.endswith(".py") and not filename.startswith("__init__"):
                rv.append(filename[:-3])
        rv.sort()
        return rv

    def get_command(
        self, ctx: click.Context, cmd_name: str
    ) -> typing.Optional[click.Command]:
        ns = {}
        fn = pathlib.Path.joinpath(self.commands_folder, cmd_name + ".py")
        with open(fn) as f:
            code = compile(f.read(), fn, "exec")
            eval(code, ns, ns)
        return ns["cli"]

#__init__.py
@click.group(
    cls=ToolboxCLI,
    context_settings={
        "allow_interspersed_args": True,
    },
)
@click.option(
    "--log-level",
    #...
    help="Set log level.",
)
def cli(log_level):
    """Toolbox CLI"""

#commands/admin.py
@click.group()
def cli():
    pass

@cli.command()
def create_admin():
    pass

@cli.command()
def delete_admin():
    pass

In terms of documenting the general idea of overriding get_command and list_commands, that's a duplicate of https://github.com/pallets/click/issues/945.
The actual feature request here is too broad for me to be comfortable maintaining a general solution in Click itself. Perhaps that's a good idea for an extension package.

Thanks @davidism. Unfortunately I don't think I can make the time to build and publish the extension.
Do you (or anyone) know of any projects that implemented such a use case in click?


initial revision of infrastructure to produce text changes that uses existing node factory, formatter and printer

// cc @rbuckton - can you please look at changes in emitter pipeline

From usage, it looks like we sometimes permute the order of printed nodes if we push a lot of synthetic nodes after a single node. Code example:
        let newNodes = [];
        for(let i = 0; i < 11 /*error doesn't occur with fewer nodes*/; ++i) {
            newNodes.push(
                createProperty(undefined, undefined, i + "", undefined, undefined, undefined));
        }
        for (const newNode of newNodes) {
            changeTracker.insertNodeAfter(sourceFile, insertAfter, newNode, { insertTrailingNewLine: true });
        }

We would expect the output to be
0;
1;
2;
3;
4;
5;
6;
7;
8;
9;
10;

but in fact we get
1;
5;
2;
3;
4;
0;
6;
7;
8;
9;
10;

I'm happy to flesh the example out more fully if it would help.

All nodes are inserted in the same place so they all are considered equivalent. For cases like this we probably should come with a more explicit ordering rules


husky gazebo issue

Hi,
I'm trying to launch husky gazebo in Ubuntu 20.04 but it is not working.
It just keeps loading like below

I definitely git cloned the noetic devel but it is not working.
Is there anyone know why?

What does the terminal sayy?

As @Daegas says, without seeing the terminal output it's pretty hard to diagnose the problem.

Is this the first time you are you starting Gazebo on that machine? Gazebo needs to download models the first time you run it.

@KeundongKang try to installing the following dependencies:
Reference: http://wiki.ros.org/LMS1xx
$ sudo apt-get install ros-noetic-lms1xx
Reference: https://bitbucket.org/DataspeedInc/velodyne_simulator/src/master/
$ sudo apt-get install ros-noetic-velodyne-description
Reference: http://wiki.ros.org/robot_localization
$ sudo apt-get install ros-noetic-robot-localization
Reference: http://wiki.ros.org/interactive_marker_twist_server
$ sudo apt-get install ros-noetic-interactive-marker-twist-server
Reference: http://wiki.ros.org/twist_mux
$ sudo apt-get install ros-noetic-twist-mux
Reference: http://wiki.ros.org/joy
$ sudo apt-get install ros-noetic-joy
Reference: http://wiki.ros.org/teleop_twist_joy
$ sudo apt-get install ros-noetic-teleop-twist-joy

If installing from source use rosdep to install the dependencies. ie rosdep install --from-paths src --ignore-src --rosdistro=$ROS_DISTRO -y

Closing due to inactivity.  Please feel free to re-open if issue persists.


Skippable wait seconds

Implements #557
https://user-images.githubusercontent.com/11311769/136651346-7069f09d-e420-46ca-b1a1-6caa90290e30.mov
(The dialog text in the video is slightly deformed because the game window was stretched to ease recording.)

I wasn't quite sure where to put the EventPart to be selected as head in the WaitSeconds node, so I put it in .../Events/Parts/WaitSeconds/.... Is this an acceptable location or should it be moved somewhere?

:heavy_check_mark:

The SecondsSelector was already implemented and not written by me, so I thought I should leave it.
Do you think I should incorporate it into the WaitSeconds.tscn?

Thank you!


Could  kubevirt offer image build by Dockefile ? containerd may not support images build by bazel.

Is this a BUG REPORT or FEATURE REQUEST?:

Uncomment only one, leave it on its own line:
/kind bug
/kind enhancement

What happened:
crictl pull index.docker.io/kubevirt/virt-handler@sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2
FATA[0015] pulling image failed: rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/kubevirt/virt-handler@sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2": failed to unpack image on snapshotter devmapper: wrong diff id calculated on extraction "sha256:556b5e866fb438fb624f21d7f1f9587227c580cdc45b633095111ad8cdb05fd8"
What you expected to happen:
when i use docker pull ,it's ok
docker pull index.docker.io/kubevirt/virt-handler@sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2
sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2: Pulling from kubevirt/virt-handler
Digest: sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2
Status: Image is up to date for kubevirt/virt-handler@sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2
docker.io/kubevirt/virt-handler@sha256:74463ee0d468203d7319099650d8590bbbb8af4ab67315f7a27b205a2885e8c2
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

KubeVirt version (use virtctl version):
Kubernetes version (use kubectl version):
VM or VMI specifications:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

@zhipengzuo hm it works for podman and docker, did you try to open an issue under the https://github.com/kubernetes-sigs/cri-tools?

@zhipengzuo hm it works for podman and docker, did you try to open an issue under the https://github.com/kubernetes-sigs/cri-tools?

thanks . I am going to try to translate the bazel format to Dockfile

if you will check the history you can find that we used Dockerfile before, but it will include a lot of changes.
Do understand why crictl fails to pull the image?

if you will check the history you can find that we used Dockerfile before, but it will include a lot of changes.
Do understand why crictl fails to pull the image?

i think the containerd will calculated the id and compare with image's sha256. different way to build may
produce different  file 。so the diff id is different.
I am reading the BUILD.bazel. i want to know can i build it in my env ? can i get  all the dependent file from the internet ?thanks

@zhipengzuo we right now produce docker v2.2 images. I would be surprised if containerd can't read docker own v2.2 format. Can you ensure that your containerd is up-to-date and if it is, open an issue on the containerd project?

@zhipengzuo we right now produce docker v2.2 images. I would be surprised if containerd can't read docker own v2.2 format. Can you ensure that your containerd is up-to-date and if it is, open an issue on the containerd project?

i will try . thanks

Oh wait, now I see that you use cri-tools. That only support OCI containers, not v2.2. You can configure bazel to produce OCI images instead of v2.2 (we build v2.2 because it is in most cases still more broadly adopted), let me look that up.

Checking this, it looks like you would only have to exchange the container_push rules with oci_push ruiles in the root BUILD.bazel: https://github.com/bazelbuild/rules_docker#basic-rules

container_push
thank you so much for your kindly reply. i will try .thanks.


[Bug]: Links of navbar are not working

Give a brief about the bug ✍
The links of navbar are not redirecting to the desired page
What is the expected behavior? 🤔
It should be  clickable so that we can surf through the website to make it user friendly
Provide step by step information reproduce the bug 📄
I will add the path of all the pages so that it will be easy for user to navigate
Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Navbar links are not working i will make them working and i will also create about us page so that it will brief about the site .
@Durgesh4993  Assign this issue to me under GSSoC'24.
I will love to contribute on this project. I will give my full efforts to make it better and better.
Thank You!

@Ridhima10 @Coder-Kartikey we don't have pages for continue, if you are intrested you can create page  i'll assign you
If you have any doubt you can directly send message on our discord (https://discord.gg/rZb46cCMmK), we have created seprate chennals for all projects...
Thank you :)

@Durgesh4993  I will make about page first and then connect it with the navbar
After that i will make more pages
since you have assigned me to make about page ,kindly assign me this too so that i can connect it with navbar

No problem, @Durgesh4993 i will make pages for it and then connect to the site . If you assign me this i will start working immediately.

@Ridhima10 assign this issue to me and i will help you with that!!


Improvement over the config task wiki page

This is not a request for the bot, but for the wiki.  More precisely, the config file wiki page: https://github.com/PokemonGoF/PokemonGo-Bot/blob/dev/docs/configuration_files.md
I think this page could benefit from improvements (both from the user and developer perspective)
Possible solution

From a user perspective, in order to find an information about a task, you either (1) scroll over 500 lines or (2) use the search tool from your browser. This is an issue, since those workaround do not directly direct the user toward the information. A table of content may solve this issue.

From a developer perspective, all the configuration of all the tasks are gathered in one file. This is an issue for developers, since it doesn't allow to keep track and clearly separate the information. A inclusion of files (one task = one file) into another file may solve this issue.

I know the default md format of github doesn't allow for an automatic table of content or even an include tag, but I'm pretty sure others options exists. :)
How it would help others
A healthy wiki is a healthy community (I just made that up, but you good the idea) :)

Wa @mjmadsen  you are reactive. :+1:

This improvement very important. I'm using this for three days and I'm not sure what types and options we have. I can't do what I want exactly because of inadequate configuration wiki.

I did a pr to add a table of content... It will only be available in dev for now. The table of content is not beautiful and is a bit broken but well... Better than nothing for the time being.

It would be great if a developer adding a new feature also update the wiki. (Add new config to wiki, give a bit description of the properties and possible values. Unit of measurement of the value is also important - hours, seconds, meters, feet, kilometers etc)

If you don't want to work on this documentation please update PokemonGo-Config :)

For example there is a new task named "CompleteTutorial". Who knows that what is this doing?

The 'wiki' is on the files that way anyone can contribute vs the wiki that can't. feel free to make it better.


Adult White Dragon actions have the wrong damage

When importing an Adult White Dragon from SRD or JSON, the damage for its actions is just its strength bonus, without any damage dice.
Tested in 3.6.1 and 4.1.0. 4.1.0 is arguably worse, as it imports the saving throw for the breath as Str instead of Con.

This seems to be true for all creatures. Tested on adult black dragon as well.

If you pull the latest this should be fixed. I'll run some more tests and release a version soon.

Should be fixed.


[Synapse] Add workspace, sparkpool, sqlpool related cmdlets

Description

We have released CLI Extension for Synapse, and now we plan to move it to CLI module. There are some changes between the Preview Extension to the Preview Module:

Split custom functions from custom.py into multi pyfiles according to their namespace or operation type.
Fix bug from #14708  by adding type=int for node_count

See detailed: #14722
Testing Guide

commands

az synapse workspace -h
az synapse spark pool -h
az synapse sql pool -h
az synapse workspace firewall -h

History Notes

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

Synapse


Add separate timeline snapping control to Animation Editor

This adds a separate toggle for timeline snapping (disabled by default as per @Calinou 's suggestion in the proposal)
Closes https://github.com/godotengine/godot-proposals/issues/10225
https://github.com/user-attachments/assets/c47602cf-9735-4361-a326-3bdecc312914
Both can still be toggled by holding Ctrl/Command
Note I changed the _get_editor_step() function to no longer check for whether snapping was enabled as it was already done before the function call in the _seek_value_changed function. Then I added a check the _animation_key_editor_seek function as well.

It's feedback, but the icons and descriptions are unclear.
With SnapTimeline and SnapKey, there is a misconception that it snaps to the grid of the timeline and the keys of other tracks; we need to avoid confusing it with such as the "grid snap" and "point snap" in Draw software / DCC software.
So more thought needs to be given to icons. It may be exaggerated to use Enum and explain it in text, but at least the description should be something like "Apply snap to current time/key", not "Snap Timeline".

@TokageItLab yeah good point. I'll improve the description. I quite like your icons idea... I'll fire up Inkscape and see what I can do!

@akien-mga rebased and conflict resolved

Sorry @TokageItLab , forgot to update that as I had to do a few and thought it was just the merge conflict. Should be updated now as suggested.

Thanks!


Update PR template

It may be very personal, but I find the "Had a good time contributing" check item a bit irritating, cumbersome, tedious and useless :-) Happy to close this PR if others think it's useful and actually like it.

Successful PR Checklist:

[ ] Tests

[x] (not applicable?)

[ ] Documentation

[x] (not applicable?)

[ ] Had a good time contributing? :angry:

What about "If you're not a usual contributor, please feel free to provide some feedback on the contribution process", but I think there are bots who can make this more natural.

We can merge it as-is, and when we(ll find a replacement, we'll set up something new.


Cleanup: Remove Unused Images from Documentation Assets

Deleted a set of images from the source/images/ directory that are no longer referenced in the Mattermost documentation. This cleanup helps reduce clutter and maintain a streamlined set of assets for future documentation updates.

Summary

This pull request removes a collection of unused images from the source/images/ directory. These images were identified as not being referenced in any documentation files, and their removal is intended to streamline asset management and reduce repository size.
Ticket Link

Milestone 01: #6658

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


java.lang.IllegalStateException: Illegal state ACTIVE when running integration tests

When running the integration tests, this ERROR is currently logged:
[2018-03-24T21:40:15,344][ERROR][o.a.h.i.n.c.InternalHttpAsyncClient] I/O reactor terminated abnormally
java.lang.IllegalStateException: Illegal state ACTIVE
	at org.apache.http.util.Asserts.check(Asserts.java:46) ~[httpcore-4.4.9.jar:4.4.9]
	at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:313) ~[httpcore-nio-4.4.6.jar:4.4.6]
	at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:194) ~[httpasyncclient-4.1.3.jar:4.1.3]
	at clj_http.conn_mgr.proxy$org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager$ReuseableAsyncConnectionManager$fff3515b.execute(Unknown Source) ~[?:?]
	at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) [httpasyncclient-4.1.3.jar:4.1.3]
	at java.lang.Thread.run(Thread.java:844) [?:?]

It would be good to investigate what is causing this bad behavior.

Here's an example test that causes the failure: lein test :only clj-http.test.client-test/t-with-async-pool


pact-jvm-provider-maven : Error details not printed out during pact publishing

In relation to https://github.com/pact-foundation/pact_broker/issues/98#issuecomment-300932409
To reproduce:

There is an existing pacticipant in the pact broker with a name "test_consumer1"
Publish a new pact contract with a pacticipant with name "test-consumer1"
Pact contract will not be published with this error:

[INFO] --- pact-jvm-provider-maven_2.11:3.3.6:publish (pact-publish) @ test-consumer1 ---
Publishing test-consumer1-test-provider1.json ... FAILED! 409 Conflict - This is the first time a pact has been published for "test-consumer1".
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 36.996 s
[INFO] Finished at: 2017-05-11T08:57:25+02:00
[INFO] Final Memory: 69M/458M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal au.com.dius:pact-jvm-provider-maven_2.11:3.3.6:publish (pact-publish) on project test-consumer1: One or more of the pact files were rejected by the pact broker -> [Help 1]

It would have been nice to see the error details why the pact contract was rejected.

Agreed!

On a slightly related note... is there some feature in the pact-jvm-provider-maven plugin that shows some report about the pact:verify results?

There is a mechanism to generate either a JSON or Markdown file with the results, but there is no option with the maven plugin to enable it.

thanks for the quick revert @uglyog
could you let me know how to activate that?

The Gradle plugin has the following options: https://github.com/DiUS/pact-jvm/blob/master/pact-jvm-provider-gradle/README.md#verification-reports-versions-327249
A similar set of options need to be added to the Maven plugin and then set on the Verifier.

Can we get the full message please? Someone else hit this problem again.

PR's are welcome, @bethesque ;-)

I'm feeling brave after my 6 month stint of Java. I can do it! I can do it!

This has been fixed in later versions of the Maven plugin. Latest is 3.5.19.

Thanks! And only yesterday I checked out pact-jvm on my client laptop to try and fix this myself (got stuck because of client maven repo settings)


Voice commands not working on OS X

I'm using a 2015 Macbook Pro 13 inch. The voice commands don't work, and I checked the box in the settings. I'm using OS X El Capitan 10.11.5, the newest update.
Steps to recreate:

Open app
check box 'Enable Voice Controls'
Say voice commands

Thanks in advance! Really like your app though, besides the little problem.
Emile

Unfortunately the Voice Commands are hit and miss, it is a severely limited API and Google appear to randomly reject requests to it.
The best I can suggest is to keep trying.  There's a reason it says "Beta" next to the setting to turn it on and off :+1:

Any updates to this? This would be really amazing feature to have if you could get it to work! Still, I get that it's probably beyond your control.
Great player, by the way!


setting entity centres and rotations

make coordinate checking easier by setting a virtual location value for the entity that is separate from the draw location
centres:

redesign the existing mechanisms of centrex(), centrey() for more variety of values
use % values to determine virtual centre wrt raster origin
include debug flag to show centre that is set

rotations:

rotation modes (free, left-right, updown, none)
new table field
augment draw function

the draw() function will have to account for this

complete


Update ingress to allow multiple path

Modified ingress.yaml to allow multiple paths and remove hardcoded paths.

@tianomagdaong Yikes!  Build has Failed!


missing StoryblokComponent.astro type declarations

Describe the issue you're facing
When building a page with Astro importing StoryblokComponent.astro component into .astro file gives back a type declaration error. However, other SDK's functions like "useStoryblokApi" are not giving any errors.

The Astro app is running even with an error and the StoryblokComponent is working. But ideally the error should not be there. I could not find any @types/ packages for the @storyblok/astro SDK. But if I go to /src/env.d.ts and provide this line of code: "declare module '@storyblok/astro/StoryblokComponent.astro';" the type error goes away.
Reproduction
https://github.com/doovis/storyblok-bug/blob/master/src/pages/index.astro
Steps to reproduce
Just opening up /src/pages/index.astro should show the error on the "StoryblokComponent" import line.
System Info
System:
    OS: Windows 10 10.0.22621
    CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
    Memory: 1.10 GB / 7.88 GB
Binaries:
    Node: 19.4.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 9.2.0 - C:\Program Files\nodejs\npm.CMD
Browsers:
    Edge: Spartan (44.22621.1992.0), Chromium (114.0.1823.79)
    Internet Explorer: 11.0.22621.1

Used Package Manager
yarn
Error logs (Optional)
No response
Validations

[X] Follow our Code of Conduct

Hey @doovis,
thanks for reporting this bug. However, I cannot reproduce this behavior, neither in your example nor any other project. Are you still facing this issue?

Hello @manuelschroederdev , I am able to reproduce a similar issue with @storyblok/astro package .Screenshot below

Astro build also fails with the same issue.Error message below.
#0 5.771 [vite-plugin-storyblok-components] Could not load virtual:storyblok-components (imported by node_modules/@storyblok/astro/StoryblokComponent.astro): Component could not be found for blok "insiders"! Does "/src/contents/blogInsiders/Insider.astro" exist?
#0 6.197  error   Could not load virtual:storyblok-components (imported by node_modules/@storyblok/astro/StoryblokComponent.astro): Component could not be found for blok "insiders"! Does "/src/contents/blogInsiders/Insider.astro" exist?

Same. Virtual modules are unimported?

I have the same issue as well. It's this virtual module.
Also get another type error on blok.component
/**
 * convert blok components to camel case to match vite-plugin-storyblok-components
 */
let key = camelcase(blok.component);

Argument of type 'string | undefined' is not assignable to parameter of type 'string | readonly string[]'.
  Type 'undefined' is not assignable to type 'string | readonly string[]'.ts(2345)

I made a PR for the latter:
https://github.com/storyblok/storyblok-astro/pull/414

I am facing the same issue. I don't think I am experienced enough to be of any help but I ma getting the same error with the virtual modules not being found in the StoryblokComponent definition inside<EMAIL_ADDRESS>

Hey, second this, have the exact same error

i am following the astro guide
& have the package installed
{
  "name": "test",
  "type": "module",
  "version": "0.0.1",
  "scripts": {
    "dev": "astro dev",
    "start": "astro dev",
    "build": "astro build",
    "preview": "astro preview",
    "astro": "astro"
  },
  "dependencies": {
    "@storyblok/astro": "^3.0.0",
    "astro": "^3.0.11",
    "storyblok-js-client": "^6.0.0",
    "vite": "^4.4.9"
  }
}

I am getting the exact same error like @Britnell with the exact same dependencies.

I'm on version 3.0.1 and I'm still seeing this error message. It appears to work anyway however. 🤷

Hey @shixish, thanks for sharing. That's weird and I cannot reproduce it. Could you please share a minimal reproducible example?

@manuelschroederdev I put together a minimal setup here:
https://github.com/shixish/minimal-astro-storyblok/
The issue can be seen in both of these files:

https://github.com/shixish/minimal-astro-storyblok/blob/main/src/pages/index.astro
https://github.com/shixish/minimal-astro-storyblok/blob/main/src/storyblok/Page.astro

I tried out this new repo with my Storyblok preview token and this repo appears to work. 👍

I'm currently having an error similar like above where camelcase is giving a type error:

TypeError: Expected the input to be string | string[]     at Module.camelCase (file:///C:/Projecten/website-stvn/node_modules/.pnpm/camelcase@8.0.0/node_modules/camelcase/index.js:59:9)     at C:\Projecten\website-stvn\node_modules\.pnpm\@storyblok+astro@3.1.0-next.3_astro@4.0.6\node_modules\@storyblok\astro\components\StoryblokComponent.astro:24:11     at AstroComponentInstance.StoryblokComponent [as factory] (C:\Projecten\website-stvn\node_modules\.pnpm\astro@4.0.6_typescript@5.3.3\node_modules\astro\dist\runtime\server\astro-component.js:18:12)     at AstroComponentInstance.init (C:\Projecten\website-stvn\node_modules\.pnpm\astro@4.0.6_typescript@5.3.3\node_modules\astro\dist\runtime\server\render\astro\instance.js:33:29)     at AstroComponentInstance.render (C:\Projecten\website-stvn\node_modules\.pnpm\astro@4.0.6_typescript@5.3.3\node_modules\astro\dist\runtime\server\render\astro\instance.js:38:18)     at Object.render (C:\Projecten\website-stvn\node_modules\.pnpm\astro@4.0.6_typescript@5.3.3\node_modules\astro\dist\runtime\server\render\component.js:328:22)     at Module.renderChild (C:\Projecten\website-stvn\node_modules\.pnpm\astro@4.0.6_typescript@5.3.3\node_modules\astro\dist\runtime\server\render\any.js:29:17)     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
I'm on node 21.3.0 using pnpm and tried out every version of the storyblok-astro package but having this issue on every version.
Package.json file:

I see the same error shared by @shixish and @Britnell on version ^4.0.0. I'm following the example from [Storyblok & Astro integration docs].(https://docs.astro.build/en/guides/cms/storyblok/#fetching-data)
test-post.astro

astro.config.mjs

Thanks everyone for reporting.
Could you all try with @storyblok/astro 4.0.3? This version should fix the issue, as I tested and it worked.

Related issue #637

Feel free to re-open this issue if you face a similar case.

Hi guys! Faced with the same issue with type declaration for StoryblokComponent. I update the Astro js to version 5.0.4 and @storyblok/astro  to 5.1.0
How fix this annoying error?
import StoryblokComponent from<EMAIL_ADDRESS>TS error Cannot find module<EMAIL_ADDRESS>or its corresponding type declarations.
"astro": "5.0.4"  "@storyblok/astro": "^5.1.0",
"dependencies": {
"@astrojs/netlify": "^6.0.1",
"@astrojs/sitemap": "3.2.1",
"@astrojs/tailwind": "5.1.3",
"@astrojs/upgrade": "^0.4.2",
"@astrojs/vue": "^5.0.1",
"@lottiefiles/lottie-player": "^2.0.2",
"@popperjs/core": "^2.11.8",
"@storyblok/astro": "^5.1.0",
"@vitejs/plugin-basic-ssl": "1.2.0",
"ansi-align": "3.0.1",
"astro": "5.0.4",
"string-width": "^4.2.3",
"string-width-cjs": "^5.1.1",
"swiper": "11.1.15",
"tailwindcss": "3.4.16",
"vue": "3.5.13"
},
"devDependencies": {
"prettier": "3.4.2",
"prettier-plugin-astro": "^0.14.1",
"prettier-plugin-tailwindcss": "^0.6.9",
"typescript": "^5.7.2",
"vite": "^6.0.3"
},
"resolutions": {
"strip-ansi": "^6.0.1",
"string-width": "^4.2.3"
}

tsconfig.json
{
"extends": "astro/tsconfigs/base",
"include": [".astro/types.d.ts", "**/*"],
"exclude": ["dist"],
"compilerOptions": {
"strict": true,
"target": "ESNext",
"module": "ESNext",
"lib": ["dom", "dom.iterable"],
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"baseUrl": ".",
"types": ["astro/client"],
"jsx": "preserve"
}
}

Hi! I updated Astro js to 5.0.4 and @storyblok/astro to 5.1.0. Now I have such annoying ts error.  How to fix it? Thanks you for your help
import StoryblokComponent from<EMAIL_ADDRESS>Cannot find module<EMAIL_ADDRESS>or its corresponding type declarations.
There are types at<EMAIL_ADDRESS>but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'.ts(2307)
node version v18.20.4
macOS sequoia 15.1.1
deps
"dependencies": {
"@astrojs/netlify": "^6.0.1",
"@astrojs/sitemap": "3.2.1",
"@astrojs/tailwind": "5.1.3",
"@astrojs/upgrade": "^0.4.2",
"@astrojs/vue": "^5.0.1",
"@lottiefiles/lottie-player": "^2.0.2",
"@popperjs/core": "^2.11.8",
"@storyblok/astro": "^5.1.0",
"@vitejs/plugin-basic-ssl": "1.2.0",
"ansi-align": "3.0.1",
"astro": "5.0.4",
"string-width": "^4.2.3",
"string-width-cjs": "^5.1.1",
"swiper": "11.1.15",
"tailwindcss": "3.4.16",
"vue": "3.5.13"
},
"devDependencies": {
"prettier": "3.4.2",
"prettier-plugin-astro": "^0.14.1",
"prettier-plugin-tailwindcss": "^0.6.9",
"typescript": "^5.7.2",
"vite": "^6.0.3"
},
"resolutions": {
"strip-ansi": "^6.0.1",
"string-width": "^4.2.3"
}
tsconfig.json
{
"extends": "astro/tsconfigs/base",
"include": [".astro/types.d.ts", "**/"],
"exclude": ["dist"],
"compilerOptions": {
"strict": true,
"target": "ESNext",
"module": "ESNext",
"lib": ["dom", "dom.iterable"],
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"baseUrl": ".",
"types": ["astro/client"],
"paths": {
"@/": ["src/*"]
},
"jsx": "preserve"
}
}

@ybabenkoJapp probably related to #1033 - or better said that's the new issue for it


Adding an input-class adds the class but doesn't apply its styles.

Adding an input-class adds the class but doesn't apply its styles.
<datepicker v-model="invoice.creation_date" input-class="stroke-border"></datepicker>

<style>
  .stroke-border {
    border-style: solid;
    border-width: 2px;
  }
</style>

Why doesn't the Datepicker input have default borders appplied? It would look milion times better if it did have borders around it, otherwise it looks unintuitive.

Sorry to Necro, this is likely cause of a css pre-processor and scoping, try adding your styles to a global file


[POC] Emotion Themes

We will be incorporating a second theme in radiance-ui shortly. This PR is a POC for the functionality. It pulls in only the Toggle component story and adds very minimal theming support for it, as well as a button toggle in the story to swap between the themes.
This POC PR does not explore Storybook add-ons that help you easily toggle between themes. You can do a search for "theme" in the Community Add-ons section of Storybook (link) but none seem to have all too much usage, so perhaps better to not add the dependency debt. Dealing with how to best document our themes is something we can figure out later.
In the meantime, I've just added a button to the top of the story to switch themes.
The review app can be found here: https://curology-radiance-pr-387.herokuapp.com/?path=/story/*

Closing in favor of #466


Remove getImplicitlyUnwrappedOptionalObjectType.

@swift-ci Please smoke test and merge

Superseded by https://github.com/apple/swift/pull/14383.


Devel/linc

Fixed the typos.

I'm more into adding something like this into examples/ rather than a top-level file. Ideally it would be part of an external library. On the other hand, optical/wavelength switch emulation might be a good thing to have.


Backport Non-GPU configuration and build from upstream PR

I made several cleanups to our non-GPU build setup when upstreaming the changeset to litepcie: https://github.com/enjoy-digital/litepcie/pull/107
It would be good to backport these cleanups here.

cc @mbaz


Refactor into using crypto.Signer interface

We have three key types now:

Certs
Fixed keys
KMS

If we add Yubikey support (#108) we'll be up to 4. It's probably time to refactor these out into crypto.Signers.

Agred. Right now 4 commands ({sign,verify}{,-blob}) accept the same set of key type flags (-key, -kms).
If we were to have more types e.g.

-google-auth, -github-auth, -microsoft-auth (or more generally -oidc google)
-yubikey (or -fido2?)
-hsm

these flags will appear on all these commands, crowding the space quite a bit. But I guess that's acceptable (and we might be able to group these options together as "KEY TYPES").
Although, I'm inclined to remove -key STRING_LITERAL option (ref #71).

+1, drop the key literal.

cc @ahmetb - you're working on this right?

Yeah. Got distracted with pre-refactoring code reading yesterday.

Oof, didn't realize you'd already started working in it :x

@dekkagaijin I think this is done and can be closed now right?

yup!


chore: bdd-spring-1585155265 to 0.0.1

chore: Promote bdd-spring-1585155265 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Pull data from database

fixes #113
Execute listChallenges after seeding finishes.

@rrchai I turned this PR into a Draft as you are still working on it.

closing this now since we move to work on the challenge-list on challenges page.


Readonly explanation needs rewording

Stated: "The FirstName and LastName properties can be set only in the body of a constructor"
Reality: A derived class constructor (which is "a constructor") can not set these readonly properties.
Suggestion: "... can be set only in the body of the same class"

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

ID: 36fef60d-04e9-dc86-2e3f-134c10ea37bb
Version Independent ID: 09b5aa7a-1b43-8bf9-9786-f10f457488dd
Content: What's New in C# 6 - C# Guide
Content Source: docs/csharp/whats-new/csharp-6.md
Product: dotnet-csharp
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thank you for opening this issue. I'll add it to the backlog. You can always submit the fix yourself by editing the original article. Click on the Content Source link at the bottom of your original comment. To learn how to edit, see the Editing files in a repository article from GitHub.
Thanks again!


feat: add 3rd grid size

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Context

[x] Closes #5164
[x] Closes #4895
[x] branching from https://github.com/kodadot/nft-gallery/pull/5148

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[ ] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

yes, let's go with it

@JustLuuuu
https://deploy-preview-5172--koda-nuxt.netlify.app/bsx/explore/items?listed=true&page=1

pay 50 usd

😍 Perfect, I’ve sent the payout
💵 $50 @ 33.43 USD/KSM ~ 1.496 $KSM
🧗 DY4SQF2iD456tH89aQtz5wv1EV3BbSW8wKKuMcwbmXaj1pM
🔗 0x0a7b212b544a176d34fba60170ec0bb22cc6420a8aa9e9cc82d4dd33240f2f34
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Proxy / VPN error reports

On windows my solution is following:
create a windows batch script "C:\Program Files\Docker Toolbox\kitematic_proxy.cmd" and insert following script and replace "YOUR_PROXY" with the http://host:port of your proxy
set proxy=YOUR_PROXY
SET HTTP_PROXY=%proxy%
SET HTTPS_PROXY=%proxy%
for /f %%i in ('docker-machine.exe ip default') do set DOCKER_HOST=%%i
SET NO_PROXY=%DOCKER_HOST%
set DOCKER_HOST=tcp://%DOCKER_HOST%:2376
cd Kitematic
Kitematic.exe

Thanks @FugDev ! Your cmd-file is workeing for me, too.

Same issue here. As far as I know, we are not using a corporate proxy (so I don't know a proxy server address), but there is a root certificate "injected" somewhere. I want to mark the certificate as trusted.

I am also trying to find a way to make the certificate of our proxy trusted by Kitematic. Maybe in a future release?

getting error any solution

HTTPS_PROXY=http://<IP_ADDRESS>:3128
HTTP_PROXY=http://<IP_ADDRESS>:3128```

@zivc Please see how to properly set this up by following the Wiki info:
https://github.com/docker/kitematic/wiki/Common-Proxy-Issues-&-Fixes

@Akhena ，hi，I have meet the same issue with you, how do you solve the problem finally?

@Akhena @zivc ，hi，I have meet the same issue with you, how do you solve the problem finally?

@BecauseofLxcCheckpoint Unfortunately (because of this issue) I don't use kitematic anymore in my professional environment

If anyone still has problems with this on Mac or Windows 10+, please contact me at<EMAIL_ADDRESS>We are working on something to help address this issue.

+1 that I'm having this issue on OS X

@patdohere is this with Docker for Mac beta as well?

Yes this is Docker for Mac.  Only with Kitematic when I'm behind a VPN.

@patdohere We release Kitematic v0.10.2 today which includes a few fixes. Can you check if that fixed your problem?

Seems to be fixed on my end 👍


x/tools/internal/lsp: re-enable/fix disabled tests (tracking issue)

Because of changes to the go/parser and go/types, some lsp tests were disabled. This issue tracks the respective CL so we can re-enable and/or fix the tests.
Tentatively set for Go 1.20 but may be moved if necessary.

@findleyr Is there anything left to do here for 1.20? Should this be moved over to 1.21, or can it be closed?

Yes there is, though it needn't be associated with the 1.20 milestone.
I'd prefer to leave it in the milestone for this week, in case there are any fixes required to re-enable the test. I plan to get to it this week.

Moved this to a gopls milestone, as it need not be in a Go milestone: we will endeavor to re-enable these tests before<EMAIL_ADDRESS>which is the version of gopls corresponding to Go 1.20.


Incorporate DISP-S1 SAS v0.1.2

A point release for DISP-S1 v0.1.2 has been released to Artifactory-FN in the following locations:
https://artifactory-fn.jpl.nasa.gov:443/artifactory/docker-develop-local/gov/nasa/jpl/opera/adt/opera/disp-s1/0.1.2/
https://artifactory-fn.jpl.nasa.gov:443/artifactory/general/gov/nasa/jpl/opera/adt/disp_s1/r2.1/interface/dockerimg_disp_s1_interface_r2.1.tar
The purpose of this ticket is to update the PGE container build scripts to utilize the latest version, then validate the following:

The new SAS image generates the dummy PNG file (so the PGE output validation logic can be re-enabled)
The integration test comparison now passes against the "minimal" set of expected outputs

If either of these issues have not been addressed by this point release, we should communicate that to ADT. Lastly, the acceptance testing wiki for the DISP-S1 Interface delivery should be updated as-necessary to reference this latest version.

Resolved by #335


[Feature Request] Can Table hide space which was layout at the at?

Existing Component
是
Component Name
Table
Description
Version desc:
Element: 2.4.6
Chrome: Lastest, not compatible question
Hello, There's two pictures you can see:
1, current display: https://imgchr.com/i/PWQiBq
2, wanna display: https://s1.ax1x.com/2018/08/17/PWQV4U.png
When I fixed the table height, the top right cornor will displayed, but I wanna make it hidden. Just like table-body inner scrollbar, and not like the outside scrollbar.
I wanna change the css style, but seems the top right space was depended by inner html dom structction. I think it's very useful feature for the user to change UI.

Please create a demo in jsfiddle.

@ziyoung Here you are, https://jsfiddle.net/laihuanmin/3j0yh9mk/


Check new ICE related drafts

[ ] draft-thatcher-ice-renomination: ICE Renomination: Dynamically selecting ICE candidate pairs
[ ] draft-ietf-ice-rfc5245bis: ICE: A Protocol for Network Address Translator (NAT) Traversal
[ ] draft-uberti-mmusic-nombis: Improvements to ICE Candidate Nomination

Documented in the wiki, closing.
https://github.com/ibc/mediasoup/wiki/ICE


use static to access chmod constant

to allow override via extending class like so:
use PhantomInstaller\Installer as BaseInstaller;

class Installer extends BaseInstaller
{
    const PHANTOMJS_CHMODE = 0755;
}

Yup, that makes sense.. lets add it.
By the way: is 770 to open?

@jakoch Thx :)
Actually it's to close in my case.
I have use case where user that is running nginx/php is deferent then user that runs cli scripts so i need 0755.


Store the tutor Information in the Database

Create a connection with the database and store the tutor information from the Slack Dialog to the tutor table in mongoDb.

Issue solved in pull request #2


Custom users.yml / add by ID

Hello, first of all great project!
I have two questions/suggestions:
Is it possible to use a custom users.yml? Like /bot/bot1/users.yml.
And is it possible to add a user by his ID? For users without a telegram username.

Hi @jon4hz
A custom users.yml can't be specified currently. But I can add an option to read it from an env variable if that would help you.
I never thought about adding a user by his ID directly since it wasn't possible to retrieve that ID directly as a user at the time I made this. (Might be possible now, I don't know). If you want to implement such a functionality, feel free to send a PR :)
Cheers


SecureRandom.getInstance("SHA1PRNG") is deprecated

I don't understand, i see in the code :
SecureRandom.getInstance("SHA1PRNG")
but when i read https://android-developers.googleblog.com/2016/06/security-crypto-provider-deprecated-in.html
They say SHA1PRNG algorithm is not cryptographically strong and have been deprecated !

SecureRandom.getInstance("SHA1PRNG", "Crypto") is depricated and not SecureRandom.getInstance("SHA1PRNG"). so you can still use SecureRandom.getInstance("SHA1PRNG", "Crypto")

Thanks for the feedback. For background, there was an Android entropy bug in ancient history, and Google provides a workaround that's incorporated into our library and is still availability for backward compatibility. I believe that the SHA1PRNG code gets called only on old versions of Android.
Longer term, we want to analyze whether any of the backward compatibility code is still necessary; based on whether & how many devices are still using older versions of Android. The AES library would be significantly simpler without that backward compatibility PRNG fix.

I see


Implement assemble func prototype

details:
We need to discuss about #60
But when we implement opCodes( #61 ), it needs asm.code
( it is analyzed rawByteCode but the analysis is focused on cost maybe. )
I think it is better to implement the analysis properly after it is fully discussed!! so i implement prototype of analysis...

[x] Test case

Moved analysis logic to assemble

I think uint32To4Bytes is not a good naming. Anyone have any other opinion?


9anime api changed

Traceback (most recent call last):
File "/home/sunny/.local/lib/python3.6/site-packages/anime_downloader/sites/nineanime.py", line 33, in getData
url = data['target']
KeyError: 'target'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/sunny/.local/bin/anime", line 11, in
sys.exit(cli())
File "/home/sunny/.local/lib/python3.6/site-packages/click/core.py", line 722, in call
return self.main(*args, **kwargs)
File "/home/sunny/.local/lib/python3.6/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/home/sunny/.local/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/sunny/.local/lib/python3.6/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/sunny/.local/lib/python3.6/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/home/sunny/.local/lib/python3.6/site-packages/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/sunny/.local/lib/python3.6/site-packages/anime_downloader/cli.py", line 94, in dl
for episode in anime:
File "/home/sunny/.local/lib/python3.6/site-packages/anime_downloader/sites/anime.py", line 71, in getitem
ep_no=ep_id[0])
File "/home/sunny/.local/lib/python3.6/site-packages/anime_downloader/sites/anime.py", line 113, in init
self.getData()
File "/home/sunny/.local/lib/python3.6/site-packages/anime_downloader/sites/nineanime.py", line 39, in getData
) from e
anime_downloader.sites.exceptions.AnimeDLError: 9anime probably changed their API again. Check the issueshere https://github.com/vn-ki/anime-downloader/issues. If it has not been reported yet, please open a new issue

9anime doesn't work for now. You can still use KissAnime.
Use --provider kissanime to use it. If you are providing the KissAnime url, then the tool will automatically use the correct provider.

The latest release provides a fallback if 9anime is not working. This should cover you, at least for now.
Update using pip install -U anime-downloader

when this going to fixed?

@grabberboy I can't say an exact date. I tried digging into 9anime website but it seems too hard. Some awesome people at DxCx's 9anime kodi plugin seems to be making some progress. Once their fix is release, I can port it over.
In the meantime, the fallback approach to 9anime.cloud somewhat holds. #24 should strengthen that approach. You can try it out now to see if it works or not.

keep it up man
Thank you!

data seems to be equal to {'error': 'token'} when looking inside fo the get_stream_url method.

Non working URL:
https://www6.9anime.is/ajax/episode/info?id=p29p1j&server=33&_=1120&ts=1529838000

Working URL from the 9anime site:
https://www6.9anime.is/ajax/episode/info?ts=1529838000&_=826&id=1y112q&server=33```

@Ryanb58 9anime has been experiencing issues for the past week. Hopefully this will be fixed soon. In the mean time you can use kissanime provider for more reliability by using the --provider kissanime cli argument.

@Ryanb58 You need cfscrape (install with pip install cfscrape) and node-js, for scraping kissanime. It is mentioned in the readme.

@Ryanb58 I have released a new version, with updated 9anime key.

Hi,
Updated 9anime key "95ec8bcc" was working but  suddenly stopped in middle of download. Getting connection error. Below is the log::

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='www3487.playercdn
.net', port=443): Max retries exceeded with url: /187/0/klvZ1EgxQG6kTwgnS58HnA/1
530291380/180524/VxW2ZojczTDDuPz.mp4 (Caused by NewConnectionError('<urllib3.con
nection.VerifiedHTTPSConnection object at 0x000000000499BAC8>: Failed to establi
sh a new connection: [WinError 10060] A connection attempt failed because the co
nnected party did not properly respond after a period of time, or established co
nnection failed because connected host has failed to respond'))

Even --provider kissanime is giving the same error.

@nirmankmr What were you downloading? Can you share the link? It's possible that the link expired. How long were you downloading?
Did you retry after some time?

@vn-ki  I was downloading One Piece anime. Link is "anime dl https://www6.9anime.is/watch/one-piece-dub.34r/ --episodes 294:300". I think downloading went for around 30 mins or so. I did tried multiple times since then. even switching to kissanime url. But, still the same problem.

Can you watch from the 9anime website?

Yes, its streaming in all resolutions.

Try the url flag.
If it still does not work, the version in master has implemented the ability to download by external downloader (aria2). Try that.

 Use idm or aria2. If it doesn't error, the problem is with the downloader of this tool.

@vn-ki  Ok, i will try that from home.  Is Free Download Manager supported or idm is needed?

Anything should work. At least try it with your browser.

@vn-ki  I think you are right. Using url and external downloader, got the download!
BTW, awesome tool you created. Kudos!!!

I'll close this issue as 9anime has been stable for the last 3 days.
@nirmankmr Thank you. Also the latest version can use external downloaders. This would increase your speed and the files will be named properly (SteinsGate/SteinsGate_1, for example). Use -xd {aria2} to use it. Of course you need to have aria2 installed.


Fix border alpha for keyboard up/down

I noticed this bug when testing settings for my other pull request. The alpha setting for border only applies to the left and right keyboard arrows.

Good catch, thanks! 🎉


Add CF web page listing software that supports CF

It would be good to add a page listing all software tools/packages/libraries that produce, read, manipulate, and display CF data (similar to the netCDF “Software for Manipulating or Displaying NetCDF Data” page). The CF website already has a page listing compliance checkers that could be folded into a broader list of software.

I strongly agree with this suggestion. We should have such a webpage, possibly not just a list of links, but a table with one line of description of the capabilities of each item. Thanks.

And well done on getting us to No 100.

Good idea, thank you; this will be a nice addition. Will we need some basic rules for deciding what should be included?
And, I agree with Jonathan that a short description would be really helpful. The list on the NetCDF tools page is far too cryptic - unless you know the name of the tool you're looking for, you'd have to click on each one. It's also full of acronyms, with no explanations. Setting up some 'rules' for tool submissions at the start will be important.

Good ideas.
Simply "reads and/or writes netCDF files" is too broad a rule for this list, I presume - there has to be some CF knowledge involved.

I also think this is a good idea.

Simply "reads and/or writes netCDF files" is too broad a rule for this list, I presume

Agreed, especially as Unidata already provide essentially this, see their 'Software for Manipulating or Displaying NetCDF Data' page. (Incidentally, cfdm & cf-python are not listed there, at least as far as I can see. Can we get them added?)

Oh, just seen that list was referenced in the opening comment! My bad.

possibly not just a list of links, but a table with one line of description of the capabilities of each item

I also agree this is important, as there is a large difference in "bolted on" support for older version(s) of CF, such as provided by Iris, & inherent support for any version, as in cfdm & cf-python. (Obviously I am biased, but for a general reader that would certainly be useful & relevant information.)

@ngalbraith - The netCDF software page lists all the software packages at the top, each item links to a section below with a descriptions of that software package. We could do that or a table or maybe a term/definition (collapsible?) list.

@sadielbartholomew

Agreed, especially as Unidata already provide essentially this, see their 'Software for Manipulating or Displaying NetCDF Data' page. (Incidentally, cfdm & cf-python are not listed there, at least as far as I can see. Can we get them added?)

Yes, to request their addition just send an email to<EMAIL_ADDRESS>with the name and some descriptive text (with links) for each.

@ethanrd this looks like a good start. FWIW my personal preference is markdown vs HTML for readability. If nested lists are too cumbersome a table can do the trick too.

I think the usage of the  element without the "open" attribute should be avoided since it's basically saying "most people will never look at these". I'd probably use a simple markdown unordered list, if you really are going for html semantics, you could probably use a description list:

cfdm - Python CF Data Model Package

A description of the Python CF Data Model Package.

cf-python - CF Python Package

A description of the CF Python Package.

renders like (on github at least):

cfdm - Python CF Data Model Package
A description of the Python CF Data Model Package.
cf-python - CF Python Package
A description of the CF Python Package.

Like @erget, my preference would be to stick to Markdown rather than include HTML, just to keep it simple.
I'm leaning towards a third-level header for each software package with a paragraph (or two) description with links. It isn't very compact vertically (with the default style anyway) but it is simple and the Markdown is clean. All the other options seem a bit cumbersome, either as Markdown/HTML or as rendered. This may also make it easier to build a TOC if the list gets long enough to need one.
Thoughts or strong objections? To keep things moving, I'm going to update the PR along these lines. We can make changes later if we decide on a different approach.
If you are the maintainer of one of the packages already listed, please provide some text  describing your package. Similar if you have other packages that should be added. Just comment here and someone will add it or, if you have write permission to this repo, you should be able to push to this PR branch.

@ethanrd I like this approach - if we switch to another style at some point we'll probably be grateful that the MD is straightforward.

I just rebased this on master and the build now looks good. There seems to be general agreement on adding this page but we need some text for the currently listed tools (and others?) before we merge this page.

@davidhassell - Could you send me some text describing cfdm?
@sadielbartholomew - Could you send me some text describing cf-python?
@RosalynHatcher  - Could you send me some text describing the CF Compliance Checker(s)? Including some info on the difference between the two would be great.
@erget - Should we add the flattener to the list? If so, could you send me some text?
@mwengren - Can you (or someone) send me a brief description of the IOOS Compliance Checker for inclusion in this page?

Thanks all!

@davidhassell - I was thinking we would want to keep it quite short, maybe just your first paragraph. Otherwise, we will quickly need a TOC of some sort. What do others think?
Also, we might want to mention that this is a Python package. Maybe just add "Python" so it begins: "The cfdm Python package ..."?

@ethanrd Happy to be invited to the software party!  cc @Bobfrat In case you think there's anything here that I missed or should be changed.
Here's a short description of the IOOS Compliance Checker:
The IOOS Compliance Checker is a python based tool for data providers to check for completeness and community standard compliance of local or remote netCDF files against CF, ACDD, and IOOS Metadata Profile file standards. Compliance Checker can be used as a command-line tool or as a library that can be integrated into other software.
The Compliance Checker also includes a web-based version that enables a broader audience and improve accessibility for the checker. With the web version, providers can simply provide a link or upload their datasets and get the full suite of capabilities that Compliance Checker offers.
It also includes a plug-in framework that can be implemented by groups interested in developing their own test suites.  Several plug-ins have been developed by IOOS to test compliance with specifications for preparing data to be submitted to different IOOS and NOAA data assembly centers.  A list of IOOS-managed Compliance Checker plugins can be found on GitHub here.
Compliance Checker currently supports the following sources and standards:

Standard
Source
.nc/OPeNDAP/.cdl
SOS

ACDD (1.1, 1.3)
Built-in
X
-

CF (1.7)
Built-in
X
-

CF (1.6)
Built-in
X
-

IOOS SOS
Built-in
-
GetCapabilities, DescribeSensor

IOOS (1.1)
Built-in
X
-

IOOS (1.2)
Built-in
X
-

Glider DAC
ioos/cc-plugin-glider
X
-

NCEI (1.1, 2.0)
ioos/cc-plugin-ncei
X
-

Full usage instructions and examples can be found on the Compliance Checker GitHub repository.

@ethanrd Just saw your earlier comment, the first two or three paragraphs could be used for brevity purposes.

@ethanrd, sure, here's a summary of cf-python. I've put roughly  the same level of detail as others pending a decision on the amount of text to provide.
@davidhassell, let me know if I have missed anything here, or if you'd like to make changes. I based this on the README text & docs introduction text (which are as you know essentially the same), but cut a little to avoid too much overlap with the cfdm text you supplied which should cover it by reference. I also added a sentence mentioning its relationship to cf-plot.
@ajheaps would you like cf-plot to be listed here? I think it would be good to list it as it displays CF data so fits the criteria.

The Python cf package, "cf-python", is an Earth Science data analysis library. It is built on cfdm [link to cfdm section of the listing] and implements the CF data model for its internal data structures so is able to process any CF-compliant dataset. Field constructs from cf can also be visualised in a powerful and flexible way with the cf-plot package [link to cf-plot section of listing if present].
The cf package can:

read field constructs from netCDF, CDL, PP and UM datasets,
create new field constructs in memory,
inspect field constructs,
test whether two field constructs are the same,
modify field construct metadata and data,
create subspaces of field constructs,
write field constructs to netCDF datasets on disk,
incorporate, and create, metadata stored in external files,
read, write, and create data that have been compressed by convention (i.e. ragged or gathered arrays), whilst presenting a view of the data in its uncompressed form,
read, write, and create coordinates defined by geometry cells,
combine field constructs arithmetically,
manipulate field construct data by arithmetical and trigonometrical operations,
perform statistical collapses on field constructs,
perform histogram, percentile and binning operations on field constructs,
regrid field constructs with (multi-)linear, nearest neighbour, first- and second-order conservative and higher order patch recovery methods,
apply convolution filters to field constructs,
create moving means from field constructs,
calculate derivatives of field constructs,
create field constructs to create derived quantities (such as vorticity).

All of the above use LAMA functionality, which allows multiple fields larger than the available memory to exist and be manipulated.

I was thinking we would want to keep it quite short, maybe just your first paragraph. Otherwise, we will quickly need a TOC of some sort. What do others think?

My thoughts on this are that a little more detail might be better, so that readers won't have to follow various links to compare and contrast the various tools. However, brevity could also be good.
If it wouldn't be too much hassle (you may want to keep it simple which would be fair enough), there could be short (summary) listing and a long (more verbose) listing, or keep a single listing but have something like an expand/collapse button to open up further detail?

@sadielbartholomew, @ajheaps yes, I think cf-plot should be included in the list

@erget - Should we add the flattener to the list? If so, could you send me some text?

Yes! I'll try adding it to your PR when I get a minute, hopefully later today.
I agree with @ethanrd that a shorter text is better - that way we don't duplicate information in too many places, where things might be subject to change.

@sadielbartholomew, @ajheaps yes, I think cf-plot should be included in the list
@ethanrd I'm happy with the shorter version. That was my first thought, too, but I thought I'd chuck in more detail that's easy to take away.

@sadielbartholomew https://github.com/sadielbartholomew, @davidhassell
https://github.com/davidhassell Yes, I think cf-plot should be
included here.  Do you need me to cook up some text other than that at
the start of the cf-plot user guide?
cf-plot is a set of Python functions for making common contour, vector
and line plots that climate researchers use. cf-plot generally
usescf-python https://cfpython.bitbucket.io/to present the data and CF
attributes for plotting. It can also use numpy arrays of data as the
input fields making for flexible plotting of data. cf-plot uses the
Python numpy, matplotlib and scipy libraries.
On 03/06/2020 21:34, David Hassell wrote:

@sadielbartholomew https://github.com/sadielbartholomew, @ajheaps
https://github.com/ajheaps yes, I think cf-plot should be included
in the list
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cf-convention/cf-convention.github.io/issues/100#issuecomment-638446913,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAV5ONY767AOPUQEJLBPPCTRU2XWHANCNFSM4M25U5AQ.

--
Andy Heaps
National Centre for Atmospheric Science (NCAS)
Room 118
Harry Pitt Building,
Reading University,
Earley Gate,
PO Box 243,
Reading RG6 6BB,
U.K.

For SatNav please use RG6 7BE

tel: 0118 378 6421
fax: 0118 378 8316
e-mail<EMAIL_ADDRESS>

@ajheaps Thanks - I think that is fine. (just need to update the cf-python link to the Python3 version: https://ncas-cms.github.io/cf-python.)

@ethanrd I am happy to go with the general consensus for shorter descriptions. In that case, please allow me to amend my earlier submission slightly to summarise the subsequent listing of functionality in a sentence (in an overarching way that will not become out-of-date), and to add a link to cf-python which in hindsight was missing but is quite crucial! The updated description:

The Python cf package, "cf-python" (https://ncas-cms.github.io/cf-python/), is an Earth Science data analysis library. It is built on cfdm [link to cfdm section of the listing] and implements the CF data model for its internal data structures so is able to process any CF-compliant dataset. It can read, write and inspect field constructs and manipulate the data and metadata therein by means of statistical operations, collapsing, subspacing, regridding and more. Field constructs from cf can also be visualised with the cf-plot package [link to cf-plot section of listing].

@ethanrd - I'll send along information on the NCAS cf-checker as soon as (Reading/CEDA checkers are one and the same).

Hi all - I just pushed an update to the PR (#104) with, I believe, all the descriptions that I've received so far. Please take a look and see if it looks OK.
I plan to merge this in by the end of the day today (Friday) to get it in before the CF Workshop next week.
@RosalynHatcher - I left a place holder for the compliance checkers. We can get that added later after this PR is merged if necessary.
Have a good weekend, all.

@ethanrd Here's a short description for the cf-checker at Reading/CEDA.
The cf-checker is a python tool to check compliance of netCDF files against the CF Convention.  It can be run as a command-line tool, via a web interface (available at NCAS and CEDA) or imported as a python library.  The cf-checker verifies conformance according to the requirements and recommendations laid out in the CF Conformance Document.  It is possible to check conformance against any CF version.

Thanks @RosalynHatcher !


Title does not truncate

The long titles should truncate and fill a single line. It works on the previous version of react navigation stack

"react-native": "0.61.4"
"react-navigation": "^4.0.10"
"react-navigation-stack": "^2.0.0-alpha.37"

Hey @miguelneves from the included image I guess that this is happening when headerBackTitle doesn't fit on the screen. So you should try to include something like this in the navigationOptions of this screen:
Home: {
    screen: HomeScreen,
    navigationOptions: () => ({
      title: `Home`,
      headerBackTitle: 'A much too long text for back button from RandomScreen to Home',
      headerTruncatedBackTitle: `to Home`,
    }),
  },

Let me know if this helps.

Your example works because the title is short. In my case, the title of parent screen is actually null, it's the title of the current screen that is too long.
It looks like the width of the title component is not being set.

It doesn't matter if parent screen is null. It will be nice if you could provide runnable repo. You can use expo snack. I try to reproduce the same behaviour in my app and for me all is working..
In my "Screen" Component:
static navigationOptions = ({ navigation }) => ({
    title: "This is really long Current Screen Title",
  });

Screen in the app:

Here is the snack example<EMAIL_ADDRESS>

Thanks @miguelneves for reporting the issue. I will link this issue to the upcoming PR with fix for it.


C++ link should not fail when project directory does not exist

When the project directory does not exist, for example in the "Swift PM" native samples, the link task fails without any useful error message.

As a workaround, we've been adding this to the build scripts with customized project layouts:
    tasks.withType(UnexportMainSymbol) {
        doFirst {
            project.projectDir.mkdirs()
        }
    }
    tasks.withType(AbstractLinkTask) {
        doFirst {
            project.projectDir.mkdirs()
        }
    }


Respect server maximum packet size

Currently, we ignore the server-specified maximum packet size. We need to respect this value and not send any packets that are too large.

After discussion in #137. it was decided that we'll ignore this parameter and let the server disconnect us if we send a message that's too large. In these cases, there's likely little action that can be taken by the client without a rewrite.


Deprecate default version strategies

As noted in #175, default strategies sometimes aren't actually able to be used as a "default", since their selector returning false also implies that trying to run infer will fail. This should print a warning and be slated for removal in 2.0.0.

In 1.5.0 and in these notes I think you are saying "defaultVersionStrategy" is removed (not deprecated).  Now "gradlew clean" fails with "No version strategies were selected."
With this deprecation/removal if I set
-Prelease.stage=dev
The Gradle tasks resume working without error.  Is adding "=dev" this the workaround for this deprecation/removal?  For developers I do not want to have to tell them to add this.  For our CI pipeline we set it to "final", but I would like "dev" to default if not specified.
with 1.5.0 what would be a good way to ensure "dev" is the default strategy?

The answer appears to be adding
release.stage=dev
to Gradle's build.properties
then the command line (e.g. via Jenkins) can override the property with -Prelease.stage=final

There was a behavior change meant to avoid some confusing error messages. It should work in any situation it worked before, unless I'm remembering wrong.
Can you let me know what strategies you have configured (including the default)?

Hmm... yeah, I think you're right. The tests I added when changing the behavior didn't cover the reason the defaults were there in the first place, so now I don't think they really work as expected. I'll consider this a regression and open a new bug, this will be out as a 1.5.1 release, most likely this weekend.

We are using:
    versionStrategy Strategies.FINAL
    versionStrategy Strategies.PRE_RELEASE_ALPHA_BETA
    versionStrategy Strategies.DEVELOPMENT

and just adding to gradle.properties
release.stage = dev
This works just fine.  No need for defaultVersionStrategy as -P property makes sense as a command line override.


titlecasing

https://github.com/wikimedia/mediawiki-title
wow something like this existed
edit: nvm might be useless

Workaround could be to search for both/all terms (i.e. "los angeles" and "Los Angeles"(exact case match)) and display the one which has results. Will need to do some serious dancing, though.

Or maybe just a "search instead" field?


Add a copyright messaging to the BpackingAvx512.hh

What changes were proposed in this pull request?
Add copyright messaging to BpackingAvx512.hh
Why are the changes needed?
The vector unpacking functions  in this PR https://github.com/apache/orc/pull/1375 is derived from Intel's QPL library,  hence,  Maybe copyright messaging should be added.
QPL Link: https://github.com/intel/qpl
How was this patch tested?
N/A

If we need to regard the code as third-party and remove ASF license header, some refactoring work is required to isolate code from Intel QPL and then add the copyright. It seems that BpackingAvx512.hh is mix of ORC RLE decoder interface and AVX512 implementation.

If we need to regard the code as third-party and remove ASF license header, some refactoring work is required to isolate code from Intel QPL and then add the copyright. It seems that BpackingAvx512.hh is mix of ORC RLE decoder interface and AVX512 implementation.↳
It would be even better if you could provide the original source of the code.
I haven't checked if the referenced code has been modified on top of it, but if so, we can also add the corresponding AL2 header. FYI https://issues.apache.org/jira/browse/LEGAL-626

If we need to regard the code as third-party and remove ASF license header, some refactoring work is required to isolate code from Intel QPL and then add the copyright. It seems that BpackingAvx512.hh is mix of ORC RLE decoder interface and AVX512 implementation.↳

It would be even better if you could provide the original source of the code. I haven't checked if the referenced code has been modified on top of it, but if so, we can also add the corresponding AL2 header. FYI https://issues.apache.org/jira/browse/LEGAL-626

The source code link: https://github.com/intel/qpl/blob/c2ced94c53c1ee22191201a59878e9280bc9b9b8/sources/core-sw/src/filtering/opt/qplc_unpack_be_8u_k0.h#L158
This implementation of this part is referred to Intel/qpl code.
@wgtmac @dongjoon-hyun So sorry for late response. Something happened in my family in the past half a year.

@wpleonardo Sorry to hear that


Feat/deployable backtesting

Added new functionalities:

Install Hummingbot library
Adapt backtesting engine to use hummingbot
Save configuration files for the trials selected
Deploy hummingbot instances with multiple controller configs in the same bot

Test commit 92bf3b46246d222d4e58504312683d19eb092e2e

Run tests on local mbp (m1)
Successfully install dashboard env using make env_create on both osx64 and osx_arm64 platforms
Ran the initial tests below:

Start master_bot-conf

Getting this error response if there are no existing hummingbot-master_bot_conf container

While this happened, dashboard is able to create hummingbot-master_bot_conf container successfully ✅

What if we stop hummingbot-master_bot_conf?

Run start again from bot orchestration → credentials ✅
Stop the hummingbot-master_bot_conf then start again ✅
There is a available stop button now after running start
What happens on the data inside the hummingbot-master_bot_conf? Stays the same ✅

Launch bot

Getting the error below even when hummingbot-master_bot-conf active or notTypeError: can only join an iterable
Traceback:
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 537, in _run_script
    self._session_state.on_script_will_rerun(rerun_data.widget_states)
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/state/safe_session_state.py", line 68, in on_script_will_rerun
    self._state.on_script_will_rerun(latest_widget_states)
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/state/session_state.py", line 500, in on_script_will_rerun
    self._call_callbacks()
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/state/session_state.py", line 513, in _call_callbacks
    self._new_widget_state.call_callback(wid)
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/state/session_state.py", line 260, in call_callback
    callback(*args, **kwargs)
File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit_elements/core/callback.py", line 91, in dispatch
    callback(**frontend_params)
File "/Users/rapcomia/github/dashboard/69/ui_components/launch_strategy_v2.py", line 54, in launch_new_bot
    "-e", f"controller_configs={','.join(self._controller_config_selected)}"]

Instances

When creating instances from the parent master_bot_conf:

Getting warning related to st.experimental_rerun323959240c6ad6992908bf635f684fd08a464eaafbf7b7cf1180cd33036825de
2023-09-22 13:34:02.910 Please replace `st.experimental_rerun` with `st.rerun`.

`st.experimental_rerun` will be removed after 2024-04-01.
2023-09-22 13:34:08.231 Please replace `st.experimental_rerun` with `st.rerun`.

`st.experimental_rerun` will be removed after 2024-04-01.

While this happens, the container is running ok and able to docker attach ✅

When stopping the instance:
    docker: Error response from daemon: Conflict. The container name "/hummingbot-test01" is already in use by container "323959240c6ad6992908bf635f684fd08a464eaafbf7b7cf1180cd33036825de". You have to remove (or rename) that container to be able to reuse that name.     See 'docker run --help'.     hummingbot-test01
- While this happens, the container successfully stopped ✅
- Tried to start then stop again and it seems to work as expected

Note: The errors reported above only occurs when  it was initially created and stopped. When a container is started 2nd time, the warning does not occur

Build docker images from this PR
74.19   Getting requirements to build wheel: started
74.19   Getting requirements to build wheel: finished with status 'done'
74.19   Preparing metadata (pyproject.toml): started
74.19   Preparing metadata (pyproject.toml): finished with status 'done'
74.19 Collecting hummingbot (from -r /tmp/condaenv.fpvo1ve6.requirements.txt (line 1))
74.19   Downloading hummingbot-20230930.tar.gz (8.2 MB)
74.19      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.2/8.2 MB 28.2 MB/s eta 0:00:00
74.19   Installing build dependencies: started
74.19   Installing build dependencies: finished with status 'done'
74.19   Getting requirements to build wheel: started
74.19   Getting requirements to build wheel: finished with status 'error'
74.19
74.19 failed
74.19
74.19 CondaEnvException: Pip failed
74.19
------
Dockerfile:13
--------------------
  12 |     COPY environment_conda.yml /tmp/environment_conda.yml
  13 | >>> RUN conda env create -f /tmp/environment_conda.yml && \
  14 | >>>     conda clean -afy && \
  15 | >>>     rm /tmp/environment_conda.yml
  16 |
--------------------
ERROR: failed to solve: process "/bin/sh -c conda env create -f /tmp/environment_conda.yml &&     conda clean -afy &&     rm /tmp/environment_conda.yml" did not complete successfully: exit code: 1

This error occurred either the following docker build command:

docker build -t hummingbot/dashboard:test01 .
docker build -t hummingbot/dashboard:test01 -f Dockerfile .

Pending:
Not tested on cloud server running Ubuntu and related AMD platforms

@rapcmia regarding the master bot conf testing, don't worry since this PR is more for the second part.
I will record a video showing how this should be used so you can test that.
Regarding to the docker build, seems like the error happen when trying to install hummingbot. @david-hummingbot when do you uploaded the wheels? because docker uses linux so probably if you tried to do it before David finished the upload it's expected

@rapcmia I added error handling if there are no controller configs selected. I'm also uploading a video showing how to use it

PR update:

Run tests on mac(m1)
Clone this PR on osx64 and osx_arm64 platforms for conda and successfully pip install hummingbot ✅

In progress:
Testing in progress on backtests base on fede's demo

@cardosofede I think we have to create the hummingbot_files/controller_configs directory. Otherwise, it throws an error since it can't save the controller config file.

Yes I forgot to add it to git because I already have the folder
On Tue, 26 Sep 2023 at 17:12 Michael Feng @.***> wrote:

@cardosofede https://github.com/cardosofede I think we have to create
the hummingbot_files/controller_configs directory. Otherwise, it throws
an error since it can't save the controller config file.
—
Reply to this email directly, view it on GitHub
https://github.com/hummingbot/dashboard/pull/69#issuecomment-1736222474,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIZJOSHTKL2KXKWLALAFUILX4MZKPANCNFSM6AAAAAA45AAAMQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Test commit 7cd1a6417d8f3f2f05a968aee85bd405258b4dd6

On Get data, downloaded 100, 300 then 1000 of historical data from intervals 1m,3m and 1hr for BTC-USDT,DOGE-USDT,XRP-USDT and DOGE-USDT ✅
On this test, we use default bollinger template

On Optimize, Test using default bollinger template for BTC-USDT

Change trials from 10, 30 and 50 and run, all ok ✅

However we also observe these instances on the terminal when running trials:472, 'bb_std': 3.88, 'bb_long_threshold': -0.31999999999999984, 'bb_short_threshold': 2.12, 'std_span': 181}. Best is trial 840 with value: 0.02676680891678896.
Traceback (most recent call last):
  File "/Users/rapcomia/github/dashboard/69/quants_lab/optimizations/bollinger_v_26-09-2023a.py", line 64, in objective
    backtesting_results = engine.run_backtesting(initial_portfolio_usd=initial_portfolio_usd, trade_cost=trade_cost,
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/backtesting_engine_base.py", line 104, in run_backtesting
    executors_df = self.simulate_execution(processed_data, initial_portfolio_usd=initial_portfolio_usd, trade_cost=trade_cost)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/directional_trading/directional_trading_backtesting_engine.py", line 11, in simulate_execution
    df = self.apply_triple_barrier_method(df,
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/backtesting_engine_base.py", line 45, in apply_triple_barrier_method
    df = self.apply_tp_sl_on_tl(df, tp=tp, sl=sl)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/backtesting_engine_base.py", line 86, in apply_tp_sl_on_tl
    df["close_time"] = df[["tl", "take_profit_time", "stop_loss_time"]].dropna(how="all").min(axis=1)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/frame.py", line 3902, in __getitem__
    indexer = self.columns._get_indexer_strict(key, "columns")[1]
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/indexes/base.py", line 6114, in _get_indexer_strict
    self._raise_if_missing(keyarr, indexer, axis_name)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/indexes/base.py", line 6178, in _raise_if_missing
    raise KeyError(f"{not_found} not in index")
KeyError: "['take_profit_time', 'stop_loss_time'] not in index"

On Analyze v2

Select a Trial ID base on win signals > 10
Set max records to default 1000
Run backtesting but getting an KeyError below:

Tried to change the max_records from 1000 to 100 or 300
Change intervals from 1h, 1m and 3m base on the 1000 data that was initially downloaded
This time getting the error below:2023-09-27 12:12:04.476 Uncaught app exception
Traceback (most recent call last):
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/indexes/base.py", line 3790, in get_loc
    return self._engine.get_loc(casted_key)
  File "index.pyx", line 152, in pandas._libs.index.IndexEngine.get_loc
  File "index.pyx", line 181, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/hashtable_class_helper.pxi", line 7080, in pandas._libs.hashtable.PyObjectHashTable.get_item
  File "pandas/_libs/hashtable_class_helper.pxi", line 7088, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'BBP_517_3.98'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 541, in _run_script
    exec(code, module.__dict__)
  File "/Users/rapcomia/github/dashboard/69/pages/backtest_manager/analyze_v2.py", line 214, in <module>
    backtesting_results = engine.run_backtesting(initial_portfolio_usd=initial_portfolio_usd,
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/backtesting_engine_base.py", line 101, in run_backtesting
    processed_data = self.get_data(start=start, end=end)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/hummingbot/smart_components/strategy_frameworks/backtesting_engine_base.py", line 95, in get_data
    df = self.controller.get_processed_data()
  File "/Users/rapcomia/github/dashboard/69/quants_lab/controllers/bollinger.py", line 50, in get_processed_data
    long_condition = df[f"BBP_{self.config.bb_length}_{self.config.bb_std}"] < self.config.bb_long_threshold
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/frame.py", line 3896, in __getitem__
    indexer = self.columns.get_loc(key)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/pandas/core/indexes/base.py", line 3797, in get_loc
    raise KeyError(key) from err
KeyError: 'BBP_517_3.98'

Steps to reproduce;

Get data of 100 or 1000 for BTC-USDT,ETH-USDT
Optimize and run trial for either 30 and 50
Analyze (v2) data by selecting trial id and run backtesting using default
Observe returning errors

On Optimize, Test using default bollinger template for XRP-USDT and ETH-USDT

Run trials for 10, 30 and 50 but getting this ValueError: CategoricalDistribution does not support dynamic value space.[I 2023-09-27 11:51:32,276] Trial 898 pruned.
Traceback (most recent call last):
  File "/Users/rapcomia/github/dashboard/69/quants_lab/optimizations/bollinger_v_26-09-2023.py", line 18, in objective
    trading_pair = trial.suggest_categorical('trading_pair', ['XRP-USDT', 'DOGE-USDT', ])
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/trial/_trial.py", line 405, in suggest_categorical
    return self._suggest(name, CategoricalDistribution(choices=choices))
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/trial/_trial.py", line 636, in _suggest
    storage.set_trial_param(trial_id, name, param_value_in_internal_repr, distribution)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/storages/_cached_storage.py", line 171, in set_trial_param
    self._backend.set_trial_param(trial_id, param_name, param_value_internal, distribution)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/storages/_rdb/storage.py", line 568, in set_trial_param
    self._set_trial_param_without_commit(
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/storages/_rdb/storage.py", line 603, in _set_trial_param_without_commit
    trial_param.check_and_add(session)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/storages/_rdb/models.py", line 351, in check_and_add
    self._check_compatibility_with_previous_trial_param_distributions(session)
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/storages/_rdb/models.py", line 367, in _check_compatibility_with_previous_trial_param_distributions
    distributions.check_distribution_compatibility(
  File "/Users/rapcomia/anaconda3/envs/dashboard/lib/python3.10/site-packages/optuna/distributions.py", line 670, in check_distribution_compatibility
    raise ValueError(
ValueError: CategoricalDistribution does not support dynamic value space.

Pending tests:

Save controller config and launch bot

Run tests on save controller config

Successfully run backtesting for specific trial ID
Added ../hummingbot_files/controller_configs and click  save controller config as per previous comments
Successfully created a strategy file and confirmed saved on ../hummingbot_files/controller_configs ✅

Note: current commit does not support hummingbot_files/controller_configs

Run tests on launch bots

Observed that UI now shows a strategy file named after the directional + trial id
If no name is define for the container, it displays You need to define the bot name and select the controllers config that you want to deploy
Setup test01 then create using hummingbot latest branch
Created container successfully

Data folders like conf and log files are within the container folder
Tested by creating two separate bots with same strategy file create from backtests ✅
However getting Unhandled error in background task: No module named 'hummingbot.smart_components.strategy_frameworks' which seems to be expected since the changes needed are now available on development branch ✅  (not adding the traceback, else we can add upon request)
Recreate container this time using development branch ✅


Error: Chrome failed to start: was killed

Offen appears in unit test, log them in this issue to monitor:
https://travis-ci.org/wechaty/wechaty/jobs/175943288#L1721

should be fixed by https://github.com/wechaty/wechaty/commit/09f88e78e8f52f3ac2677611d7e7e0cb85360450#diff-51f39bbc9af70bfd5af4200cdf993418R256


Only jump to the port mapping chain if the traffic destination is the local system.

This solves Issue #12 .

Only jump to cni-npr-<containerID> if the destination address is on the local system.

This prevents the container network from intercepting forwards to other interfaces.

Add some example rules to the documentation of some functions.

Show what the final rule will look like.

Generalize the masquerade into the container network.

Just masq'ing when the source is localhost is either too much or not enough. Let's masq everything.

Add some additional notes to README regarding Issue #4.

A rule limiting <IP_ADDRESS> to the lo interface blocks communication between the local system and the container network. Instead, explicitly prevent <IP_ADDRESS> from appearing on any physical interface. Virtual interfaces are okay.

I forgot to add/ask. If you're doing semantic versioning, I can make a fair argument that modifying the jump rules to only match local IP addresses is a feature add, making this pull request version 1.1.0. The code wasn't actually broken, I just needed to expand its capabilities.

@dafydd2277 , please fix linter issue and squash commits.

@dafydd2277 , LGTM 👍 Thank you for your contribution!