mirror of
https://github.com/tig-foundation/tig-monorepo.git
synced 2026-02-22 02:47:50 +08:00
37 lines
1.3 KiB
Bash
37 lines
1.3 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
echo "Fetching latest block..."
|
|
BLOCK_ID=$(curl -s https://mainnet-api.tig.foundation/get-block | jq -r '.block.id')
|
|
echo "Fetching algorithms..."
|
|
RESP=$(curl -s "https://mainnet-api.tig.foundation/get-algorithms?block_id=$BLOCK_ID")
|
|
echo "Filtering algorithms..."
|
|
ALGORITHMS=$(echo $RESP | jq -c '.algorithms[]' | jq 'select(.block_data.adoption | length > 15)' | jq -s 'sort_by(.block_data.adoption|tonumber)' | jq 'reverse')
|
|
|
|
declare -A CHALLENGES
|
|
|
|
echo "Calculating adoption percentage..."
|
|
for ALGO in $(echo $ALGORITHMS | jq -c '.[]'); do
|
|
A_NAME=$(echo $ALGO | jq -r '.details.name')
|
|
ADOPTION=$(echo $ALGO | jq -r '.block_data.adoption')
|
|
|
|
ADOPTION_PERCENT=$(awk "BEGIN {printf \"%.2f\", $ADOPTION / 10000000000000000}")
|
|
|
|
case $(echo $ALGO | jq -r '.details.challenge_id') in
|
|
"c001") C_NAME="satisfiability" ;;
|
|
"c002") C_NAME="vehicle_routing" ;;
|
|
"c003") C_NAME="knapsack" ;;
|
|
"c004") C_NAME="vector_search" ;;
|
|
*) C_NAME="unknown" ;;
|
|
esac
|
|
|
|
CHALLENGES[$C_NAME]+="$(printf " %-30s %-20s\n" "$A_NAME" "adoption: $ADOPTION_PERCENT%")\n"
|
|
done
|
|
echo "Printing..."
|
|
echo ""
|
|
for CHALLENGE in "${!CHALLENGES[@]}"; do
|
|
echo " Challenge: $CHALLENGE"
|
|
echo -e "${CHALLENGES[$CHALLENGE]}"
|
|
done
|
|
|