From e4cb7ed30f8ba70e9c5f47ee520a5c7f322438a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9mentine=20Urquizar?= Date: Sat, 16 Oct 2021 17:23:50 +0200 Subject: [PATCH 1/3] Tiny improvement in download-latest.sh --- download-latest.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/download-latest.sh b/download-latest.sh index a3030b176..872be32fa 100644 --- a/download-latest.sh +++ b/download-latest.sh @@ -72,7 +72,7 @@ semverLT() { # Returns the tag of the latest stable release (in terms of semver and not of release date) get_latest() { temp_file='temp_file' # temp_file needed because the grep would start before the download is over - + if [ -z "$GITHUB_PAT" ]; then curl -s 'https://api.github.com/repos/meilisearch/MeiliSearch/releases' > "$temp_file" || return 1 else @@ -161,7 +161,7 @@ get_archi() { } success_usage() { - printf "$GREEN%s\n$DEFAULT" "MeiliSearch binary successfully downloaded as '$BINARY_NAME' file." + printf "$GREEN%s\n$DEFAULT" "MeiliSearch $latest binary successfully downloaded as '$binary_name' file." echo '' echo 'Run it:' echo ' $ ./meilisearch' @@ -193,16 +193,16 @@ echo "Downloading MeiliSearch binary $latest for $os, architecture $archi..." case "$os" in 'windows') release_file="meilisearch-$os-$archi.exe" - BINARY_NAME='meilisearch.exe' + binary_name='meilisearch.exe' ;; *) release_file="meilisearch-$os-$archi" - BINARY_NAME='meilisearch' + binary_name='meilisearch' esac link="https://github.com/meilisearch/MeiliSearch/releases/download/$latest/$release_file" curl -OL "$link" -mv "$release_file" "$BINARY_NAME" -chmod 744 "$BINARY_NAME" +mv "$release_file" "$binary_name" +chmod 744 "$binary_name" success_usage From 93ad8f04b5b043395834c706a3f63ea981ec68e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9mentine=20Urquizar?= Date: Sat, 16 Oct 2021 17:36:36 +0200 Subject: [PATCH 2/3] Add check if $latest is empty --- download-latest.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/download-latest.sh b/download-latest.sh index 872be32fa..389ad3e1b 100644 --- a/download-latest.sh +++ b/download-latest.sh @@ -179,6 +179,13 @@ failure_usage() { # MAIN latest="$(get_latest)" +if [ "$latest" = '' ]; then + echo '' + echo 'Impossible to get the latest stable version of MeiliSearch.' + echo 'Please let us know about this issue: https://github.com/meilisearch/meilisearch-swift/issues/new/choose' + exit 1 +fi + if ! get_os; then failure_usage exit 1 From 017ecf76e3e8f1d124ac80a007e13ca989cf039f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9mentine=20Urquizar?= Date: Sat, 16 Oct 2021 17:36:50 +0200 Subject: [PATCH 3/3] Replace double quotes by single ones --- download-latest.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/download-latest.sh b/download-latest.sh index 389ad3e1b..d3085f6d8 100644 --- a/download-latest.sh +++ b/download-latest.sh @@ -51,13 +51,13 @@ semverLT() { if [ $MAJOR_A -le $MAJOR_B ] && [ $MINOR_A -le $MINOR_B ] && [ $PATCH_A -lt $PATCH_B ]; then return 0 fi - if [ "_$SPECIAL_A" == "_" ] && [ "_$SPECIAL_B" == "_" ] ; then + if [ "_$SPECIAL_A" == '_' ] && [ "_$SPECIAL_B" == '_' ] ; then return 1 fi - if [ "_$SPECIAL_A" == "_" ] && [ "_$SPECIAL_B" != "_" ] ; then + if [ "_$SPECIAL_A" == '_' ] && [ "_$SPECIAL_B" != '_' ] ; then return 1 fi - if [ "_$SPECIAL_A" != "_" ] && [ "_$SPECIAL_B" == "_" ] ; then + if [ "_$SPECIAL_A" != '_' ] && [ "_$SPECIAL_B" == '_' ] ; then return 0 fi if [ "_$SPECIAL_A" < "_$SPECIAL_B" ]; then @@ -86,28 +86,28 @@ get_latest() { # Ex: v0.10.1 false false v0.9.1-rc.1 false true v0.9.0 false false... i=0 - latest="" - current_tag="" + latest='' + current_tag='' for release_info in $releases; do if [ $i -eq 0 ]; then # Cheking tag_name if echo "$release_info" | grep -q "$GREP_SEMVER_REGEXP"; then # If it's not an alpha or beta release current_tag=$release_info else - current_tag="" + current_tag='' fi i=1 elif [ $i -eq 1 ]; then # Checking draft boolean - if [ "$release_info" = "true" ]; then - current_tag="" + if [ "$release_info" = 'true' ]; then + current_tag='' fi i=2 elif [ $i -eq 2 ]; then # Checking prerelease boolean - if [ "$release_info" = "true" ]; then - current_tag="" + if [ "$release_info" = 'true' ]; then + current_tag='' fi i=0 - if [ "$current_tag" != "" ]; then # If the current_tag is valid - if [ "$latest" = "" ]; then # If there is no latest yet + if [ "$current_tag" != '' ]; then # If the current_tag is valid + if [ "$latest" = '' ]; then # If there is no latest yet latest="$current_tag" else semverLT $current_tag $latest # Comparing latest and the current tag