Files
herolib/lib
Mahmoud Emad 9d1752f4ed feat: Improve database synchronization and add deleted record handling
- Add `find_last_entry` function to efficiently determine the
  highest used ID in the lookup table, improving performance
  for non-incremental databases.
- Implement deleted record handling using a special marker,
  allowing for efficient tracking and synchronization of
  deleted entries.
- Enhance `get_last_index` to handle both incremental and
  non-incremental modes correctly, providing a unified
  interface for retrieving the last index.
- Modify `push_updates` to correctly handle initial syncs and
  account for deleted records during synchronization.
- Update `sync_updates` to correctly handle empty update data,
  indicating a record deletion.
- Add comprehensive tests for database synchronization, including
  edge cases like empty updates, invalid data, and various
  scenarios with deleted records.
2025-02-27 12:09:33 +02:00
..
2025-02-19 09:44:03 +03:00
2025-02-06 06:26:44 +03:00
...
2025-02-09 12:24:12 +01:00
...
2025-01-31 15:39:44 +03:00
...
2025-02-19 09:46:41 +03:00
2025-01-28 14:08:42 +01:00
...
2025-02-19 09:46:41 +03:00
2025-01-23 14:16:02 +01:00
s
2025-02-22 19:03:45 +03:00
2025-02-16 07:48:11 +00:00
2025-02-19 09:44:03 +03:00
...
2025-02-09 08:52:42 +01:00
2024-12-25 21:48:03 +01:00
...
2025-02-09 08:55:01 +01:00
2025-02-19 09:44:03 +03:00
2024-12-25 11:56:28 +01:00
2024-12-25 12:23:15 +01:00
2024-12-25 12:23:15 +01:00

herolib

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 which might give some ideas how to use it.

Get started with hero

curl -sL https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/install_hero.sh | bash

Get started with herolib

the following script will install vlang and herolib (report bugs please)

curl https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/installer.sh > /tmp/install.sh
bash /tmp/install.sh

optional requirements

  • ssh key loaded for access to github

alternative with manual git checkout & v install

requirements

  • v installed
  • ssh key loaded for access to github
mkdir -p ~/code/github/freeflowuniverse
cd ~/code/github/freeflowuniverse
git clone git@github.com:freeflowuniverse/herolib.git
cd herolib
# checkout a branch with most recent changes
# git checkout development 
bash install.sh

Install Hero

hero is our "hero" tool to execute heroscript, deal with git, ...

hero will be installed in

  • /usr/local/bin for linux
  • ~/hero/bin for osx
curl https://raw.githubusercontent.com/freeflowuniverse/herolib/development/scripts/install_hero.sh > /tmp/hero_install.sh
bash /tmp/hero_install.sh
#to debug
bash -x /tmp/hero_install.sh
#maybe you want to copy to your system bin dir
cp ~/hero/bin/hero /usr/local/bin
#to use hero make sure you restart your shell or you do (if osx)
source ~/.zprofile 
#check how to use, can also do on each of the subcommands
hero -help

requirements

  • ssh key loaded for access to github

generating docs yourself

#cd in this directory
cd ~/code/github/freeflowuniverse/herolib
bash doc.sh

build hero

  • linux as done by github actions, nothing to do
  • osx: ``