...
This commit is contained in:
@@ -24,7 +24,7 @@ Thank you for your interest in contributing to Herolib! This document provides g
|
|||||||
For developers, you can use the automated installation script:
|
For developers, you can use the automated installation script:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl 'https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
curl 'https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
||||||
bash /tmp/install_v.sh --analyzer --herolib
|
bash /tmp/install_v.sh --analyzer --herolib
|
||||||
# IMPORTANT: Start a new shell after installation for paths to be set correctly
|
# IMPORTANT: Start a new shell after installation for paths to be set correctly
|
||||||
```
|
```
|
||||||
@@ -34,7 +34,7 @@ Alternatively, you can manually set up the environment:
|
|||||||
```bash
|
```bash
|
||||||
mkdir -p ~/code/github/freeflowuniverse
|
mkdir -p ~/code/github/freeflowuniverse
|
||||||
cd ~/code/github/freeflowuniverse
|
cd ~/code/github/freeflowuniverse
|
||||||
git clone git@github.com:freeflowuniverse/herolib.git
|
git clone git@github.com:incubaid/herolib.git
|
||||||
cd herolib
|
cd herolib
|
||||||
# checkout development branch for most recent changes
|
# checkout development branch for most recent changes
|
||||||
git checkout development
|
git checkout development
|
||||||
@@ -87,10 +87,10 @@ Before submitting a pull request, ensure all tests pass:
|
|||||||
./test_basic.vsh
|
./test_basic.vsh
|
||||||
|
|
||||||
# Run tests for a specific module
|
# Run tests for a specific module
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/package_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/package_test.v
|
||||||
|
|
||||||
# Run tests for an entire directory
|
# Run tests for an entire directory
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal
|
vtest ~/code/github/incubaid/herolib/lib/osal
|
||||||
```
|
```
|
||||||
|
|
||||||
The test script (`test_basic.vsh`) manages test execution and caching to optimize performance. It automatically skips tests listed in the ignore or error sections of the script.
|
The test script (`test_basic.vsh`) manages test execution and caching to optimize performance. It automatically skips tests listed in the ignore or error sections of the script.
|
||||||
@@ -148,7 +148,7 @@ This workflow automatically updates the documentation on GitHub Pages when chang
|
|||||||
To generate documentation locally:
|
To generate documentation locally:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
bash doc.sh
|
bash doc.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -179,5 +179,5 @@ For more details, see the [README.md](README.md) troubleshooting section.
|
|||||||
## Additional Resources
|
## Additional Resources
|
||||||
|
|
||||||
- [Herolib Documentation](https://freeflowuniverse.github.io/herolib/)
|
- [Herolib Documentation](https://freeflowuniverse.github.io/herolib/)
|
||||||
- [Cookbook Examples](https://github.com/freeflowuniverse/herolib/tree/development/cookbook)
|
- [Cookbook Examples](https://github.com/incubaid/herolib/tree/development/cookbook)
|
||||||
- [AI Prompts](aiprompts/starter/0_start_here.md)
|
- [AI Prompts](aiprompts/starter/0_start_here.md)
|
||||||
|
|||||||
36
README.md
36
README.md
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
Herolib is an opinionated library primarily used by ThreeFold to automate cloud environments. It provides a comprehensive set of tools and utilities for cloud automation, git operations, documentation building, and more.
|
Herolib is an opinionated library primarily used by ThreeFold to automate cloud environments. It provides a comprehensive set of tools and utilities for cloud automation, git operations, documentation building, and more.
|
||||||
|
|
||||||
[](https://github.com/freeflowuniverse/herolib/actions/workflows/test.yml)
|
[](https://github.com/incubaid/herolib/actions/workflows/test.yml)
|
||||||
[](https://github.com/freeflowuniverse/herolib/actions/workflows/documentation.yml)
|
[](https://github.com/incubaid/herolib/actions/workflows/documentation.yml)
|
||||||
|
|
||||||
> [Complete Documentation](https://freeflowuniverse.github.io/herolib/)
|
> [Complete Documentation](https://freeflowuniverse.github.io/herolib/)
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ Herolib is an opinionated library primarily used by ThreeFold to automate cloud
|
|||||||
The Hero tool can be installed with a single command:
|
The Hero tool can be installed with a single command:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_hero.sh | bash
|
curl https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_hero.sh | bash
|
||||||
```
|
```
|
||||||
|
|
||||||
Hero will be installed in:
|
Hero will be installed in:
|
||||||
@@ -34,11 +34,11 @@ The Hero tool can be used to work with git, build documentation, interact with H
|
|||||||
For development purposes, use the automated installation script:
|
For development purposes, use the automated installation script:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl 'https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
curl 'https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
||||||
bash /tmp/install_v.sh --analyzer --herolib
|
bash /tmp/install_v.sh --analyzer --herolib
|
||||||
|
|
||||||
#do not forget to do the following this makes sure vtest and vrun exists
|
#do not forget to do the following this makes sure vtest and vrun exists
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
v install_herolib.vsh
|
v install_herolib.vsh
|
||||||
|
|
||||||
# IMPORTANT: Start a new shell after installation for paths to be set correctly
|
# IMPORTANT: Start a new shell after installation for paths to be set correctly
|
||||||
@@ -50,7 +50,7 @@ v install_herolib.vsh
|
|||||||
```
|
```
|
||||||
V & HeroLib Installer Script
|
V & HeroLib Installer Script
|
||||||
|
|
||||||
Usage: ~/code/github/freeflowuniverse/herolib/install_v.sh [options]
|
Usage: ~/code/github/incubaid/herolib/install_v.sh [options]
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-h, --help Show this help message
|
-h, --help Show this help message
|
||||||
@@ -60,12 +60,12 @@ Options:
|
|||||||
--herolib Install our herolib
|
--herolib Install our herolib
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh
|
~/code/github/incubaid/herolib/install_v.sh
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh --reset
|
~/code/github/incubaid/herolib/install_v.sh --reset
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh --remove
|
~/code/github/incubaid/herolib/install_v.sh --remove
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh --analyzer
|
~/code/github/incubaid/herolib/install_v.sh --analyzer
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh --herolib
|
~/code/github/incubaid/herolib/install_v.sh --herolib
|
||||||
~/code/github/freeflowuniverse/herolib/install_v.sh --reset --analyzer # Fresh install of both
|
~/code/github/incubaid/herolib/install_v.sh --reset --analyzer # Fresh install of both
|
||||||
```
|
```
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
@@ -90,7 +90,7 @@ Herolib provides a wide range of functionality:
|
|||||||
- System management utilities
|
- System management utilities
|
||||||
- And much more
|
- And much more
|
||||||
|
|
||||||
Check the [cookbook](https://github.com/freeflowuniverse/herolib/tree/development/cookbook) for examples and use cases.
|
Check the [cookbook](https://github.com/incubaid/herolib/tree/development/cookbook) for examples and use cases.
|
||||||
|
|
||||||
## Testing
|
## Testing
|
||||||
|
|
||||||
@@ -98,13 +98,13 @@ Running tests is an essential part of development. To run the basic tests:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Run all basic tests
|
# Run all basic tests
|
||||||
~/code/github/freeflowuniverse/herolib/test_basic.vsh
|
~/code/github/incubaid/herolib/test_basic.vsh
|
||||||
|
|
||||||
# Run tests for a specific module
|
# Run tests for a specific module
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/package_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/package_test.v
|
||||||
|
|
||||||
# Run tests for an entire directory
|
# Run tests for an entire directory
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal
|
vtest ~/code/github/incubaid/herolib/lib/osal
|
||||||
```
|
```
|
||||||
|
|
||||||
The `vtest` command is an alias for testing functionality.
|
The `vtest` command is an alias for testing functionality.
|
||||||
@@ -160,7 +160,7 @@ This is caused by incompatibility between TCC and the half precision math functi
|
|||||||
## Additional Resources
|
## Additional Resources
|
||||||
|
|
||||||
- [Complete Documentation](https://freeflowuniverse.github.io/herolib/)
|
- [Complete Documentation](https://freeflowuniverse.github.io/herolib/)
|
||||||
- [Cookbook Examples](https://github.com/freeflowuniverse/herolib/tree/development/cookbook)
|
- [Cookbook Examples](https://github.com/incubaid/herolib/tree/development/cookbook)
|
||||||
- [AI Prompts](aiprompts/starter/0_start_here.md)
|
- [AI Prompts](aiprompts/starter/0_start_here.md)
|
||||||
|
|
||||||
## Generating Documentation
|
## Generating Documentation
|
||||||
@@ -168,7 +168,7 @@ This is caused by incompatibility between TCC and the half precision math functi
|
|||||||
To generate documentation locally:
|
To generate documentation locally:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
bash doc.sh
|
bash doc.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,6 @@ travelcost is 3% of revenue
|
|||||||
|
|
||||||
create me the full heroscript which gives me this biz model
|
create me the full heroscript which gives me this biz model
|
||||||
|
|
||||||
create bizmodel.heroscript in ~/code/github/freeflowuniverse/herolib/examples/biztools/generated_ai
|
create bizmodel.heroscript in ~/code/github/incubaid/herolib/examples/biztools/generated_ai
|
||||||
|
|
||||||
as well as a do.vsh file which executes the heroscript and does a pprint, in do.vsh , call play with heroscript_path arg
|
as well as a do.vsh file which executes the heroscript and does a pprint, in do.vsh , call play with heroscript_path arg
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ when I generate vlang scripts I will always use .vsh extension and use following
|
|||||||
As AI agent I should also execute .v or .vsh scripts with vrun
|
As AI agent I should also execute .v or .vsh scripts with vrun
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vrun ~/code/github/freeflowuniverse/herolib/examples/biztools/bizmodel.vsh
|
vrun ~/code/github/incubaid/herolib/examples/biztools/bizmodel.vsh
|
||||||
```
|
```
|
||||||
|
|
||||||
## executing test scripts
|
## executing test scripts
|
||||||
@@ -35,7 +35,7 @@ vrun ~/code/github/freeflowuniverse/herolib/examples/biztools/bizmodel.vsh
|
|||||||
instruct user to test as follows (vtest is an alias which gets installed when herolib gets installed), can be done for a dir and for a file
|
instruct user to test as follows (vtest is an alias which gets installed when herolib gets installed), can be done for a dir and for a file
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/package_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/package_test.v
|
||||||
```
|
```
|
||||||
|
|
||||||
- use ~ so it works over all machines
|
- use ~ so it works over all machines
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import freeflowuniverse.herolib...
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
the files are in ~/code/github/freeflowuniverse/herolib/examples for herolib
|
the files are in ~/code/github/incubaid/herolib/examples for herolib
|
||||||
|
|
||||||
## important instructions
|
## important instructions
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ when I generate vlang scripts I will always use .vsh extension and use following
|
|||||||
As AI agent I should also execute v or .vsh scripts with vrun
|
As AI agent I should also execute v or .vsh scripts with vrun
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vrun ~/code/github/freeflowuniverse/herolib/examples/biztools/bizmodel.vsh
|
vrun ~/code/github/incubaid/herolib/examples/biztools/bizmodel.vsh
|
||||||
```
|
```
|
||||||
|
|
||||||
## executing test scripts
|
## executing test scripts
|
||||||
@@ -31,7 +31,7 @@ vrun ~/code/github/freeflowuniverse/herolib/examples/biztools/bizmodel.vsh
|
|||||||
instruct user to test as follows (vtest is an alias which gets installed when herolib gets installed), can be done for a dir and for a file
|
instruct user to test as follows (vtest is an alias which gets installed when herolib gets installed), can be done for a dir and for a file
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/package_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/package_test.v
|
||||||
```
|
```
|
||||||
|
|
||||||
- use ~ so it works over all machines
|
- use ~ so it works over all machines
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
params:
|
params:
|
||||||
|
|
||||||
- filepath: /Users/despiegk/code/github/freeflowuniverse/herolib/lib/clients/openai
|
- filepath: /Users/despiegk/code/github/incubaid/herolib/lib/clients/openai
|
||||||
|
|
||||||
make a dense overview of the code above, easy to understand for AI
|
make a dense overview of the code above, easy to understand for AI
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<file_map>
|
<file_map>
|
||||||
/Users/despiegk/code/github/freeflowuniverse/herolib
|
/Users/despiegk/code/github/incubaid/herolib
|
||||||
└── aiprompts
|
└── aiprompts
|
||||||
└── herolib_core
|
└── herolib_core
|
||||||
├── core_curdir_example.md
|
├── core_curdir_example.md
|
||||||
@@ -467,7 +467,7 @@
|
|||||||
</file_map>
|
</file_map>
|
||||||
|
|
||||||
<file_contents>
|
<file_contents>
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_curdir_example.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_curdir_example.md
|
||||||
```md
|
```md
|
||||||
# Getting the Current Script's Path in Herolib/V Shell
|
# Getting the Current Script's Path in Herolib/V Shell
|
||||||
|
|
||||||
@@ -483,7 +483,7 @@ echo "Current scripts directory: ${script_directory}"
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_globals.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_globals.md
|
||||||
```md
|
```md
|
||||||
## how to remember clients, installers as a global
|
## how to remember clients, installers as a global
|
||||||
|
|
||||||
@@ -531,7 +531,7 @@ pub fn default() !&SiteConfig {
|
|||||||
```
|
```
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_heroscript_basics.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_heroscript_basics.md
|
||||||
```md
|
```md
|
||||||
# HeroScript: Vlang Integration
|
# HeroScript: Vlang Integration
|
||||||
|
|
||||||
@@ -590,7 +590,7 @@ For detailed information on parameter retrieval methods (e.g., `p.get()`, `p.get
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_heroscript_playbook.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_heroscript_playbook.md
|
||||||
```md
|
```md
|
||||||
# PlayBook
|
# PlayBook
|
||||||
|
|
||||||
@@ -620,7 +620,7 @@ playcmds.run(mut plbook)!
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_http_client.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_http_client.md
|
||||||
```md
|
```md
|
||||||
# HTTPConnection Module
|
# HTTPConnection Module
|
||||||
|
|
||||||
@@ -732,7 +732,7 @@ user := conn.get_json_generic[User](
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_osal.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_osal.md
|
||||||
```md
|
```md
|
||||||
# OSAL Core Module - Key Capabilities (freeflowuniverse.herolib.osal.core)
|
# OSAL Core Module - Key Capabilities (freeflowuniverse.herolib.osal.core)
|
||||||
|
|
||||||
@@ -798,7 +798,7 @@ this document has info about the most core functions, more detailed info can be
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_ourtime.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_ourtime.md
|
||||||
```md
|
```md
|
||||||
# OurTime Module
|
# OurTime Module
|
||||||
|
|
||||||
@@ -895,7 +895,7 @@ t_invalid := ourtime.new('bad-date') or {
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_params.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_params.md
|
||||||
```md
|
```md
|
||||||
# Parameter Parsing in Vlang
|
# Parameter Parsing in Vlang
|
||||||
|
|
||||||
@@ -1009,7 +1009,7 @@ Lists are typically comma-separated strings (e.g., `users: "john,jane,bob"`).
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_paths.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_paths.md
|
||||||
```md
|
```md
|
||||||
# Pathlib Usage Guide
|
# Pathlib Usage Guide
|
||||||
|
|
||||||
@@ -1164,7 +1164,7 @@ if file_path.exists() {
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_text.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_text.md
|
||||||
```md
|
```md
|
||||||
# TextTools Module
|
# TextTools Module
|
||||||
|
|
||||||
@@ -1268,7 +1268,7 @@ assert hello_world == texttools.name_fix("Hello World!")
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_ui_console.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_ui_console.md
|
||||||
```md
|
```md
|
||||||
# module ui.console
|
# module ui.console
|
||||||
|
|
||||||
@@ -1473,7 +1473,7 @@ enum Style {
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
File: /Users/despiegk/code/github/freeflowuniverse/herolib/aiprompts/herolib_core/core_vshell.md
|
File: /Users/despiegk/code/github/incubaid/herolib/aiprompts/herolib_core/core_vshell.md
|
||||||
```md
|
```md
|
||||||
# how to run the vshell example scripts
|
# how to run the vshell example scripts
|
||||||
|
|
||||||
@@ -1486,7 +1486,7 @@ import freeflowuniverse.herolib...
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
the files are in ~/code/github/freeflowuniverse/herolib/examples for herolib
|
the files are in ~/code/github/incubaid/herolib/examples for herolib
|
||||||
|
|
||||||
## important instructions
|
## important instructions
|
||||||
|
|
||||||
@@ -2456,7 +2456,7 @@ $NAME = finance
|
|||||||
walk over all models from biz: db/heromodels/src/models/$NAME in the rust repo
|
walk over all models from biz: db/heromodels/src/models/$NAME in the rust repo
|
||||||
create nice structured public models in Vlang (V) see instructions in herlolib
|
create nice structured public models in Vlang (V) see instructions in herlolib
|
||||||
|
|
||||||
put the results in /Users/despiegk/code/github/freeflowuniverse/herolib/lib/hero/models/$NAME
|
put the results in /Users/despiegk/code/github/incubaid/herolib/lib/hero/models/$NAME
|
||||||
|
|
||||||
put decorator on fields which need to be indexed: use @[index] for that at end of line of the property of the struct
|
put decorator on fields which need to be indexed: use @[index] for that at end of line of the property of the struct
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ $NAME = calendar
|
|||||||
walk over all models from biz: db/heromodels/src/models/$NAME in the rust repo
|
walk over all models from biz: db/heromodels/src/models/$NAME in the rust repo
|
||||||
create nice structured public models in Vlang (V) see instructions in herlolib
|
create nice structured public models in Vlang (V) see instructions in herlolib
|
||||||
|
|
||||||
put the results in /Users/despiegk/code/github/freeflowuniverse/herolib/lib/hero/models/$NAME
|
put the results in /Users/despiegk/code/github/incubaid/herolib/lib/hero/models/$NAME
|
||||||
|
|
||||||
put decorator on fields which need to be indexed: use @[index] for that at end of line of the property of the struct
|
put decorator on fields which need to be indexed: use @[index] for that at end of line of the property of the struct
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ if additional_args.len > 0 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Change to the hero directory
|
// Change to the hero directory
|
||||||
hero_dir := os.join_path(os.home_dir(), 'code/github/freeflowuniverse/herolib/cli')
|
hero_dir := os.join_path(os.home_dir(), 'code/github/incubaid/herolib/cli')
|
||||||
os.chdir(hero_dir) or { panic('Failed to change directory to ${hero_dir}: ${err}') }
|
os.chdir(hero_dir) or { panic('Failed to change directory to ${hero_dir}: ${err}') }
|
||||||
|
|
||||||
// Set HEROPATH based on OS
|
// Set HEROPATH based on OS
|
||||||
|
|||||||
@@ -93,9 +93,9 @@ fn hero_upload() ! {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
// os.execute_or_panic('${os.home_dir()}/code/github/freeflowuniverse/herolib/cli/compile.vsh -p')
|
// os.execute_or_panic('${os.home_dir()}/code/github/incubaid/herolib/cli/compile.vsh -p')
|
||||||
println('compile hero can take 60 sec+ on osx.')
|
println('compile hero can take 60 sec+ on osx.')
|
||||||
os.execute_or_panic('${os.home_dir()}/code/github/freeflowuniverse/herolib/cli/compile.vsh -p')
|
os.execute_or_panic('${os.home_dir()}/code/github/incubaid/herolib/cli/compile.vsh -p')
|
||||||
println('upload:')
|
println('upload:')
|
||||||
hero_upload() or {
|
hero_upload() or {
|
||||||
eprintln(err)
|
eprintln(err)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ if additional_args.len > 0 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Change to the vdo directory
|
// Change to the vdo directory
|
||||||
hero_dir := os.join_path(os.home_dir(), 'code/github/freeflowuniverse/herolib/cli')
|
hero_dir := os.join_path(os.home_dir(), 'code/github/incubaid/herolib/cli')
|
||||||
os.chdir(hero_dir) or { panic('Failed to change directory to ${hero_dir}: ${err}') }
|
os.chdir(hero_dir) or { panic('Failed to change directory to ${hero_dir}: ${err}') }
|
||||||
|
|
||||||
// Set HEROPATH based on OS
|
// Set HEROPATH based on OS
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ abs_dir_of_script := dir(@FILE)
|
|||||||
|
|
||||||
// Reset symlinks if requested
|
// Reset symlinks if requested
|
||||||
println('Resetting all symlinks...')
|
println('Resetting all symlinks...')
|
||||||
os.rm('${os.home_dir()}/.vmodules/freeflowuniverse/herolib') or {}
|
os.rm('${os.home_dir()}/.vmodules/incubaid/herolib') or {}
|
||||||
|
|
||||||
// Create necessary directories
|
// Create necessary directories
|
||||||
os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
||||||
@@ -56,7 +56,7 @@ os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create new symlinks
|
// Create new symlinks
|
||||||
os.symlink('${abs_dir_of_script}/lib', '${os.home_dir()}/.vmodules/freeflowuniverse/herolib') or {
|
os.symlink('${abs_dir_of_script}/lib', '${os.home_dir()}/.vmodules/incubaid/herolib') or {
|
||||||
panic('Failed to create herolib symlink: ${err}')
|
panic('Failed to create herolib symlink: ${err}')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -207,7 +207,7 @@ function os_update {
|
|||||||
|
|
||||||
|
|
||||||
function hero_lib_pull {
|
function hero_lib_pull {
|
||||||
pushd $DIR_CODE/github/freeflowuniverse/herolib 2>&1 >> /dev/null
|
pushd $DIR_CODE/github/incubaid/herolib 2>&1 >> /dev/null
|
||||||
if [[ $(git status -s) ]]; then
|
if [[ $(git status -s) ]]; then
|
||||||
echo "There are uncommitted changes in the Git repository herolib."
|
echo "There are uncommitted changes in the Git repository herolib."
|
||||||
return 1
|
return 1
|
||||||
@@ -219,12 +219,12 @@ function hero_lib_pull {
|
|||||||
function hero_lib_get {
|
function hero_lib_get {
|
||||||
|
|
||||||
mkdir -p $DIR_CODE/github/freeflowuniverse
|
mkdir -p $DIR_CODE/github/freeflowuniverse
|
||||||
if [[ -d "$DIR_CODE/github/freeflowuniverse/herolib" ]]
|
if [[ -d "$DIR_CODE/github/incubaid/herolib" ]]
|
||||||
then
|
then
|
||||||
hero_lib_pull
|
hero_lib_pull
|
||||||
else
|
else
|
||||||
pushd $DIR_CODE/github/freeflowuniverse 2>&1 >> /dev/null
|
pushd $DIR_CODE/github/freeflowuniverse 2>&1 >> /dev/null
|
||||||
git clone --depth 1 --no-single-branch https://github.com/freeflowuniverse/herolib.git
|
git clone --depth 1 --no-single-branch https://github.com/incubaid/herolib.git
|
||||||
popd 2>&1 >> /dev/null
|
popd 2>&1 >> /dev/null
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -461,7 +461,7 @@ check_and_start_redis
|
|||||||
|
|
||||||
if [ "$HEROLIB" = true ]; then
|
if [ "$HEROLIB" = true ]; then
|
||||||
hero_lib_get
|
hero_lib_get
|
||||||
~/code/github/freeflowuniverse/herolib/install_herolib.vsh
|
~/code/github/incubaid/herolib/install_herolib.vsh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,6 @@ this will make sure we load the appropriate biz model
|
|||||||
|
|
||||||
|
|
||||||
```js
|
```js
|
||||||
!!bizmodel.load name:'default' url:'https://github.com/freeflowuniverse/herolib/tree/development/bizmodel/example/data'
|
!!bizmodel.load name:'default' url:'https://github.com/incubaid/herolib/tree/development/bizmodel/example/data'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -4,18 +4,18 @@ import freeflowuniverse.herolib.core.generator.generic as generator
|
|||||||
import freeflowuniverse.herolib.core.pathlib
|
import freeflowuniverse.herolib.core.pathlib
|
||||||
|
|
||||||
// mut args := generator.GeneratorArgs{
|
// mut args := generator.GeneratorArgs{
|
||||||
// path: '~/code/github/freeflowuniverse/herolib/lib/clients'
|
// path: '~/code/github/incubaid/herolib/lib/clients'
|
||||||
// force: true
|
// force: true
|
||||||
// }
|
// }
|
||||||
|
|
||||||
mut args2 := generator.GeneratorArgs{
|
mut args2 := generator.GeneratorArgs{
|
||||||
path: '~/code/github/freeflowuniverse/herolib/lib/develop/heroprompt'
|
path: '~/code/github/incubaid/herolib/lib/develop/heroprompt'
|
||||||
force: true
|
force: true
|
||||||
}
|
}
|
||||||
generator.scan(args2)!
|
generator.scan(args2)!
|
||||||
|
|
||||||
// mut args := generator.GeneratorArgs{
|
// mut args := generator.GeneratorArgs{
|
||||||
// path: '~/code/github/freeflowuniverse/herolib/lib/installers'
|
// path: '~/code/github/incubaid/herolib/lib/installers'
|
||||||
// force: true
|
// force: true
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ heroscript := "
|
|||||||
recursive:false
|
recursive:false
|
||||||
|
|
||||||
!!git.clone
|
!!git.clone
|
||||||
url:'https://github.com/freeflowuniverse/herolib.git'
|
url:'https://github.com/incubaid/herolib.git'
|
||||||
light:true
|
light:true
|
||||||
recursive:false
|
recursive:false
|
||||||
|
|
||||||
|
|||||||
@@ -4,13 +4,13 @@ import freeflowuniverse.herolib.develop.heroprompt
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
// mut workspace := heroprompt.new(
|
// mut workspace := heroprompt.new(
|
||||||
// path: '${os.home_dir()}/code/github/freeflowuniverse/herolib'
|
// path: '${os.home_dir()}/code/github/incubaid/herolib'
|
||||||
// name: 'workspace'
|
// name: 'workspace'
|
||||||
// )!
|
// )!
|
||||||
|
|
||||||
mut workspace := heroprompt.get(
|
mut workspace := heroprompt.get(
|
||||||
name: 'example_ws'
|
name: 'example_ws'
|
||||||
path: '${os.home_dir()}/code/github/freeflowuniverse/herolib'
|
path: '${os.home_dir()}/code/github/incubaid/herolib'
|
||||||
create: true
|
create: true
|
||||||
)!
|
)!
|
||||||
|
|
||||||
@@ -18,9 +18,9 @@ println('workspace (initial): ${workspace}')
|
|||||||
println('selected (initial): ${workspace.selected_children()}')
|
println('selected (initial): ${workspace.selected_children()}')
|
||||||
|
|
||||||
// Add a directory and a file
|
// Add a directory and a file
|
||||||
workspace.add_dir(path: '${os.home_dir()}/code/github/freeflowuniverse/herolib/docker')!
|
workspace.add_dir(path: '${os.home_dir()}/code/github/incubaid/herolib/docker')!
|
||||||
workspace.add_file(
|
workspace.add_file(
|
||||||
path: '${os.home_dir()}/code/github/freeflowuniverse/herolib/docker/docker_ubuntu_install.sh'
|
path: '${os.home_dir()}/code/github/incubaid/herolib/docker/docker_ubuntu_install.sh'
|
||||||
)!
|
)!
|
||||||
println('selected (after add): ${workspace.selected_children()}')
|
println('selected (after add): ${workspace.selected_children()}')
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
hero run -u https://github.com/freeflowuniverse/herolib/tree/development_juggler/examples/develop/juggler/hero/playbook
|
hero run -u https://github.com/incubaid/herolib/tree/development_juggler/examples/develop/juggler/hero/playbook
|
||||||
@@ -19,7 +19,7 @@ fn do1() ! {
|
|||||||
osal.rsync(source: myexamplepath, dest: tstdir, delete: true)!
|
osal.rsync(source: myexamplepath, dest: tstdir, delete: true)!
|
||||||
cmd := osal.rsync_cmd(source: myexamplepath, dest: tstdir)!
|
cmd := osal.rsync_cmd(source: myexamplepath, dest: tstdir)!
|
||||||
println(cmd)
|
println(cmd)
|
||||||
//"rsync -avz --no-perms --exclude='*.pyc' --exclude='*.bak' --exclude='*dSYM' /Users/despiegk1/code/github/freeflowuniverse/herolib/examples /tmp/testsync"
|
//"rsync -avz --no-perms --exclude='*.pyc' --exclude='*.bak' --exclude='*dSYM' /Users/despiegk1/code/github/incubaid/herolib/examples /tmp/testsync"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn do2() ! {
|
fn do2() ! {
|
||||||
|
|||||||
@@ -3,9 +3,9 @@
|
|||||||
# SSH and rsync configuration
|
# SSH and rsync configuration
|
||||||
SSH_HOST="verse.tf"
|
SSH_HOST="verse.tf"
|
||||||
SSH_USER="root"
|
SSH_USER="root"
|
||||||
SOURCE_DIR="${HOME}/code/github/freeflowuniverse/herolib/"
|
SOURCE_DIR="${HOME}/code/github/incubaid/herolib/"
|
||||||
DEST_DIR="/root/code/github/freeflowuniverse/herolib/"
|
DEST_DIR="/root/code/github/incubaid/herolib/"
|
||||||
FINAL_DIR="/root/code/github/freeflowuniverse/herolib/examples/hero"
|
FINAL_DIR="/root/code/github/incubaid/herolib/examples/hero"
|
||||||
|
|
||||||
# Check if the source directory exists, if not stop
|
# Check if the source directory exists, if not stop
|
||||||
if [ ! -d "$SOURCE_DIR" ]; then
|
if [ ! -d "$SOURCE_DIR" ]; then
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import os
|
|||||||
import markdown
|
import markdown
|
||||||
import freeflowuniverse.herolib.data.markdownparser2
|
import freeflowuniverse.herolib.data.markdownparser2
|
||||||
|
|
||||||
path1 := '${os.home_dir()}/code/github/freeflowuniverse/herolib/examples/web/mdbook_markdown/content/cybercity.md'
|
path1 := '${os.home_dir()}/code/github/incubaid/herolib/examples/web/mdbook_markdown/content/cybercity.md'
|
||||||
|
|
||||||
text := os.read_file(path1)!
|
text := os.read_file(path1)!
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ version='1.0.33'
|
|||||||
|
|
||||||
|
|
||||||
# Base URL for GitHub releases
|
# Base URL for GitHub releases
|
||||||
base_url="https://github.com/freeflowuniverse/herolib/releases/download/v${version}"
|
base_url="https://github.com/incubaid/herolib/releases/download/v${version}"
|
||||||
|
|
||||||
# Select the URL based on the platform
|
# Select the URL based on the platform
|
||||||
if [[ "$os_name" == "Linux" && "$arch_name" == "x86_64" ]]; then
|
if [[ "$os_name" == "Linux" && "$arch_name" == "x86_64" ]]; then
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ abs_dir_of_script := dir(@FILE)
|
|||||||
|
|
||||||
// Reset symlinks if requested
|
// Reset symlinks if requested
|
||||||
println('Resetting all symlinks...')
|
println('Resetting all symlinks...')
|
||||||
os.rm('${os.home_dir()}/.vmodules/freeflowuniverse/herolib') or {}
|
os.rm('${os.home_dir()}/.vmodules/incubaid/herolib') or {}
|
||||||
|
|
||||||
// Create necessary directories
|
// Create necessary directories
|
||||||
os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
||||||
@@ -56,7 +56,7 @@ os.mkdir_all('${os.home_dir()}/.vmodules/freeflowuniverse') or {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create new symlinks
|
// Create new symlinks
|
||||||
os.symlink('${abs_dir_of_script}/lib', '${os.home_dir()}/.vmodules/freeflowuniverse/herolib') or {
|
os.symlink('${abs_dir_of_script}/lib', '${os.home_dir()}/.vmodules/incubaid/herolib') or {
|
||||||
panic('Failed to create herolib symlink: ${err}')
|
panic('Failed to create herolib symlink: ${err}')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -297,7 +297,7 @@ function os_update {
|
|||||||
|
|
||||||
|
|
||||||
function hero_lib_pull {
|
function hero_lib_pull {
|
||||||
pushd $DIR_CODE/github/freeflowuniverse/herolib 2>&1 >> /dev/null
|
pushd $DIR_CODE/github/incubaid/herolib 2>&1 >> /dev/null
|
||||||
if [[ $(git status -s) ]]; then
|
if [[ $(git status -s) ]]; then
|
||||||
echo "There are uncommitted changes in the Git repository herolib."
|
echo "There are uncommitted changes in the Git repository herolib."
|
||||||
return 1
|
return 1
|
||||||
@@ -309,12 +309,12 @@ function hero_lib_pull {
|
|||||||
function hero_lib_get {
|
function hero_lib_get {
|
||||||
|
|
||||||
mkdir -p $DIR_CODE/github/freeflowuniverse
|
mkdir -p $DIR_CODE/github/freeflowuniverse
|
||||||
if [[ -d "$DIR_CODE/github/freeflowuniverse/herolib" ]]
|
if [[ -d "$DIR_CODE/github/incubaid/herolib" ]]
|
||||||
then
|
then
|
||||||
hero_lib_pull
|
hero_lib_pull
|
||||||
else
|
else
|
||||||
pushd $DIR_CODE/github/freeflowuniverse 2>&1 >> /dev/null
|
pushd $DIR_CODE/github/freeflowuniverse 2>&1 >> /dev/null
|
||||||
git clone --depth 1 --no-single-branch https://github.com/freeflowuniverse/herolib.git
|
git clone --depth 1 --no-single-branch https://github.com/incubaid/herolib.git
|
||||||
popd 2>&1 >> /dev/null
|
popd 2>&1 >> /dev/null
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -632,7 +632,7 @@ check_and_start_redis
|
|||||||
|
|
||||||
if [ "$HEROLIB" = true ]; then
|
if [ "$HEROLIB" = true ]; then
|
||||||
hero_lib_get
|
hero_lib_get
|
||||||
~/code/github/freeflowuniverse/herolib/install_herolib.vsh
|
~/code/github/incubaid/herolib/install_herolib.vsh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ The server supports the following operations:
|
|||||||
### Building the Server
|
### Building the Server
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do
|
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using the Server
|
### Using the Server
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ The server supports the following operations:
|
|||||||
### Building the Server
|
### Building the Server
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do
|
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using the Server
|
### Using the Server
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ import json
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
// // Execute the MCP server with the request
|
// // Execute the MCP server with the request
|
||||||
// cmd := 'cat /tmp/mcp_request.txt | v run /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do/main.v'
|
// cmd := 'cat /tmp/mcp_request.txt | v run /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do/main.v'
|
||||||
// result := os.execute(cmd)
|
// result := os.execute(cmd)
|
||||||
|
|
||||||
// if result.exit_code != 0 {
|
// if result.exit_code != 0 {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import log
|
|||||||
|
|
||||||
fn get_module_dir(mod string) string {
|
fn get_module_dir(mod string) string {
|
||||||
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
||||||
return '${os.home_dir()}/code/github/freeflowuniverse/herolib/lib/${module_parts.join('/')}'
|
return '${os.home_dir()}/code/github/incubaid/herolib/lib/${module_parts.join('/')}'
|
||||||
}
|
}
|
||||||
|
|
||||||
// given a module path and a type name, returns the type definition of that type within that module
|
// given a module path and a type name, returns the type definition of that type within that module
|
||||||
|
|||||||
@@ -57,10 +57,10 @@ pub fn (mut node Node) hero_install(args HeroInstallArgs) ! {
|
|||||||
|
|
||||||
mut todo := []string{}
|
mut todo := []string{}
|
||||||
if !args.compile {
|
if !args.compile {
|
||||||
todo << 'curl https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_hero.sh > /tmp/install.sh'
|
todo << 'curl https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_hero.sh > /tmp/install.sh'
|
||||||
todo << 'bash /tmp/install.sh'
|
todo << 'bash /tmp/install.sh'
|
||||||
} else {
|
} else {
|
||||||
todo << "curl 'https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh"
|
todo << "curl 'https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh"
|
||||||
if args.v_analyzer {
|
if args.v_analyzer {
|
||||||
todo << 'bash /tmp/install_v.sh --analyzer --herolib '
|
todo << 'bash /tmp/install_v.sh --analyzer --herolib '
|
||||||
} else {
|
} else {
|
||||||
@@ -92,10 +92,10 @@ pub fn (mut node Node) hero_update(args_ HeroUpdateArgs) ! {
|
|||||||
|
|
||||||
if args.sync_from_local {
|
if args.sync_from_local {
|
||||||
if args.sync_full {
|
if args.sync_full {
|
||||||
node.sync_code('hero', heropath_ + '/..', '~/code/github/freeflowuniverse/herolib',
|
node.sync_code('hero', heropath_ + '/..', '~/code/github/incubaid/herolib',
|
||||||
args.sync_fast)!
|
args.sync_fast)!
|
||||||
} else {
|
} else {
|
||||||
node.sync_code('hero_lib', heropath_, '~/code/github/freeflowuniverse/herolib/herolib',
|
node.sync_code('hero_lib', heropath_, '~/code/github/incubaid/herolib/herolib',
|
||||||
args.sync_fast)!
|
args.sync_fast)!
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
@@ -108,7 +108,7 @@ pub fn (mut node Node) hero_update(args_ HeroUpdateArgs) ! {
|
|||||||
args.git_pull = false
|
args.git_pull = false
|
||||||
node.exec_cmd(
|
node.exec_cmd(
|
||||||
cmd: '
|
cmd: '
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
rm -f .git/index
|
rm -f .git/index
|
||||||
git fetch --all
|
git fetch --all
|
||||||
git reset HEAD --hard
|
git reset HEAD --hard
|
||||||
@@ -121,7 +121,7 @@ pub fn (mut node Node) hero_update(args_ HeroUpdateArgs) ! {
|
|||||||
if args.git_pull {
|
if args.git_pull {
|
||||||
node.exec_cmd(
|
node.exec_cmd(
|
||||||
cmd: '
|
cmd: '
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
git pull
|
git pull
|
||||||
${branchstr}
|
${branchstr}
|
||||||
'
|
'
|
||||||
@@ -147,25 +147,25 @@ pub fn (mut node Node) sync_code(name string, src_ string, dest string, fast_rsy
|
|||||||
|
|
||||||
// sync local hero code to rmote and then compile hero
|
// sync local hero code to rmote and then compile hero
|
||||||
pub fn (mut node Node) hero_compile_sync() ! {
|
pub fn (mut node Node) hero_compile_sync() ! {
|
||||||
if !node.file_exists('~/code/github/freeflowuniverse/herolib/cli/readme.md') {
|
if !node.file_exists('~/code/github/incubaid/herolib/cli/readme.md') {
|
||||||
node.hero_install()!
|
node.hero_install()!
|
||||||
}
|
}
|
||||||
node.hero_update()!
|
node.hero_update()!
|
||||||
node.exec_cmd(
|
node.exec_cmd(
|
||||||
cmd: '
|
cmd: '
|
||||||
~/code/github/freeflowuniverse/herolib/install.sh
|
~/code/github/incubaid/herolib/install.sh
|
||||||
~/code/github/freeflowuniverse/herolib/cli/hero/compile_debug.sh
|
~/code/github/incubaid/herolib/cli/hero/compile_debug.sh
|
||||||
'
|
'
|
||||||
)!
|
)!
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn (mut node Node) hero_compile() ! {
|
pub fn (mut node Node) hero_compile() ! {
|
||||||
if !node.file_exists('~/code/github/freeflowuniverse/herolib/cli/readme.md') {
|
if !node.file_exists('~/code/github/incubaid/herolib/cli/readme.md') {
|
||||||
node.hero_install()!
|
node.hero_install()!
|
||||||
}
|
}
|
||||||
node.exec_cmd(
|
node.exec_cmd(
|
||||||
cmd: '
|
cmd: '
|
||||||
~/code/github/freeflowuniverse/herolib/cli/hero/compile_debug.sh
|
~/code/github/incubaid/herolib/cli/hero/compile_debug.sh
|
||||||
'
|
'
|
||||||
)!
|
)!
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -163,7 +163,7 @@ search_result := client.search(
|
|||||||
Qdrant server can be installed using the provided installer script:
|
Qdrant server can be installed using the provided installer script:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
~/code/github/freeflowuniverse/herolib/examples/installers/db/qdrant.vsh
|
~/code/github/incubaid/herolib/examples/installers/db/qdrant.vsh
|
||||||
```
|
```
|
||||||
|
|
||||||
This will install and start a Qdrant server locally.
|
This will install and start a Qdrant server locally.
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ The configuration will be automatically loaded and applied when creating a new R
|
|||||||
To run the tests:
|
To run the tests:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/rclone/rclone_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/rclone/rclone_test.v
|
||||||
```
|
```
|
||||||
|
|
||||||
Note: Some tests are commented out as they require an actual rclone configuration and remote to work with. They serve as examples of how to use the RCloneClient module.
|
Note: Some tests are commented out as they require an actual rclone configuration and remote to work with. They serve as examples of how to use the RCloneClient module.
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ pub fn list_v_files(dir string) ![]string {
|
|||||||
// string - absolute path to the module directory
|
// string - absolute path to the module directory
|
||||||
pub fn get_module_dir(mod string) string {
|
pub fn get_module_dir(mod string) string {
|
||||||
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
||||||
return '${os.home_dir()}/code/github/freeflowuniverse/herolib/lib/${module_parts.join('/')}'
|
return '${os.home_dir()}/code/github/incubaid/herolib/lib/${module_parts.join('/')}'
|
||||||
}
|
}
|
||||||
|
|
||||||
// ===== CODE PARSING UTILITIES =====
|
// ===== CODE PARSING UTILITIES =====
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ to call in code
|
|||||||
|
|
||||||
import freeflowuniverse.herolib.core.generator.generic
|
import freeflowuniverse.herolib.core.generator.generic
|
||||||
|
|
||||||
generic.scan(path:"~/code/github/freeflowuniverse/herolib/herolib/installers",force:true)!
|
generic.scan(path:"~/code/github/incubaid/herolib/herolib/installers",force:true)!
|
||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -81,6 +81,6 @@ generic.scan(path:"~/code/github/freeflowuniverse/herolib/herolib/installers",fo
|
|||||||
to run from bash
|
to run from bash
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
~/code/github/freeflowuniverse/herolib/scripts/fix_installers.vsh
|
~/code/github/incubaid/herolib/scripts/fix_installers.vsh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -102,17 +102,17 @@ fn cmd_bootstrap_execute(cmd Command) ! {
|
|||||||
}
|
}
|
||||||
if compileupload {
|
if compileupload {
|
||||||
// mycmd:='
|
// mycmd:='
|
||||||
// \${HOME}/code/github/freeflowuniverse/herolib/scripts/package.vsh
|
// \${HOME}/code/github/incubaid/herolib/scripts/package.vsh
|
||||||
// '
|
// '
|
||||||
// osal.exec(cmd: mycmd)!
|
// osal.exec(cmd: mycmd)!
|
||||||
println('please execute:\n~/code/github/freeflowuniverse/herolib/scripts/githubactions.sh')
|
println('please execute:\n~/code/github/incubaid/herolib/scripts/githubactions.sh')
|
||||||
}
|
}
|
||||||
|
|
||||||
if update {
|
if update {
|
||||||
// mycmd:='
|
// mycmd:='
|
||||||
// \${HOME}/code/github/freeflowuniverse/herolib/scripts/package.vsh
|
// \${HOME}/code/github/incubaid/herolib/scripts/package.vsh
|
||||||
// '
|
// '
|
||||||
// osal.exec(cmd: mycmd)!
|
// osal.exec(cmd: mycmd)!
|
||||||
println('please execute:\n~/code/github/freeflowuniverse/herolib/scripts/install_hero.sh')
|
println('please execute:\n~/code/github/incubaid/herolib/scripts/install_hero.sh')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ pub mut:
|
|||||||
// ignore_default bool = true // ignore files starting with . and _
|
// ignore_default bool = true // ignore files starting with . and _
|
||||||
// dirs_only bool
|
// dirs_only bool
|
||||||
//
|
//
|
||||||
// example see https://github.com/freeflowuniverse/herolib/blob/development/examples/core/pathlib/examples/list/path_list.v
|
// example see https://github.com/incubaid/herolib/blob/development/examples/core/pathlib/examples/list/path_list.v
|
||||||
//
|
//
|
||||||
// e.g. p.list(regex:[r'.*\.v$'])! //notice the r in front of string, this is regex for all files ending with .v
|
// e.g. p.list(regex:[r'.*\.v$'])! //notice the r in front of string, this is regex for all files ending with .v
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ type Filter0 = fn (mut Path, mut paramsparser.Params) !bool
|
|||||||
type Executor0 = fn (mut Path, mut paramsparser.Params) !paramsparser.Params
|
type Executor0 = fn (mut Path, mut paramsparser.Params) !paramsparser.Params
|
||||||
|
|
||||||
// the filters are function which needs to return true if to process with alle executors .
|
// the filters are function which needs to return true if to process with alle executors .
|
||||||
// see https://github.com/freeflowuniverse/herolib/blob/development/examples/core/pathlib/examples/scanner/path_scanner.v .
|
// see https://github.com/incubaid/herolib/blob/development/examples/core/pathlib/examples/scanner/path_scanner.v .
|
||||||
// if any of the filters returns false then we don't continue .
|
// if any of the filters returns false then we don't continue .
|
||||||
// if we return True then it means the dir or file is processed .
|
// if we return True then it means the dir or file is processed .
|
||||||
// .
|
// .
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
TMP_DIR=/tmp/crpgp
|
TMP_DIR=/tmp/crpgp
|
||||||
TMP_LIB_PATH=$TMP_DIR/libcrpgp.so
|
TMP_LIB_PATH=$TMP_DIR/libcrpgp.so
|
||||||
TMP_HEADER_PATH=$TMP_DIR/crpgp.h
|
TMP_HEADER_PATH=$TMP_DIR/crpgp.h
|
||||||
CRPGP_DIR=$HOME/.vmodules/freeflowuniverse/herolib.crypt.crpgp
|
CRPGP_DIR=$HOME/.vmodules/incubaid/herolib.crypt.crpgp
|
||||||
V_CRPGP_PATH=$CRPGP_DIR/crpgp.v
|
V_CRPGP_PATH=$CRPGP_DIR/crpgp.v
|
||||||
|
|
||||||
# mkdir TMP_DIR
|
# mkdir TMP_DIR
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
name:col1 src:'/Users/timurgordon/code/github/freeflowuniverse/herolib/lib/data/doctree/collection/testdata/export_test/mytree/dir1'
|
name:col1 src:'/Users/timurgordon/code/github/incubaid/herolib/lib/data/doctree/collection/testdata/export_test/mytree/dir1'
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
## page_not_found
|
## page_not_found
|
||||||
|
|
||||||
path: /Users/timurgordon/code/github/freeflowuniverse/herolib/herolib/data/doctree/collection/testdata/export_test/mytree/dir1/dir2/file1.md
|
path: /Users/timurgordon/code/github/incubaid/herolib/herolib/data/doctree/collection/testdata/export_test/mytree/dir1/dir2/file1.md
|
||||||
|
|
||||||
msg: page col3:file5.md not found
|
msg: page col3:file5.md not found
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
name:col1 src:'/Users/timurgordon/code/github/freeflowuniverse/herolib/herolib/data/doctree/testdata/export_test/mytree/dir1'
|
name:col1 src:'/Users/timurgordon/code/github/incubaid/herolib/herolib/data/doctree/testdata/export_test/mytree/dir1'
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
## page_not_found
|
## page_not_found
|
||||||
|
|
||||||
path: /Users/timurgordon/code/github/freeflowuniverse/herolib/herolib/data/doctree/testdata/export_test/mytree/dir1/dir2/file1.md
|
path: /Users/timurgordon/code/github/incubaid/herolib/herolib/data/doctree/testdata/export_test/mytree/dir1/dir2/file1.md
|
||||||
|
|
||||||
msg: page col3:file5.md not found
|
msg: page col3:file5.md not found
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
name:col2 src:'/Users/timurgordon/code/github/freeflowuniverse/herolib/herolib/data/doctree/testdata/export_test/mytree/dir3'
|
name:col2 src:'/Users/timurgordon/code/github/incubaid/herolib/herolib/data/doctree/testdata/export_test/mytree/dir3'
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
This project implements a distributed key-value storage service exposed via an HTTP API. It uses a master-worker architecture to handle read and write operations efficiently, with internal communication facilitated by the [Mycelium network](https://github.com/threefoldtech/mycelium). The system is built in [V](https://vlang.io/) and uses [OurDB](https://github.com/freeflowuniverse/herolib/tree/main/lib/data/ourdb) for embedded key-value storage.
|
This project implements a distributed key-value storage service exposed via an HTTP API. It uses a master-worker architecture to handle read and write operations efficiently, with internal communication facilitated by the [Mycelium network](https://github.com/threefoldtech/mycelium). The system is built in [V](https://vlang.io/) and uses [OurDB](https://github.com/incubaid/herolib/tree/main/lib/data/ourdb) for embedded key-value storage.
|
||||||
|
|
||||||
### Key Features
|
### Key Features
|
||||||
|
|
||||||
@@ -73,7 +73,7 @@ To run this project, you need the following:
|
|||||||
|
|
||||||
- [V](https://vlang.io/) (Vlang compiler) installed.
|
- [V](https://vlang.io/) (Vlang compiler) installed.
|
||||||
- [Mycelium](https://github.com/threefoldtech/mycelium) network configured (either public or private).
|
- [Mycelium](https://github.com/threefoldtech/mycelium) network configured (either public or private).
|
||||||
- [OurDB](https://github.com/freeflowuniverse/herolib/tree/main/lib/data/ourdb) library included in your project (part of the HeroLib suite).
|
- [OurDB](https://github.com/incubaid/herolib/tree/main/lib/data/ourdb) library included in your project (part of the HeroLib suite).
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
|||||||
@@ -135,12 +135,12 @@ fn test_args_get() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn test_url1() {
|
fn test_url1() {
|
||||||
mut text := "color:red url:'https://github.com/freeflowuniverse/herolib/tree/development/examples/mdbook/books_to_include1'"
|
mut text := "color:red url:'https://github.com/incubaid/herolib/tree/development/examples/mdbook/books_to_include1'"
|
||||||
mut params := parse(text) or { panic(err) }
|
mut params := parse(text) or { panic(err) }
|
||||||
mut text2 := 'color:red url:"https://github.com/freeflowuniverse/herolib/tree/development/examples/mdbook/books_to_include1 "'
|
mut text2 := 'color:red url:"https://github.com/incubaid/herolib/tree/development/examples/mdbook/books_to_include1 "'
|
||||||
mut params2 := parse(text2) or { panic(err) }
|
mut params2 := parse(text2) or { panic(err) }
|
||||||
assert params.get('url')? == 'https://github.com/freeflowuniverse/herolib/tree/development/examples/mdbook/books_to_include1'
|
assert params.get('url')? == 'https://github.com/incubaid/herolib/tree/development/examples/mdbook/books_to_include1'
|
||||||
assert params2.get('url')? == 'https://github.com/freeflowuniverse/herolib/tree/development/examples/mdbook/books_to_include1'
|
assert params2.get('url')? == 'https://github.com/incubaid/herolib/tree/development/examples/mdbook/books_to_include1'
|
||||||
}
|
}
|
||||||
|
|
||||||
// // fn test_json() {
|
// // fn test_json() {
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ fn install_(args InstallArgs) ! {
|
|||||||
mut repo := gs.get_repo(
|
mut repo := gs.get_repo(
|
||||||
pull: args.git_pull
|
pull: args.git_pull
|
||||||
reset: args.git_reset
|
reset: args.git_reset
|
||||||
url: 'https://github.com/freeflowuniverse/herolib/tree/development/lib'
|
url: 'https://github.com/incubaid/herolib/tree/development/lib'
|
||||||
)!
|
)!
|
||||||
|
|
||||||
// mut repo2 := gs.get_repo(
|
// mut repo2 := gs.get_repo(
|
||||||
@@ -48,7 +48,7 @@ fn install_(args InstallArgs) ! {
|
|||||||
|
|
||||||
mut path1p := pathlib.get_dir(path: path1, create: false)!
|
mut path1p := pathlib.get_dir(path: path1, create: false)!
|
||||||
// mut path2p := pathlib.get_dir(path: path2, create: false)!
|
// mut path2p := pathlib.get_dir(path: path2, create: false)!
|
||||||
path1p.link('${os.home_dir()}/.vmodules/freeflowuniverse/herolib', true)!
|
path1p.link('${os.home_dir()}/.vmodules/incubaid/herolib', true)!
|
||||||
// path2p.link('${os.home_dir()}/.vmodules/freeflowuniverse/webcomponents', true)!
|
// path2p.link('${os.home_dir()}/.vmodules/freeflowuniverse/webcomponents', true)!
|
||||||
|
|
||||||
// hero_compile()!
|
// hero_compile()!
|
||||||
@@ -83,7 +83,7 @@ pub fn install(args InstallArgs) ! {
|
|||||||
cmd := '
|
cmd := '
|
||||||
cd /tmp
|
cd /tmp
|
||||||
export TERM=xterm
|
export TERM=xterm
|
||||||
curl https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_hero.sh | bash
|
curl https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_hero.sh | bash
|
||||||
'
|
'
|
||||||
osal.execute_stdout(cmd) or { return error('Cannot install hero.\n${err}') }
|
osal.execute_stdout(cmd) or { return error('Cannot install hero.\n${err}') }
|
||||||
osal.done_set('install_hero', 'OK')!
|
osal.done_set('install_hero', 'OK')!
|
||||||
@@ -101,7 +101,7 @@ pub fn compile(args InstallArgs) ! {
|
|||||||
cmd := "
|
cmd := "
|
||||||
cd /tmp
|
cd /tmp
|
||||||
export TERM=xterm
|
export TERM=xterm
|
||||||
curl 'https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
curl 'https://raw.githubusercontent.com/incubaid/herolib/refs/heads/development/install_v.sh' > /tmp/install_v.sh
|
||||||
bash /tmp/install_v.sh --herolib
|
bash /tmp/install_v.sh --herolib
|
||||||
"
|
"
|
||||||
osal.execute_stdout(cmd) or { return error('Cannot install hero.\n${err}') }
|
osal.execute_stdout(cmd) or { return error('Cannot install hero.\n${err}') }
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ The server supports the following operations:
|
|||||||
### Building the Server
|
### Building the Server
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do
|
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using the Server
|
### Using the Server
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ The server supports the following operations:
|
|||||||
### Building the Server
|
### Building the Server
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do
|
v -gc none -stats -enable-globals -n -w -cg -g -cc tcc /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using the Server
|
### Using the Server
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ import json
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
// // Execute the MCP server with the request
|
// // Execute the MCP server with the request
|
||||||
// cmd := 'cat /tmp/mcp_request.txt | v run /Users/despiegk/code/github/freeflowuniverse/herolib/lib/mcp/v_do/main.v'
|
// cmd := 'cat /tmp/mcp_request.txt | v run /Users/despiegk/code/github/incubaid/herolib/lib/mcp/v_do/main.v'
|
||||||
// result := os.execute(cmd)
|
// result := os.execute(cmd)
|
||||||
|
|
||||||
// if result.exit_code != 0 {
|
// if result.exit_code != 0 {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import log
|
|||||||
|
|
||||||
fn get_module_dir(mod string) string {
|
fn get_module_dir(mod string) string {
|
||||||
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
module_parts := mod.trim_string_left('freeflowuniverse.herolib').split('.')
|
||||||
return '${os.home_dir()}/code/github/freeflowuniverse/herolib/lib/${module_parts.join('/')}'
|
return '${os.home_dir()}/code/github/incubaid/herolib/lib/${module_parts.join('/')}'
|
||||||
}
|
}
|
||||||
|
|
||||||
// given a module path and a type name, returns the type definition of that type within that module
|
// given a module path and a type name, returns the type definition of that type within that module
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ pub mut:
|
|||||||
// stdout bool = true
|
// stdout bool = true
|
||||||
// ```
|
// ```
|
||||||
// .
|
// .
|
||||||
// see https://github.com/freeflowuniverse/herolib/blob/development/examples/pathlib.rsync/rsync_example.v
|
// see https://github.com/incubaid/herolib/blob/development/examples/pathlib.rsync/rsync_example.v
|
||||||
pub fn rsync(args_ RsyncArgs) ! {
|
pub fn rsync(args_ RsyncArgs) ! {
|
||||||
mut args := args_
|
mut args := args_
|
||||||
if args.ipaddr_src.len == 0 {
|
if args.ipaddr_src.len == 0 {
|
||||||
|
|||||||
@@ -63,4 +63,4 @@ screen -r test
|
|||||||
## Testing
|
## Testing
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/screen/screen_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/screen/screen_test.v
|
||||||
|
|||||||
@@ -251,4 +251,4 @@ mut web_service := systemd.new(
|
|||||||
|
|
||||||
```v
|
```v
|
||||||
// Test module
|
// Test module
|
||||||
vtest ~/code/github/freeflowuniverse/herolib/lib/osal/systemd/systemd_process_test.v
|
vtest ~/code/github/incubaid/herolib/lib/osal/systemd/systemd_process_test.v
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
|
|
||||||
Is an opinionated library as used by threefold mainly to automate cloud environments, its still very much work in progress and we welcome any contribution.
|
Is an opinionated library as used by threefold mainly to automate cloud environments, its still very much work in progress and we welcome any contribution.
|
||||||
|
|
||||||
Please check also our [cookbook](https://github.com/freeflowuniverse/herolib/tree/development/cookbook) which might give some ideas how to use it.
|
Please check also our [cookbook](https://github.com/incubaid/herolib/tree/development/cookbook) which might give some ideas how to use it.
|
||||||
|
|
||||||
## Get started with hero
|
## Get started with hero
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl -sL https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/install_hero.sh | bash
|
curl -sL https://raw.githubusercontent.com/incubaid/herolib/development/scripts/install_hero.sh | bash
|
||||||
```
|
```
|
||||||
|
|
||||||
## Get started with herolib
|
## Get started with herolib
|
||||||
@@ -16,7 +16,7 @@ curl -sL https://raw.githubusercontent.com/freeflowuniverse/herolib/development/
|
|||||||
the following script will install vlang and herolib (report bugs please)
|
the following script will install vlang and herolib (report bugs please)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/installer.sh > /tmp/install.sh
|
curl https://raw.githubusercontent.com/incubaid/herolib/development/scripts/installer.sh > /tmp/install.sh
|
||||||
bash /tmp/install.sh
|
bash /tmp/install.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -34,7 +34,7 @@ requirements
|
|||||||
```bash
|
```bash
|
||||||
mkdir -p ~/code/github/freeflowuniverse
|
mkdir -p ~/code/github/freeflowuniverse
|
||||||
cd ~/code/github/freeflowuniverse
|
cd ~/code/github/freeflowuniverse
|
||||||
git clone git@github.com:freeflowuniverse/herolib.git
|
git clone git@github.com:incubaid/herolib.git
|
||||||
cd herolib
|
cd herolib
|
||||||
# checkout a branch with most recent changes
|
# checkout a branch with most recent changes
|
||||||
# git checkout development
|
# git checkout development
|
||||||
@@ -52,7 +52,7 @@ hero will be installed in
|
|||||||
- ~/hero/bin for osx
|
- ~/hero/bin for osx
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/install_hero.sh > /tmp/hero_install.sh
|
curl https://raw.githubusercontent.com/incubaid/herolib/development/scripts/install_hero.sh > /tmp/hero_install.sh
|
||||||
bash /tmp/hero_install.sh
|
bash /tmp/hero_install.sh
|
||||||
#to debug
|
#to debug
|
||||||
bash -x /tmp/hero_install.sh
|
bash -x /tmp/hero_install.sh
|
||||||
@@ -72,7 +72,7 @@ requirements
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
#cd in this directory
|
#cd in this directory
|
||||||
cd ~/code/github/freeflowuniverse/herolib
|
cd ~/code/github/incubaid/herolib
|
||||||
bash doc.sh
|
bash doc.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ Module {
|
|||||||
author: 'freeflowuniverse'
|
author: 'freeflowuniverse'
|
||||||
description: 'Set of various libraries'
|
description: 'Set of various libraries'
|
||||||
version: '0.1.0'
|
version: '0.1.0'
|
||||||
repo_url: 'https://github.com/freeflowuniverse/herolib/herolib'
|
repo_url: 'https://github.com/incubaid/herolib/herolib'
|
||||||
deps: []
|
deps: []
|
||||||
vcs: 'git'
|
vcs: 'git'
|
||||||
license: 'apache2'
|
license: 'apache2'
|
||||||
|
|||||||
@@ -5,9 +5,9 @@ import freeflowuniverse.herolib.baobab.specification
|
|||||||
import freeflowuniverse.herolib.schemas.openapi
|
import freeflowuniverse.herolib.schemas.openapi
|
||||||
import os
|
import os
|
||||||
|
|
||||||
const example_dir = os.join_path('${os.home_dir()}/code/github/freeflowuniverse/herolib/lib/circles/mcc',
|
const example_dir = os.join_path('${os.home_dir()}/code/github/incubaid/herolib/lib/circles/mcc',
|
||||||
'baobab')
|
'baobab')
|
||||||
const openapi_spec_path = os.join_path('${os.home_dir()}/code/github/freeflowuniverse/herolib/lib/circles/mcc',
|
const openapi_spec_path = os.join_path('${os.home_dir()}/code/github/incubaid/herolib/lib/circles/mcc',
|
||||||
'openapi.json')
|
'openapi.json')
|
||||||
|
|
||||||
// the actor specification obtained from the OpenRPC Specification
|
// the actor specification obtained from the OpenRPC Specification
|
||||||
|
|||||||
@@ -54,7 +54,7 @@
|
|||||||
"Items": [
|
"Items": [
|
||||||
{
|
{
|
||||||
"Title": "Baobab MCP",
|
"Title": "Baobab MCP",
|
||||||
"Href": "/Users/timurgordon/code/github/freeflowuniverse/herolib/lib/mcp/baobab/README.md",
|
"Href": "/Users/timurgordon/code/github/incubaid/herolib/lib/mcp/baobab/README.md",
|
||||||
"IsDir": false
|
"IsDir": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
## how to tag a version and push
|
## how to tag a version and push
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/Users/despiegk~/code/github/freeflowuniverse/herolib
|
cd ~/Users/despiegk~/code/github/incubaid/herolib
|
||||||
git tag -a v1.0.4 -m "all CI is now working"
|
git tag -a v1.0.4 -m "all CI is now working"
|
||||||
git add . -A ; git commit -m ... ; git pull ; git push origin v1.0.4
|
git add . -A ; git commit -m ... ; git pull ; git push origin v1.0.4
|
||||||
```
|
```
|
||||||
@@ -12,6 +12,6 @@ this allows us to make manual and to copy information from the readme's which ar
|
|||||||
to run
|
to run
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
~/code/github/freeflowuniverse/herolib/tools/doc_extractor/extractor.sh
|
~/code/github/incubaid/herolib/tools/doc_extractor/extractor.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ CONFIG_FILE="$MANUAL_DIR/config.json"
|
|||||||
WIKI_DIR="/Users/timurgordon/code/github/freeflowuniverse/herolauncher/pkg/ui/wiki"
|
WIKI_DIR="/Users/timurgordon/code/github/freeflowuniverse/herolauncher/pkg/ui/wiki"
|
||||||
|
|
||||||
# Path to the herolib directory
|
# Path to the herolib directory
|
||||||
HEROLIB_DIR="/Users/timurgordon/code/github/freeflowuniverse/herolib"
|
HEROLIB_DIR="/Users/timurgordon/code/github/incubaid/herolib"
|
||||||
|
|
||||||
cd "$WIKI_DIR"
|
cd "$WIKI_DIR"
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ struct GithubRelease {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn get_latest_release() !string {
|
fn get_latest_release() !string {
|
||||||
url := 'https://api.github.com/repos/freeflowuniverse/herolib/releases/latest'
|
url := 'https://api.github.com/repos/incubaid/herolib/releases/latest'
|
||||||
resp := http.get(url)!
|
resp := http.get(url)!
|
||||||
release := json.decode[GithubRelease](resp.body) or {
|
release := json.decode[GithubRelease](resp.body) or {
|
||||||
return error('Failed to decode GitHub response: ${err}')
|
return error('Failed to decode GitHub response: ${err}')
|
||||||
@@ -131,12 +131,12 @@ git push
|
|||||||
git checkout development
|
git checkout development
|
||||||
git pull origin development
|
git pull origin development
|
||||||
git push
|
git push
|
||||||
git remote set-url origin git@github.com:freeflowuniverse/herolib.git
|
git remote set-url origin git@github.com:incubaid/herolib.git
|
||||||
git add ${hero_v_path} ${install_hero_path}
|
git add ${hero_v_path} ${install_hero_path}
|
||||||
git commit -m "bump version to ${new_version}"
|
git commit -m "bump version to ${new_version}"
|
||||||
git pull git@github.com:freeflowuniverse/herolib.git main
|
git pull git@github.com:incubaid/herolib.git main
|
||||||
git tag -a "v${new_version}" -m "Release version ${new_version}"
|
git tag -a "v${new_version}" -m "Release version ${new_version}"
|
||||||
git push git@github.com:freeflowuniverse/herolib.git "v${new_version}"
|
git push git@github.com:incubaid/herolib.git "v${new_version}"
|
||||||
'
|
'
|
||||||
|
|
||||||
println(cmd)
|
println(cmd)
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ set -e
|
|||||||
|
|
||||||
# Function to get the latest release from GitHub
|
# Function to get the latest release from GitHub
|
||||||
get_latest_release() {
|
get_latest_release() {
|
||||||
local url="https://api.github.com/repos/freeflowuniverse/herolib/releases/latest"
|
local url="https://api.github.com/repos/incubaid/herolib/releases/latest"
|
||||||
local response
|
local response
|
||||||
response=$(curl -s "$url")
|
response=$(curl -s "$url")
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
@@ -93,12 +93,12 @@ cd "$script_dir" || { echo "Error: Could not change to script directory" >&2; ex
|
|||||||
|
|
||||||
# Prepare git commands
|
# Prepare git commands
|
||||||
cmd="
|
cmd="
|
||||||
git remote set-url origin git@github.com:freeflowuniverse/herolib.git
|
git remote set-url origin git@github.com:incubaid/herolib.git
|
||||||
git add $hero_v_path $install_hero_path
|
git add $hero_v_path $install_hero_path
|
||||||
git commit -m \"bump version to $new_version\"
|
git commit -m \"bump version to $new_version\"
|
||||||
git pull git@github.com:freeflowuniverse/herolib.git main
|
git pull git@github.com:incubaid/herolib.git main
|
||||||
git tag -a \"v$new_version\" -m \"Release version $new_version\"
|
git tag -a \"v$new_version\" -m \"Release version $new_version\"
|
||||||
git push git@github.com:freeflowuniverse/herolib.git \"v$new_version\"
|
git push git@github.com:incubaid/herolib.git \"v$new_version\"
|
||||||
"
|
"
|
||||||
|
|
||||||
echo "$cmd"
|
echo "$cmd"
|
||||||
|
|||||||
@@ -169,7 +169,7 @@ lib/lang
|
|||||||
lib/clients
|
lib/clients
|
||||||
lib/core
|
lib/core
|
||||||
lib/develop
|
lib/develop
|
||||||
// lib/vfs The vfs folder is not exists on the development branch, so we need to uncomment it after merging this PR https://github.com/freeflowuniverse/herolib/pull/68
|
// lib/vfs The vfs folder is not exists on the development branch, so we need to uncomment it after merging this PR https://github.com/incubaid/herolib/pull/68
|
||||||
// lib/crypt
|
// lib/crypt
|
||||||
'
|
'
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ lib/lang
|
|||||||
lib/clients
|
lib/clients
|
||||||
lib/core
|
lib/core
|
||||||
lib/develop
|
lib/develop
|
||||||
// lib/vfs The vfs folder is not exists on the development branch, so we need to uncomment it after merging this PR https://github.com/freeflowuniverse/herolib/pull/68
|
// lib/vfs The vfs folder is not exists on the development branch, so we need to uncomment it after merging this PR https://github.com/incubaid/herolib/pull/68
|
||||||
// lib/crypt
|
// lib/crypt
|
||||||
'
|
'
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
cd ~/code/github/freeflowuniverse/herolib/vscodeplugin/heroscrypt-syntax
|
cd ~/code/github/incubaid/herolib/vscodeplugin/heroscrypt-syntax
|
||||||
npx @vscode/vsce package
|
npx @vscode/vsce package
|
||||||
|
|
||||||
code --install-extension ~/code/github/freeflowuniverse/herolib/vscodeplugin/heroscrypt-syntax/heroscript-syntax-0.0.1.vsix
|
code --install-extension ~/code/github/incubaid/herolib/vscodeplugin/heroscrypt-syntax/heroscript-syntax-0.0.1.vsix
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user