fix(appflowy_flutter): Flutter Version Reset Error (#1923)

* fix(appflowy_flutter): Version Reset Error

- `flutter channel stable` was causing the FlutterSDK to upgrade to it's
latest version.
- Added code to fix this behaviour.
- Tested on Windows and Linux.

* fix(app_flowy): Error in MacOS script

- Replace `-P` with `-E` which should now work as expected in Mac devices.

* fix(app_flowy): Commit Structure

- Fixed Commit Structure

* fix: path reset

Now we move back to cwd after making changes

* chore: change to LF from CTLF

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
This commit is contained in:
Aman Negi 2023-03-16 07:11:14 +05:30 committed by GitHub
parent 230756d242
commit caffb9fdcf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 82 additions and 30 deletions

View File

@ -6,39 +6,56 @@ RED="\e[31m"
ENDCOLOR="\e[0m" ENDCOLOR="\e[0m"
printMessage() { printMessage() {
printf "${YELLOW}AppFlowy : $1${ENDCOLOR}\n" printf "${YELLOW}AppFlowy : $1${ENDCOLOR}\n"
} }
printSuccess() { printSuccess() {
printf "${GREEN}AppFlowy : $1${ENDCOLOR}\n" printf "${GREEN}AppFlowy : $1${ENDCOLOR}\n"
} }
printError() { printError() {
printf "${RED}AppFlowy : $1${ENDCOLOR}\n" printf "${RED}AppFlowy : $1${ENDCOLOR}\n"
} }
# Note: This script does not install applications which are installed by the package manager. There are too many package managers out there. # Note: This script does not install applications which are installed by the package manager. There are too many package managers out there.
# Install Rust # Install Rust
printMessage "The Rust programming language is required to compile AppFlowy." printMessage "The Rust programming language is required to compile AppFlowy."
printMessage "We can install it now if you don't already have it on your system." printMessage "We can install it now if you don't already have it on your system."
read -p "$(printSuccess "Do you want to install Rust? [y/N]") " installrust read -p "$(printSuccess "Do you want to install Rust? [y/N]") " installrust
if [ ${installrust^^} == "Y" ]; then if [ ${installrust^^} == "Y" ]; then
printMessage "Installing Rust." printMessage "Installing Rust."
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env source $HOME/.cargo/env
rustup toolchain install stable rustup toolchain install stable
rustup default stable rustup default stable
else else
printMessage "Skipping Rust installation." printMessage "Skipping Rust installation."
fi fi
# Enable the flutter stable channel
printMessage "Setting up Flutter" printMessage "Setting up Flutter"
flutter channel stable # Get the current Flutter version
FLUTTER_VERSION=$(flutter --version | grep -oP 'Flutter \K\S+')
# Check if the current version is 3.3.10
if [ "$FLUTTER_VERSION" = "3.3.10" ]; then
echo "Flutter version is already 3.3.10"
else
# Get the path to the Flutter SDK
FLUTTER_PATH=$(which flutter)
FLUTTER_PATH=${FLUTTER_PATH%/bin/flutter}
current_dir=$(pwd)
cd $FLUTTER_PATH
# Use git to checkout version 3.3.10 of Flutter
git checkout 3.3.10
# Get back to current working directory
cd "$current_dir"
echo "Switched to Flutter version 3.3.10"
fi
# Enable linux desktop # Enable linux desktop
flutter config --enable-linux-desktop flutter config --enable-linux-desktop
@ -47,9 +64,9 @@ flutter config --enable-linux-desktop
flutter doctor flutter doctor
printMessage "Installing keybinder-3.0" printMessage "Installing keybinder-3.0"
if command apt-get &> /dev/null; then if command apt-get &>/dev/null; then
sudo apt-get install keybinder-3.0-dev sudo apt-get install keybinder-3.0-dev
elif command dnf &> /dev/null; then elif command dnf &>/dev/null; then
sudo dnf install keybinder3-devel sudo dnf install keybinder3-devel
else else
echo 'Your system is not supported, please install keybinder3 manually.' echo 'Your system is not supported, please install keybinder3 manually.'
@ -59,11 +76,11 @@ fi
printMessage "Setting up githooks." printMessage "Setting up githooks."
git config core.hooksPath .githooks git config core.hooksPath .githooks
# Install go-gitlint # Install go-gitlint
printMessage "Installing go-gitlint." printMessage "Installing go-gitlint."
GOLINT_FILENAME="go-gitlint_1.1.0_linux_x86_64.tar.gz" GOLINT_FILENAME="go-gitlint_1.1.0_linux_x86_64.tar.gz"
wget https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} wget https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME}
tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint
rm ${GOLINT_FILENAME} rm ${GOLINT_FILENAME}
# Change to the frontend directory # Change to the frontend directory

View File

@ -17,8 +17,7 @@ printError() {
printf "${RED}AppFlowy : $1${ENDCOLOR}\n" printf "${RED}AppFlowy : $1${ENDCOLOR}\n"
} }
# Install Rust
# Install Rust
printMessage "The Rust programming language is required to compile AppFlowy." printMessage "The Rust programming language is required to compile AppFlowy."
printMessage "We can install it now if you don't already have it on your system." printMessage "We can install it now if you don't already have it on your system."
@ -28,7 +27,7 @@ if [[ "${installrust:-N}" == [Yy] ]]; then
printMessage "Installing Rust." printMessage "Installing Rust."
brew install rustup-init brew install rustup-init
rustup-init -y --default-toolchain=stable rustup-init -y --default-toolchain=stable
source "$HOME/.cargo/env" source "$HOME/.cargo/env"
else else
printMessage "Skipping Rust installation." printMessage "Skipping Rust installation."
@ -36,11 +35,30 @@ fi
# Install sqllite # Install sqllite
printMessage "Installing sqlLite3." printMessage "Installing sqlLite3."
brew install sqlite3 brew install sqlite3
# Enable the flutter stable channel
printMessage "Setting up Flutter" printMessage "Setting up Flutter"
flutter channel stable
# Get the current Flutter version
FLUTTER_VERSION=$(flutter --version | grep -oE 'Flutter [^ ]+' | grep -oE '[^ ]+$')
# Check if the current version is 3.3.10
if [ "$FLUTTER_VERSION" = "3.3.10" ]; then
echo "Flutter version is already 3.3.10"
else
# Get the path to the Flutter SDK
FLUTTER_PATH=$(which flutter)
FLUTTER_PATH=${FLUTTER_PATH%/bin/flutter}
current_dir=$(pwd)
cd $FLUTTER_PATH
# Use git to checkout version 3.3.10 of Flutter
git checkout 3.3.10
# Get back to current working directory
cd "$current_dir"
echo "Switched to Flutter version 3.3.10"
fi
# Enable linux desktop # Enable linux desktop
flutter config --enable-macos-desktop flutter config --enable-macos-desktop
@ -52,11 +70,11 @@ flutter doctor
printMessage "Setting up githooks." printMessage "Setting up githooks."
git config core.hooksPath .githooks git config core.hooksPath .githooks
# Install go-gitlint # Install go-gitlint
printMessage "Installing go-gitlint." printMessage "Installing go-gitlint."
GOLINT_FILENAME="go-gitlint_1.1.0_osx_x86_64.tar.gz" GOLINT_FILENAME="go-gitlint_1.1.0_osx_x86_64.tar.gz"
curl -L https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} --output ${GOLINT_FILENAME} curl -L https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} --output ${GOLINT_FILENAME}
tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint
rm ${GOLINT_FILENAME} rm ${GOLINT_FILENAME}
# Change to the frontend directory # Change to the frontend directory

View File

@ -17,7 +17,6 @@ printError() {
printf "${RED}AppFlowy : $1${ENDCOLOR}\n" printf "${RED}AppFlowy : $1${ENDCOLOR}\n"
} }
# Note: This script does not install applications which are installed by the package manager. There are too many package managers out there. # Note: This script does not install applications which are installed by the package manager. There are too many package managers out there.
# Install Rust # Install Rust
@ -46,9 +45,27 @@ else
printSuccess "Rust has been detected on your system, so Rust installation has been skipped" printSuccess "Rust has been detected on your system, so Rust installation has been skipped"
fi fi
# Enable the flutter stable channel
printMessage "Setting up Flutter" printMessage "Setting up Flutter"
flutter channel stable # Get the current Flutter version
FLUTTER_VERSION=$(flutter --version | grep -oP 'Flutter \K\S+')
# Check if the current version is 3.3.10
if [ "$FLUTTER_VERSION" = "3.3.10" ]; then
echo "Flutter version is already 3.3.10"
else
# Get the path to the Flutter SDK
FLUTTER_PATH=$(which flutter)
FLUTTER_PATH=${FLUTTER_PATH%/bin/flutter}
current_dir=$(pwd)
cd $FLUTTER_PATH
# Use git to checkout version 3.3.10 of Flutter
git checkout 3.3.10
# Get back to current working directory
cd "$current_dir"
echo "Switched to Flutter version 3.3.10"
fi
# Add pub cache and cargo to PATH # Add pub cache and cargo to PATH
powershell '[Environment]::SetEnvironmentVariable("PATH", $Env:PATH + ";" + $Env:LOCALAPPDATA + "\Pub\Cache\Bin", [EnvironmentVariableTarget]::User)' powershell '[Environment]::SetEnvironmentVariable("PATH", $Env:PATH + ";" + $Env:LOCALAPPDATA + "\Pub\Cache\Bin", [EnvironmentVariableTarget]::User)'
@ -64,14 +81,14 @@ flutter doctor
printMessage "Setting up githooks." printMessage "Setting up githooks."
git config core.hooksPath .githooks git config core.hooksPath .githooks
# Install go-gitlint # Install go-gitlint
printMessage "Installing go-gitlint." printMessage "Installing go-gitlint."
GOLINT_FILENAME="go-gitlint_1.1.0_windows_x86_64.tar.gz" GOLINT_FILENAME="go-gitlint_1.1.0_windows_x86_64.tar.gz"
if curl --proto '=https' --tlsv1.2 -sSfL https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} -o ${GOLINT_FILENAME}; then if curl --proto '=https' --tlsv1.2 -sSfL https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} -o ${GOLINT_FILENAME}; then
tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint.exe tar -zxv --directory .githooks/. -f ${GOLINT_FILENAME} gitlint.exe
rm ${GOLINT_FILENAME} rm ${GOLINT_FILENAME}
else else
printError "Failed to install go-gitlint" printError "Failed to install go-gitlint"
fi fi
# Change to the frontend directory # Change to the frontend directory