diff --git a/.env b/.env index 1d4a8027e..38131931d 100644 --- a/.env +++ b/.env @@ -1,3 +1,4 @@ +ENVIRONMENT = 'staging' CHOREO_API = 'https://api.staging.pangea.chat' FRONTEND_URL='https://app.staging.pangea.chat' SYNAPSE_URL = 'matrix.staging.pangea.chat' diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 81e3deb36..f43af7b4b 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,2 @@ * @krille-chan -assets/l10n/*.arb @weblate \ No newline at end of file +lib/l10n/*.arb @weblate \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/issue_pr_management.yml b/.github/ISSUE_TEMPLATE/issue_pr_management.yml new file mode 100644 index 000000000..3a7509236 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/issue_pr_management.yml @@ -0,0 +1,27 @@ +name: Close Inactive Issues And PRs +on: + schedule: + - cron: "30 1 * * *" + +jobs: + close-issues: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + - uses: actions/stale@v9 + with: + days-before-issue-stale: 365 + days-before-issue-close: 14 + stale-issue-label: "stale" + stale-issue-message: "This issue is stale because it has been open for 365 days with no activity." + close-issue-message: "This issue was closed because it has been inactive for 14 days since being marked as stale." + stale-pr-message: "This pull request is stale because it has been open for 365 days with no activity." + close-pr-message: "This pull request was closed because it has been inactive for 14 days since being marked as stale." + days-before-pr-stale: 365 + days-before-pr-close: 14 + exempt-milestones: true + exempt-assignees: krille-chan + operations-per-run: 500 + repo-token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 2b993ea05..7e75afa95 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,20 +1,22 @@ -version: 2 -updates: - - package-ecosystem: "pub" - directory: "/" - schedule: - interval: "daily" - allow: - - dependency-name: "*" - commit-message: - prefix: "build: " - include: "scope" - - package-ecosystem: "github-actions" - directory: "/" - schedule: - interval: "daily" - allow: - - dependency-name: "*" - commit-message: - prefix: "build: " - include: "scope" +# #Pangea +# version: 2 +# updates: +# - package-ecosystem: "pub" +# directory: "/" +# schedule: +# interval: "daily" +# allow: +# - dependency-name: "*" +# commit-message: +# prefix: "build: " +# include: "scope" +# - package-ecosystem: "github-actions" +# directory: "/" +# schedule: +# interval: "daily" +# allow: +# - dependency-name: "*" +# commit-message: +# prefix: "build: " +# include: "scope" +# Pangea# diff --git a/.github/workflows/auto_pull_request.yaml b/.github/workflows/auto_pull_request.yaml deleted file mode 100644 index cf6bb228c..000000000 --- a/.github/workflows/auto_pull_request.yaml +++ /dev/null @@ -1,41 +0,0 @@ -name: Auto Pull Request - -#on: -# schedule: -# - cron: '0 0 * * 0' # Run at midnight (00:00) every Sunday - -on: - push: - branches: - - auto-pr # Change this to match your main branch name - -jobs: - auto_pull_request: - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: Test - run: echo ${{ github.head_ref }}.${{ github.sha }} - - - name: Pull changes from FluffyChat - run: | - git config --global user.email "${{ vars.CI_EMAIL }}" - git config --global user.name "${{ vars.CI_USERNAME }}" - git remote add fluffychat https://github.com/krille-chan/fluffychat - git fetch fluffychat main - git merge --no-edit fluffychat/main --allow-unrelated-histories - - - name: Push changes - run: | - git push origin HEAD:main-update-fluffy-automatic - - - name: Create Pull Request - uses: peter-evans/create-pull-request@v3 - with: - token: ${{ secrets.GH_TOKEN }} - title: Updated fork with new fluffy changes - body: | - This is an automatic PR created by GitHub Actions. - branch: main diff --git a/.github/workflows/build-ios.yml b/.github/workflows/build-ios.yml deleted file mode 100644 index aa7a13d70..000000000 --- a/.github/workflows/build-ios.yml +++ /dev/null @@ -1,79 +0,0 @@ -name: build-ios -on: - workflow_call: - inputs: - screenshot: - type: string - required: true - ipa: - description: 'Run IPA build' - type: string - required: true - workflow_dispatch: - inputs: - screenshot: - description: 'Run screenshot build' - type: choice - options: ['true', 'false'] - required: true - ipa: - description: 'Run IPA build' - type: choice - options: ['true', 'false'] - required: true - - -jobs: - build-ios: - runs-on: macos-latest - timeout-minutes: 20 - defaults: - run: - working-directory: ios - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - run: 'echo "$API_KEY" | base64 --decode > AuthKey.p8' - shell: bash - env: - API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }} - - - run: bundle install - - - run: bundle exec fastlane versioning - - - name: Flutter - uses: subosito/flutter-action@v2 - with: - cache: true - cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' - cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" - - run: flutter build ios --simulator --target=integration_test/screenshot_test.dart - if: ${{ inputs.screenshot == 'true' }} - - - name: Archive integration ipa - if: ${{ inputs.screenshot == 'true' }} - uses: actions/upload-artifact@v4 - with: - name: app-simulator-build - path: build/ios/iphonesimulator/Runner.app - if-no-files-found: error - retention-days: 3 - - # Build ios Release - - run: flutter build ios --release --config-only --no-codesign --target=lib/main.dart - if: ${{ inputs.ipa == 'true' }} - - - run: bundle exec fastlane build - if: ${{ inputs.ipa == 'true' }} - - - name: Archive ipa - if: ${{ inputs.ipa == 'true' }} - uses: actions/upload-artifact@v4 - with: - name: Runner.ipa - path: ios/Runner.ipa - if-no-files-found: error - retention-days: 3 \ No newline at end of file diff --git a/.github/workflows/check_duplicates.yaml b/.github/workflows/check_duplicates.yaml new file mode 100644 index 000000000..0f37d621c --- /dev/null +++ b/.github/workflows/check_duplicates.yaml @@ -0,0 +1,30 @@ +# #Pangea +# name: Check duplicates + +# on: +# issues: +# types: [opened] + +# jobs: +# check_duplicates: +# runs-on: ubuntu-latest +# env: +# title: ${{ github.event.issue.title }} +# author: ${{ github.event.issue.user.login }} +# number: ${{ github.event.issue.number }} +# GH_TOKEN: ${{ github.token }} +# steps: +# - uses: actions/checkout@v4 +# - name: Check duplicates +# run: | +# issues=$(gh issue list --search '${{ env.title }}' --json number,title,url) +# number=${{ env.number }} +# issues_filtered=$(echo "$issues" | jq --arg num "$number" 'map(select(.number != ($num | tonumber)))') +# if [ "$(echo "$issues_filtered" | jq length)" -eq 0 ]; then +# echo "No duplicates found." +# else +# issues_markdown=$(echo "$issues_filtered" | jq -r '.[] | "- [" + .title + "](" + .url + ")"') +# formatted_body=$(echo -e "@${{ env.author }}\nPossible duplication of:\n$issues_markdown") +# gh issue comment ${{ github.event.issue.number }} --body "$formatted_body" +# fi +# Pangea# \ No newline at end of file diff --git a/.github/workflows/dart_format.yaml b/.github/workflows/dart_format.yaml deleted file mode 100644 index 167415801..000000000 --- a/.github/workflows/dart_format.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Dart Code Formatter - -on: - pull_request: - push: - branches: main - -jobs: - format: - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - with: - ref: ${{ github.head_ref }} - - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.FLUTTER_VERSION }} - cache: true - - - name: Auto-format Dart code - run: | - dart format lib/ test/ - dart run import_sorter:main --no-comments - if ! git diff --exit-code; then - git config user.name "github-actions[bot]" - git config user.email "41898282+github-actions[bot]@users.noreply.github.com" - git add . - git commit -m "generated" - git push - fi - - - name: Check for unformatted files - if: ${{ failure() }} - run: | - echo "Code was formatted. Please verify the changes in the PR." diff --git a/.github/workflows/integrate.yaml b/.github/workflows/integrate.yaml index c4307fadf..dc4df96cf 100644 --- a/.github/workflows/integrate.yaml +++ b/.github/workflows/integrate.yaml @@ -1,107 +1,105 @@ -name: Pull Request Workflow +# #Pangea +# name: Pull Request Workflow -on: - pull_request: - merge_group: +# on: +# pull_request: +# merge_group: -jobs: - code_tests: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - run: ./scripts/generate-locale-config.sh - - run: git diff --exit-code - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.FLUTTER_VERSION }} - cache: true - - run: flutter pub get - - run: flutter gen-l10n - - name: Check formatting - run: dart format lib/ test/ --set-exit-if-changed - - name: Check import formatting - run: dart run import_sorter:main --no-comments --exit-if-changed - - name: Check license compliance - run: dart run license_checker check-licenses -c licenses.yaml --problematic - - run: flutter analyze - # #Pangea - Commented out the following lines, we already have fcm enabled by default - # - name: Apply google services patch - # run: git apply ./scripts/enable-android-google-services.patch - # Pangea# - - run: flutter analyze - - run: flutter test +# jobs: +# code_tests: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v4 +# - run: ./scripts/generate-locale-config.sh +# - run: git diff --exit-code +# - run: cat .github/workflows/versions.env >> $GITHUB_ENV +# - uses: subosito/flutter-action@v2 +# with: +# flutter-version: ${{ env.FLUTTER_VERSION }} +# cache: true +# - run: flutter pub get +# - run: flutter gen-l10n +# - name: Check formatting +# run: dart format lib/ test/ --set-exit-if-changed +# - name: Check import formatting +# run: dart run import_sorter:main --no-comments --exit-if-changed +# - name: Check license compliance +# run: dart run license_checker check-licenses -c licenses.yaml --problematic +# - run: flutter analyze +# - name: Apply google services patch +# run: git apply ./scripts/enable-android-google-services.patch +# - run: flutter analyze +# - run: flutter test - build_apk: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - uses: actions/setup-java@v4 - with: - java-version: ${{ env.JAVA_VERSION }} - distribution: "zulu" - - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.FLUTTER_VERSION }} - cache: false - - run: flutter pub get - - name: Free Disk Space (Ubuntu) - uses: jlumbroso/free-disk-space@main - with: - # this might remove tools that are actually needed, - # if set to "true" but frees about 6 GB - tool-cache: false - android: false - - run: flutter build apk --debug +# build_apk: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v4 +# - run: cat .github/workflows/versions.env >> $GITHUB_ENV +# - uses: actions/setup-java@v4 +# with: +# java-version: ${{ env.JAVA_VERSION }} +# distribution: "zulu" +# - uses: subosito/flutter-action@v2 +# with: +# flutter-version: ${{ env.FLUTTER_VERSION }} +# cache: false +# - run: flutter pub get +# - name: Free Disk Space (Ubuntu) +# uses: jlumbroso/free-disk-space@main +# with: +# # this might remove tools that are actually needed, +# # if set to "true" but frees about 6 GB +# tool-cache: false +# android: false +# - run: flutter build apk --debug - build_web: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.FLUTTER_VERSION }} - cache: false - - run: flutter pub get - - name: Prepare web - run: ./scripts/prepare-web.sh - - run: flutter build web +# build_web: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v4 +# - run: cat .github/workflows/versions.env >> $GITHUB_ENV +# - uses: subosito/flutter-action@v2 +# with: +# flutter-version: ${{ env.FLUTTER_VERSION }} +# cache: false +# - run: flutter pub get +# - name: Prepare web +# run: ./scripts/prepare-web.sh +# - run: flutter build web - # #Pangea - # commented out because we do not build Pangea Chat to linux - # build_debug_linux: - # strategy: - # matrix: - # arch: [ x64, arm64 ] - # runs-on: ${{ matrix.arch == 'arm64' && 'self-hosted' || 'ubuntu-latest'}} - # steps: - # - uses: actions/checkout@v4 - # - run: cat .github/workflows/versions.env >> $GITHUB_ENV - # - name: Install dependencies - # run: sudo apt-get update && sudo apt-get install git wget curl clang cmake ninja-build pkg-config libgtk-3-dev libblkid-dev liblzma-dev libjsoncpp-dev cmake-data libsecret-1-dev libsecret-1-0 librhash0 libssl-dev libwebkit2gtk-4.1-dev -y - # - name: Install Flutter - # run: | - # git clone --branch ${{ env.FLUTTER_VERSION }} https://github.com/flutter/flutter.git - # ./flutter/bin/flutter doctor - # - run: ./flutter/bin/flutter pub get - # - run: ./flutter/bin/flutter build linux --target-platform linux-${{ matrix.arch }} - # Pangea# +# commented out because we do not build Pangea Chat to linux +# build_debug_linux: +# strategy: +# matrix: +# arch: [ x64, arm64 ] +# runs-on: ${{ matrix.arch == 'arm64' && 'self-hosted' || 'ubuntu-latest'}} +# steps: +# - uses: actions/checkout@v4 +# - run: cat .github/workflows/versions.env >> $GITHUB_ENV +# - name: Install dependencies +# run: sudo apt-get update && sudo apt-get install git wget curl clang cmake ninja-build pkg-config libgtk-3-dev libblkid-dev liblzma-dev libjsoncpp-dev cmake-data libsecret-1-dev libsecret-1-0 librhash0 libssl-dev libwebkit2gtk-4.1-dev -y +# - name: Install Flutter +# run: | +# git clone --branch ${{ env.FLUTTER_VERSION }} https://github.com/flutter/flutter.git +# ./flutter/bin/flutter doctor +# - run: ./flutter/bin/flutter pub get +# - run: ./flutter/bin/flutter build linux --target-platform linux-${{ matrix.arch }} - build_debug_ios: - runs-on: macos-15 - steps: - - uses: actions/checkout@v4 - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.FLUTTER_VERSION }} - cache: true - - name: Setup Xcode version - uses: maxim-lobanov/setup-xcode@v1.6.0 - with: - xcode-version: latest - - run: brew install sqlcipher - - run: flutter pub get - - run: flutter build ipa --no-codesign +# build_debug_ios: +# runs-on: macos-15 +# steps: +# - uses: actions/checkout@v4 +# - run: cat .github/workflows/versions.env >> $GITHUB_ENV +# - uses: subosito/flutter-action@v2 +# with: +# flutter-version: ${{ env.FLUTTER_VERSION }} +# cache: true +# - name: Setup Xcode version +# uses: maxim-lobanov/setup-xcode@v1.6.0 +# with: +# xcode-version: latest +# - run: brew install sqlcipher +# - run: flutter pub get +# - run: flutter build ipa --no-codesign +# Pangea# diff --git a/.github/workflows/issue_closed.yaml b/.github/workflows/issue_closed.yaml index c4daabf65..5e32442f7 100644 --- a/.github/workflows/issue_closed.yaml +++ b/.github/workflows/issue_closed.yaml @@ -17,3 +17,33 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_REPO: ${{ github.repository }} NUMBER: ${{ github.event.issue.number }} + - name: Set project ID + run: | + echo "PROJECT_ID=PVT_kwDOBndSo84A7FWL" >> $GITHUB_ENV + - name: Get item ID for issue in project + id: get_item_id + run: | + ITEM_ID=$(gh api graphql -f query='query { repository(owner: "${{ github.repository_owner }}", name: "${{ github.event.repository.name }}") { issue(number: ${{ github.event.issue.number }}) { projectItems(first: 10) { nodes { id project { id } } } } }' --jq '.data.repository.issue.projectItems.nodes[] | select(.project.id==env.PROJECT_ID) | .id') + echo "ITEM_ID=$ITEM_ID" >> $GITHUB_ENV + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Get status field and Done option IDs + id: get_status_ids + run: | + STATUS_FIELD_ID=$(gh api graphql -f query='query { node(id: "'$PROJECT_ID'") { ... on ProjectV2 { fields(first: 20) { nodes { id name } } } } }' --jq '.data.node.fields.nodes[] | select(.name=="Status") | .id') + DONE_OPTION_ID=$(gh api graphql -f query='query { node(id: "'$STATUS_FIELD_ID'") { ... on ProjectV2Field { options { id name } } } }' --jq '.data.node.options[] | select(.name=="Done") | .id') + echo "STATUS_FIELD_ID=$STATUS_FIELD_ID" >> $GITHUB_ENV + echo "DONE_OPTION_ID=$DONE_OPTION_ID" >> $GITHUB_ENV + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Set status to Done in project + run: | + gh api graphql -f query='mutation($project:ID!, $item:ID!, $field:ID!, $option:ID!) { updateProjectV2ItemFieldValue(input: {projectId: $project, itemId: $item, fieldId: $field, value: { singleSelectOptionId: $option } }) { projectV2Item { id } } }' -f project=$PROJECT_ID -f item=$ITEM_ID -f field=$STATUS_FIELD_ID -f option=$DONE_OPTION_ID + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + PROJECT_ID: ${{ env.PROJECT_ID }} + ITEM_ID: ${{ env.ITEM_ID }} + STATUS_FIELD_ID: ${{ env.STATUS_FIELD_ID }} + DONE_OPTION_ID: ${{ env.DONE_OPTION_ID }} +# To get your project, field, and option IDs, see the instructions in the new issue_opened_project.yaml file. +# You must replace the placeholders with your actual project and field IDs. diff --git a/.github/workflows/issue_opened_project.yaml b/.github/workflows/issue_opened_project.yaml new file mode 100644 index 000000000..6a4e6c137 --- /dev/null +++ b/.github/workflows/issue_opened_project.yaml @@ -0,0 +1,20 @@ +# Auto-add new issues to a GitHub project (replace PROJECT_ID and COLUMN_ID with your values) +name: Add new issues to project +on: + issues: + types: + - opened +jobs: + add_to_project: + runs-on: ubuntu-latest + steps: + - name: Set project ID + run: | + echo "PROJECT_ID=PVT_kwDOBndSo84A7FWL" >> $GITHUB_ENV + - name: Add issue to project + run: | + gh api graphql -f query='mutation($project:ID!, $contentId:ID!) { addProjectV2ItemById(input: {projectId: $project, contentId: $contentId}) { item { id } } }' -f project=$PROJECT_ID -f contentId=$ISSUE_ID + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ISSUE_ID: ${{ github.event.issue.node_id }} +# To get your project ID, use: gh api graphql -f query='query { organization(login: "") { projectV2(number: ) { id } } }' diff --git a/.github/workflows/main_deploy.yaml b/.github/workflows/main_deploy.yaml index 5a45229c2..51dfaa1fe 100644 --- a/.github/workflows/main_deploy.yaml +++ b/.github/workflows/main_deploy.yaml @@ -8,7 +8,8 @@ on: env: WEB_APP_ENV: ${{ vars.WEB_APP_ENV }} - + ENV_OVERRIDES: ${{ vars.ENV_OVERRIDES }} + jobs: build_web: runs-on: ubuntu-latest @@ -19,10 +20,6 @@ jobs: - uses: subosito/flutter-action@v2 with: flutter-version: ${{ env.FLUTTER_VERSION }} - - name: Remove Emoji Font - run: | - rm -rf fonts/NotoEmoji - yq -i 'del( .flutter.fonts[] | select(.family == "NotoEmoji") )' pubspec.yaml - run: flutter pub get - name: Prepare web run: ./scripts/prepare-web.sh @@ -51,6 +48,13 @@ jobs: touch public/.env echo "$WEB_APP_ENV" >> public/.env cp public/.env public/assets/.env + touch public/assets/envs.json + echo "$ENV_OVERRIDES" >> public/assets/envs.json + mkdir -p public/.well-known + curl https://app.pangea.chat/.well-known/apple-app-site-association \ + -o public/.well-known/apple-app-site-association + curl https://app.pangea.chat/.well-known/assetlinks.json \ + -o public/.well-known/assetlinks.json - name: Deploy to GitHub Pages uses: peaceiris/actions-gh-pages@v4 with: @@ -82,4 +86,4 @@ jobs: - name: Update packages run: flutter pub get - name: Update sentry - run: flutter packages pub run sentry_dart_plugin \ No newline at end of file + run: flutter packages pub run sentry_dart_plugin diff --git a/.github/workflows/manual.yml b/.github/workflows/manual.yml index 3ced2468a..e9d809e60 100644 --- a/.github/workflows/manual.yml +++ b/.github/workflows/manual.yml @@ -20,6 +20,7 @@ jobs: name: ${{ inputs.environment }} env: WEB_APP_ENV: ${{ vars.WEB_APP_ENV }} + ENV_OVERRIDES: ${{ vars.ENV_OVERRIDES }} runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -45,6 +46,8 @@ jobs: rm assets/.env echo "$WEB_APP_ENV" >> .env cp .env assets/.env + touch assets/envs.json + echo "$ENV_OVERRIDES" >> assets/envs.json - name: Apply .env patch run: git apply ./scripts/enable_mobile_env.patch - name: Install Fastlane @@ -74,13 +77,4 @@ jobs: bundle install bundle update fastlane bundle exec fastlane deploy_internal_test - cd .. - - deploy_ios_testflight: # stashed on old.yml - environment: - name: ${{ inputs.environment }} - env: - WEB_APP_ENV: ${{ vars.WEB_APP_ENV }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 \ No newline at end of file + cd .. \ No newline at end of file diff --git a/.github/workflows/old.yml b/.github/workflows/old.yml deleted file mode 100644 index 62d57416b..000000000 --- a/.github/workflows/old.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Old Release Workflow - -on: - push: - branches: - - master-unused - -concurrency: - group: release_workflow - cancel-in-progress: true - -jobs: - deploy_ios_internal: - runs-on: macos-latest - environment: staging - steps: - - uses: actions/checkout@v4 - - run: cat ../.github/workflows/versions.env >> $GITHUB_ENV - - - name: Flutter - uses: subosito/flutter-action@v2 - with: - cache: true - cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' - cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:" - - # Build ios Release - - run: flutter build ios --release --config-only --no-codesign --target=lib/main.dart - - - name: Deploy ios - run: | - mkdir -p build/ios - cp build/app/outputs/bundle/release/app-release.aab build/ios/ - cd ios - bundle install - bundle update fastlane - cd .. - - name: Execute fastlane signing - env: - APP_STORE_CONNECT_API_KEY_ISSUER_ID: ${{ secrets.APP_STORE_CONNECT_API_KEY_ISSUER_ID }} - APP_STORE_CONNECT_API_KEY_KEY_ID: ${{ secrets.APP_STORE_CONNECT_API_KEY_KEY_ID }} - APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64: ${{ secrets.APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64 }} - APP_STORE_CONNECT_API_KEY_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY_KEY }} - run: bundle exec fastlane ios beta \ No newline at end of file diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 02daf3233..51705779a 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -48,10 +48,6 @@ jobs: cache: true - name: Install dependencies run: sudo apt-get update && sudo apt-get install nodejs -y - - name: Remove Emoji Font - run: | - rm -rf fonts/NotoEmoji - yq -i 'del( .flutter.fonts[] | select(.family == "NotoEmoji") )' pubspec.yaml - run: flutter pub get - name: Prepare web run: ./scripts/prepare-web.sh @@ -146,36 +142,39 @@ jobs: asset_path: build/app/outputs/flutter-apk/app-release.apk asset_name: pangeachat.apk asset_content_type: application/vnd.android.package-archive - build_linux: - strategy: - matrix: - arch: [ x64 ] - runs-on: ubuntu-latest - needs: create_release - steps: - - uses: actions/checkout@v4 - - run: cat .github/workflows/versions.env >> $GITHUB_ENV - - name: Install dependencies - run: sudo apt-get update && sudo apt-get install curl clang cmake ninja-build pkg-config libgtk-3-dev libblkid-dev liblzma-dev libjsoncpp-dev cmake-data libsecret-1-dev libsecret-1-0 librhash0 libssl-dev libwebkit2gtk-4.1-dev -y - - name: Install dependencies for audio-player - run: sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev - - name: Install Flutter - run: | - git clone --branch ${{ env.FLUTTER_VERSION }} https://github.com/flutter/flutter.git - ./flutter/bin/flutter doctor - - run: ./flutter/bin/flutter pub get - - run: ./flutter/bin/flutter build linux --target-platform linux-${{ matrix.arch }} - - name: Create archive - run: tar -czf pangeachat-linux-${{ matrix.arch }}.tar.gz -C build/linux/${{ matrix.arch }}/release/bundle/ . - - name: Upload to release - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.PAGES_DEPLOY_TOKEN }} - with: - upload_url: ${{ needs.create_release.outputs.upload_url }} - asset_path: pangeachat-linux-${{ matrix.arch }}.tar.gz - asset_name: pangeachat-linux-${{ matrix.arch }}.tar.gz - asset_content_type: application/gzip + + # #Pangea + # build_linux: + # strategy: + # matrix: + # arch: [ x64 ] + # runs-on: ubuntu-latest + # needs: create_release + # steps: + # - uses: actions/checkout@v4 + # - run: cat .github/workflows/versions.env >> $GITHUB_ENV + # - name: Install dependencies + # run: sudo apt-get update && sudo apt-get install curl clang cmake ninja-build pkg-config libgtk-3-dev libblkid-dev liblzma-dev libjsoncpp-dev cmake-data libsecret-1-dev libsecret-1-0 librhash0 libssl-dev libwebkit2gtk-4.1-dev -y + # - name: Install dependencies for audio-player + # run: sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev + # - name: Install Flutter + # run: | + # git clone --branch ${{ env.FLUTTER_VERSION }} https://github.com/flutter/flutter.git + # ./flutter/bin/flutter doctor + # - run: ./flutter/bin/flutter pub get + # - run: ./flutter/bin/flutter build linux --target-platform linux-${{ matrix.arch }} + # - name: Create archive + # run: tar -czf pangeachat-linux-${{ matrix.arch }}.tar.gz -C build/linux/${{ matrix.arch }}/release/bundle/ . + # - name: Upload to release + # uses: actions/upload-release-asset@v1 + # env: + # GITHUB_TOKEN: ${{ secrets.PAGES_DEPLOY_TOKEN }} + # with: + # upload_url: ${{ needs.create_release.outputs.upload_url }} + # asset_path: pangeachat-linux-${{ matrix.arch }}.tar.gz + # asset_name: pangeachat-linux-${{ matrix.arch }}.tar.gz + # asset_content_type: application/gzip + # Pangea# deploy_web: runs-on: ubuntu-latest diff --git a/.github/workflows/upload-release-ios.yml b/.github/workflows/upload-release-ios.yml deleted file mode 100644 index aa70cd9ca..000000000 --- a/.github/workflows/upload-release-ios.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: upload-release-ios -on: - workflow_call: - inputs: - new_release: - required: true - type: string - description: "The new release version number" - new_release_notes: - required: true - type: string - description: "The release notes for the new release" - -jobs: - build: - runs-on: macos-latest - timeout-minutes: 10 - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Download app - uses: actions/download-artifact@v4 - with: - name: Runner.ipa - path: ios/ - - - run: 'echo "$API_KEY" | base64 --decode > AuthKey.p8' - shell: bash - env: - API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }} - - - run: bundle install - - - run: bundle exec fastlane upload_testflight - env: - RELEASE_NOTES: ${{ inputs.new_release_notes }} - - run: bundle exec fastlane upload_metadata_app_store \ No newline at end of file diff --git a/.github/workflows/versions.env b/.github/workflows/versions.env index 16765a3a5..1d646f732 100644 --- a/.github/workflows/versions.env +++ b/.github/workflows/versions.env @@ -1,2 +1,2 @@ -FLUTTER_VERSION=3.27.4 +FLUTTER_VERSION=3.32.1 JAVA_VERSION=17 diff --git a/.gitignore b/.gitignore index fb99f07cd..0d790d509 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ keys.json !/public/.env *.env.local_choreo *.env.prod +envs.json # libolm package /assets/js/package @@ -61,7 +62,7 @@ docs/tailwind.css android/key.jks android/keys.json android/Gemfile.lock -lib/l10n_old +lib/l10n/*.dart ios/Flutter/.last_build_id ios/Podfile.lock ios/Runner.ipa diff --git a/CHANGELOG.md b/CHANGELOG.md index 2cbc85fd0..8cda73ec3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,169 @@ +## v1.27.0 +- feat: Add confirmation dialog before accepting invite (krille-chan) +- feat: Add feature flag for refresh tokens (Christian Kußowski) +- feat: add setting for whether to show space navigation rail on mobile (ggurdin) +- feat: Background audio player (Christian Kußowski) +- feat: Check markdown checkboxes in messages (krille-chan) +- feat: Create lists with checkboxes via + menu (krille-chan) +- feat: Limit height of text messages and expand if selected (krille-chan) +- feat: Move videoplayer into multi image viewer (Christian Kußowski) +- feat: Show all supported image-/video-files when sending images or videos (MoonlightWave-12) +- feat: Show WebM-videos when choosing video-files for sending (MoonlightWave-12) +- fix: Add missing mounted check to mxcImage (Christian Kußowski) +- fix: App crash on page navigation with open popup menu (Christian Kußowski) +- fix: App crashes on window resize in chat (krille-chan) +- fix: Change `PNGs` to `PNG` for consistency in file-selector (MoonlightWave-12) +- fix: Crash when going to settings in desktop mode (krille-chan) +- Fix: Fix jagged avatar edges Use anti-alias Clipping allowing for round Avatar circles (martin) +- fix: Join new room after room upgrade (krille-chan) +- fix: Keep state of text input dialogs (Christian Kußowski) +- fix: Localizations (krille-chan) +- fix: No crash on logging out in client chooser button (Christian Kußowski) +- fix: Show WebP-images with a file-extension written in lower-case (MoonlightWave-12) +- build: Update matrix dart sdk 0.40.2 (Christian Kußowski) +- build: Update record package (Christian Kußowski) +- build: Update shared preferences android (krille-chan) +- build: Upgrade to flutter 3.32.1 (Christian Kußowski) +- build: Use workaround for flutter secure storage on linux (krille-chan) +- chore: Crop shortcut file on android and cache it (krille-chan) +- chore: Display loading dialog when preparing voice message (Christian Kußowski) +- chore: Format lib/utils/file_selector.dart (MoonlightWave-12) +- chore: Let users decide for the title in error reporter (Christian Kußowski) +- chore: make space nav bar narrower on mobile and ensure space nav bar matches user's theme (ggurdin) +- chore: Nicer checkboxes (Christian Kußowski) +- chore: Preload server file config before upload files (Christian Kußowski) +- chore: Remove custom errorwidgetbuilder (Christian Kußowski) +- chore: Remove unused translations (Christian Kußowski) +- chore: Simplify voiceMessage getter (Christian Kußowski) +- chore: Update voice message localization (Christian Kußowski) +- refactor: Always use HtmlMessage (krille-chan) +- refactor: Reduce notification avatar size to 128 (krille-chan) +- Added translation using Weblate (Cantonese (Traditional Han script)) (Mike Evans) +- Added translation using Weblate (Danish) (Øjvind Fritjof Arnfred) +- Added translation using Weblate (Yue (yue_HK)) (Mike Evans) +- Translated using Weblate (Arabic) (abdelbasset jabrane) +- Translated using Weblate (Basque) (xabirequejo) +- Translated using Weblate (Cantonese (Traditional Han script)) (Mike Evans) +- Translated using Weblate (Catalan) (Marc Pina Artigas) +- Translated using Weblate (Chinese (Simplified Han script)) (大王叫我来巡山) +- Translated using Weblate (Chinese (Simplified Han script)) (Mike Evans) +- Translated using Weblate (Chinese (Traditional Han script)) (Mike Evans) +- Translated using Weblate (Chinese (Traditional Han script)) (miullu) +- Translated using Weblate (Danish) (Øjvind Fritjof Arnfred) +- Translated using Weblate (Dutch) (Jelv) +- Translated using Weblate (Estonian) (Priit Jõerüüt) +- Translated using Weblate (Finnish) (sevonj) +- Translated using Weblate (Galician) (josé m) +- Translated using Weblate (German) (Christian) +- Translated using Weblate (German) (Jana) +- Translated using Weblate (German) (JSchmerling) +- Translated using Weblate (Hebrew) (DavidEl-Natan) +- Translated using Weblate (Hungarian) (H Tamás) +- Translated using Weblate (Indonesian) (Linerly) +- Translated using Weblate (Irish) (Aindriú Mac Giolla Eoin) +- Translated using Weblate (Italian) (Angelo Schirinzi) +- Translated using Weblate (Latvian) (ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝)) +- Translated using Weblate (Latvian) (Edgars Andersons) +- Translated using Weblate (Polish) (Piotr Orzechowski) +- Translated using Weblate (Portuguese (Brazil)) (Pedro Alves) +- Translated using Weblate (Russian) (Yurt Page) +- Translated using Weblate (Ukrainian) (Bezruchenko Simon) +- Translated using Weblate (Ukrainian) (Ihor Hordiichuk) + +## v1.26.1 + +Updates the Matrix Dart SDK to fix multiple issues where messages can be missing in the timeline. + +- feat: Reenable archive feature after various fixes landed in sdk (krille-chan) +- build: Update matrix dart sdk to 0.40.0 (Christian Kußowski) +- chore: Adjust new chat page design (krille-chan) +- chore: Display count of invited in members page (krille-chan) +- chore: Do not load timeline while sync processing (Krille) +- chore: Do not store event from push in database (Krille) +- chore: Only show joined members in members list by default (Krille) +- chore: Remove matrix notification workflow (Krille) +- fix(docs): escape tag (Sophie L) +- fix: Crash when opening settings in column mode from popup menu (krille-chan) +- refactor: Display thread messages like replies as a thread fallback (Krille) + +## v1.26.0 + +- feat: Add advanced configuration page (Krille) +- feat: clearly mark when a video is to be downloaded (Rafał Hirsch) +- feat: Filter for room members page and easier approve knocking users (Krille) +- feat: Navigate in image viewer with keyboard keys (krille-chan) +- feat: New video file picker button (Krille) +- feat: Send optional message with images or files (Krille) +- feat: support inline video playback on macOS (Rafał Hirsch) +- build: Flutter 3.29.3 (Krille) +- build: Update gorouter package (Krille) +- build: Update kotlin gradle plugin (Krille) +- build: Update matrix dart sdk (Krille) +- build: Update openssl to 0.5.0 (Krille) +- build: use singleInstance as launchmode (krille-chan) +- chore: Add matrix notifications for issues (Krille) +- chore: Better error handling for image rendering (krille-chan) +- chore: Better no compression supported UX (Krille) +- chore: Correct availability of desktop builds (Lenni) +- chore: disable echoCancel for audio messages (Krille) +- chore: divider when scrolled up (krille-chan) +- chore: Improve avatar designg (Krille) +- chore: Make push gateway configurable (Krille) +- chore: Nicer colors for reactions (krille-chan) +- chore: Nicer scaffold dialog for column mode (Krille) +- chore: Simpler changing config variables (Krille) +- chore: Update locale config for localizations (Krille) +- chore: Update pubspec.lock (Krille) +- chore: upgrade chewie and video_player packages (Rafał Hirsch) +- chore: Use Cupertino Activity Indicator in ChatEventList (krille-chan) +- chore: Use other join endpoint for room upgrades (Krille) +- fix(macos): update dependencies to make the build work (Rafał Hirsch) +- fix: Add missing \ html tag to render (Krille) +- fix: Consistent element padding between server picker and login view (xegim) +- fix: Index of numbered lists are off (Krille) +- fix: never use a transition on the shell route (Rafał Hirsch) +- fix: Null error in ClientChooserButton (krille-chan) +- fix: prevent users from creating spaces with empty names (ggurdin) +- fix: properly dispose VideoPlayerController (Rafał Hirsch) +- fix: Remove too sensitive dismiss gesture on chat list items (Krille) +- fix: Text scale factor in Linkify widgets (Krille) +- fix: update condition in account deletion function to allow deletion to go through (ggurdin) +- refactor: Easier shift enter logic for text input (Krille) +- refactor: Formatting (Krille) +- refactor: Implement avatar image viewer and adjust design (Krille) +- refactor: Improved UX for room upgrades (Krille) +- refactor: Migrate more config options to config viewer (Krille) +- refactor: Move public room bottom sheet into dialog (Krille) +- refactor: Remove custom font and emoji font workaround (krille-chan) +- refactor: Replace user bottom sheet with menu and small dialog (Krille) +- Added translation using Weblate (Telugu) (katakam chakri) +- Translated using Weblate (Basque) (xabirequejo) +- Translated using Weblate (Chinese (Simplified Han script)) (Poesty Li) +- Translated using Weblate (Chinese (Simplified Han script)) (大王叫我来巡山) +- Translated using Weblate (Chinese (Traditional Han script)) (Mare JP) +- Translated using Weblate (Chinese (Traditional Han script)) (miullu) +- Translated using Weblate (Dutch) (Jelv) +- Translated using Weblate (Estonian) (Priit Jõerüüt) +- Translated using Weblate (Filipino) (searinminecraft) +- Translated using Weblate (French) (Antonin Del Fabbro) +- Translated using Weblate (Galician) (josé m) +- Translated using Weblate (German) (nautilusx) +- Translated using Weblate (German) (Very Able) +- Translated using Weblate (Indonesian) (Linerly) +- Translated using Weblate (Irish) (Aindriú Mac Giolla Eoin) +- Translated using Weblate (Italian) (Angelo Schirinzi) +- Translated using Weblate (Korean) (kdh8219) +- Translated using Weblate (Latvian) (Edgars Andersons) +- Translated using Weblate (Latvian) (ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝)) +- Translated using Weblate (Polish) (Piotr Orzechowski) +- Translated using Weblate (Russian) (Yurt Page) +- Translated using Weblate (Spanish) (José Muñoz) +- Translated using Weblate (Spanish) (Kimby) +- Translated using Weblate (Telugu) (katakam chakri) +- Translated using Weblate (Ukrainian) (Ihor Hordiichuk) + ## v1.25.0 + - feat: Display all push rules and allow to enable disable them (Krille) - feat: Inspect and delete push rules (Krille) - feat: Pick share keys with (Krille) @@ -74,6 +239,7 @@ - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.24.0 + - build: Add missing libssl library (krille-chan) - build: Update dart_webrtc package (Krille) - build: Update matrix sdk and dependencies (Krille) @@ -118,6 +284,7 @@ - Translated using Weblate (Vietnamese) (Tewuzij) ## v1.23.0 + - design: Highlight emoji only messages (Krille) - design: New login design (Krille) - docs: fix snapstore badge on website (Krille) @@ -181,9 +348,12 @@ ## v1.22.0 -FluffyChat v1.22.0 brings a new design for spaces, replaces the bottom navigation bar with filter chips and makes it finally possible to play ogg audio messages on iOS. A lot of other fixes and improvements have also been added to this release. +FluffyChat v1.22.0 brings a new design for spaces, replaces the bottom navigation bar with filter +chips and makes it finally possible to play ogg audio messages on iOS. A lot of other fixes and +improvements have also been added to this release. -FluffyChat also now uses the new authenticated media endpoints if the server supports Matrix v1.11 or +FluffyChat also now uses the new authenticated media endpoints if the server supports Matrix v1.11 +or mentions the msc with the key `org.matrix.msc3916.stable` in the `unstable_features`. - design: Add snackbar with link to changelog on new version (Krille) @@ -259,6 +429,7 @@ mentions the msc with the key `org.matrix.msc3916.stable` in the `unstable_featu - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.21.2 + Updates the Matrix Dart SDK to fix some minor bugs. - Added translation using Weblate (Lojban) (Zig-Rust-Odin) @@ -281,6 +452,7 @@ Updates the Matrix Dart SDK to fix some minor bugs. - Translated using Weblate (Turkish) (Oğuz Ersen) ## v1.21.1 + - build: Update Matrix Dart SDK (Krille) - build: Update to Flutter 3.22.2 (krille-chan) - feat: add option to configure reply swipe direction (MrSpoony) @@ -294,7 +466,10 @@ Updates the Matrix Dart SDK to fix some minor bugs. - Translated using Weblate (Vietnamese) (Karo) ## v1.21.0 -FluffyChat v1.21.0 introduces the new search feature which also includes a gallery and files list for each chat. Several performance improvements have been added under the hood, leading to a much nicer user experience. + +FluffyChat v1.21.0 introduces the new search feature which also includes a gallery and files list +for each chat. Several performance improvements have been added under the hood, leading to a much +nicer user experience. - feat: Enable download images on iOS, not only share images (krille-chan) - feat: Search feature (krille-chan) @@ -323,7 +498,8 @@ FluffyChat v1.21.0 introduces the new search feature which also includes a galle - refactor: Delete database file on failed app start (krille-chan) - refactor: Display better command hints (Krille) - refactor: Improve performance of chat list (krille-chan) -- refactor: Precache theme and directchatmatrixid to improve performance in chat list item (krille-chan) +- refactor: Precache theme and directchatmatrixid to improve performance in chat list item ( + krille-chan) - refactor: Update to Matrix Dart SDK 0.29.9 (Krille) - Translated using Weblate (Croatian) (Milo Ivir) - Translated using Weblate (Czech) (Jozef Mlich) @@ -335,6 +511,7 @@ FluffyChat v1.21.0 introduces the new search feature which also includes a galle - Translated using Weblate (Turkish) (Oğuz Ersen) ## v1.20.0 + Design improvements and new advanced UI to manage rooms. - build: Fix google services patch (Krille) @@ -369,6 +546,7 @@ Design improvements and new advanced UI to manage rooms. - Translated using Weblate (Portuguese (Brazil)) (Rudah Ximenes Alvarenga) ## v1.19.2 + Bugfix release to mostly fix the new database encryption on Linux and update the translations. - build: (deps): bump peaceiris/actions-gh-pages from 3 to 4 (dependabot[bot]) @@ -376,7 +554,8 @@ Bugfix release to mostly fix the new database encryption on Linux and update the - build: Update emoji picker package (krille-chan) - build: Update flutter_map package (krille-chan) - docs: Fix typo in android app description (Krille) -- fix: Allow unencrypted database if gnome keyring not present or platform does not support it (krille-chan) +- fix: Allow unencrypted database if gnome keyring not present or platform does not support it ( + krille-chan) - fix: Background color of images with transparency (Krille) - fix: Localizations from weblate confused by unknownEvent locale (Krille) - fix: More logs when database fails to init and trycatch sendInitNotification (Krille) @@ -406,6 +585,7 @@ Bugfix release to mostly fix the new database encryption on Linux and update the - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.19.1 + Minor bugfix release for login with SSO on web. - feat: Show/hide third column in chat view (krille-chan) @@ -417,7 +597,9 @@ Minor bugfix release for login with SSO on web. - refactor: new flutter only typing animation (krille-chan) ## v1.19.0 -FluffyChat v1.19.0 features an improved design for message bubbles and a lot of fixes under the hood. + +FluffyChat v1.19.0 features an improved design for message bubbles and a lot of fixes under the +hood. - build: Update matrix dart sdk (Krille) - build: Update to flutter 3.19.5 (krille-chan) @@ -439,7 +621,8 @@ FluffyChat v1.19.0 features an improved design for message bubbles and a lot of - feat: Add insert content via gboard (krille-chan) - feat: Reply with one button in desktop (krille-chan) - fix: Do not sync in background mode (krille-chan) -- fix: FluffyChat should assume m.change_password capabilitiy is supported if not present per spec (krille-chan) +- fix: FluffyChat should assume m.change_password capabilitiy is supported if not present per spec ( + krille-chan) - fix: never use root navigator for bottom sheets (The one with the braid) - fix: Remove pantalaimon message with normal error message (krille-chan) - fix: Search in spaces view (krille-chan) @@ -454,6 +637,7 @@ FluffyChat v1.19.0 features an improved design for message bubbles and a lot of - Translated using Weblate (Interlingua) (Software In Interlingua) ## v1.18.0 + - feat: Add speed button for audioplayer (krille-chan) - feat: enhanced send video functionality by adding toggle send original (Mubeen Rizvi) - feat: add dialog to hide presence list with long-press (Marcus Hoffmann) @@ -492,6 +676,7 @@ FluffyChat v1.19.0 features an improved design for message bubbles and a lot of - Translated using Weblate (Ukrainian) (Сергій) ## v1.17.3 + - feat: New account data based wallpaper feature (Krille) - build: Update dependencies (Krille) - build: Update flutter to 3.16.9 (Krille) @@ -509,6 +694,7 @@ FluffyChat v1.19.0 features an improved design for message bubbles and a lot of - fix: Share invite links of public rooms (Krille) ## v1.17.2 + Another minor bugfix release which also implements private read receipts. - feat: Implement private read receipts (krille-chan) @@ -538,6 +724,7 @@ Another minor bugfix release which also implements private read receipts. - Translated using Weblate (Ukrainian) (Сергій) ## v1.17.1 + Minor bugfix release. - build: Update matrix sdk 0.25.5 (Krille) @@ -545,13 +732,17 @@ Minor bugfix release. - chore: Remove vibration on iOS for long press (Krille) - design: Better paddings in tablet mode (krille-chan) - docs: Fix typo in readme (Krille) -- Fix dependency. missing yq when invoking setup-web. also ensure updated config.json copied in (Isaac Johnson) +- Fix dependency. missing yq when invoking setup-web. also ensure updated config.json copied in ( + Isaac Johnson) - fix: text nodes with multiple links crash the timeline (Krille) - fix: URL too long when reporting bug (Krille) - fix: Wait for user device keys before start verification (Krille) ## v1.17.0 -FluffyChat v1.17.0 refreshes the overall user experience, changes some design and fixes a lot of bugs. It also replaces the stories feature with matrix presences, introduces a new kind of database to store the messages locally and improves the performance and app stability. + +FluffyChat v1.17.0 refreshes the overall user experience, changes some design and fixes a lot of +bugs. It also replaces the stories feature with matrix presences, introduces a new kind of database +to store the messages locally and improves the performance and app stability. - change: Remove wallpaper feature (krille-chan) - design: Adjust login page design (krille-chan) @@ -605,9 +796,11 @@ FluffyChat v1.17.0 refreshes the overall user experience, changes some design an - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.16.1 + Test candidate for the new database. ## v1.16.0 + - build: Set olm to 1.3.2 to fix android build (krille-chan) - build: Update dependencies (krille-chan) - build: Update flutter_olm (Krille) @@ -768,6 +961,7 @@ Test candidate for the new database. - Translated using Weblate (Vietnamese) (Sorunome) ## v1.15.1 + - feat: Make all text in chat selectable on desktop (krille-chan) - chore: Add border to images in timeline (krille-chan) - chore: added android audio sharing intent (Aryan Arora) @@ -793,6 +987,7 @@ Test candidate for the new database. - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.15.0 + - feat: Add experimental todo list for rooms (krille-chan) - feat: better scroll to last read message handling (krille-chan) - build: Add appid suffix to android debug builds (krille-chan) @@ -806,13 +1001,15 @@ Test candidate for the new database. - design: Make incoming messages color more light (krille-chan) - design: Make key verification an adaptive dialog (krille-chan) - design: Make own chat bubble primary color for better contrast (krille-chan) -- fix: Create chat dialog crashes sometimes and power level textfield does not validate input (krille-chan) +- fix: Create chat dialog crashes sometimes and power level textfield does not validate input ( + krille-chan) - fix: Remove uncompatible dependencies connectivity_plus and wakelock (Krille) - fix: Use correct localization for redactedBy (krille-chan) - fix: noFCM warning dialog (krille-chan) - fix: render tg-forward as blockquote style (krille-chan) - fix: Archive does not update its state -- refactor: Change audio codec to opus where supported to have better compatibility with Element (Krille) +- refactor: Change audio codec to opus where supported to have better compatibility with Element ( + Krille) - refactor: Make file dialog adaptive and adjust design (krille-chan) - refactor: Preload notification sound on web (Krille) - refactor: Remove unused config (krille-chan) @@ -832,10 +1029,12 @@ Test candidate for the new database. - Translated using Weblate (Thai) (Amy/Atius) ## v1.14.5 + - Hotfix iOS crashes on start - Hotfix cannot reset applock ## v1.14.4 + Minor bugfix release. Please note that because of a Flutter update FluffyChat is no longer compatible with iOS 11. @@ -851,17 +1050,24 @@ compatible with iOS 11. - refactor: Only preload client for GUI start (krille-chan) ## v1.14.3 + - hotfix app lock still displayed even when account is logged out - Update to Flutter 3.13.6 ## v1.14.2 + - hotfix for broken applock screen ## v1.14.1 + - fix: Routing bug when adding second account via password login ## v1.14.0 -Release with a lot of bugfixes and refactorings under the hood. FluffyChat now uses go_router instead of vrouter, works with the newest Flutter SDK and supports "reason" field for redactions. For Android there is a new "background-fetch mode" for Push Notifications which should make notifications in background faster and more reliable and reduce battery-usage. + +Release with a lot of bugfixes and refactorings under the hood. FluffyChat now uses go_router +instead of vrouter, works with the newest Flutter SDK and supports "reason" field for redactions. +For Android there is a new "background-fetch mode" for Push Notifications which should make +notifications in background faster and more reliable and reduce battery-usage. - feat: Background fetch mode on Android (krille-chan) - feat: Improved mouse support for selecting events (krille-chan) @@ -927,6 +1133,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - Translated using Weblate (Ukrainian) (Skrripy) ## v1.13.0 + - feat: option to not send typing notifications (Bnyro) - feat: small performance tweaks for Message (gilice) - feat: New onboarding screen with SSO as first class feature @@ -934,7 +1141,8 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - fix: Set iOS badge (Krille) - refactor: Switch the dev hosting platform from GitLab to GitHub - design: New more compact chat bubble design and other design tweaks -- design: Login now shows SSO more prominent and deprecates in-app registration in favor of SSO registration +- design: Login now shows SSO more prominent and deprecates in-app registration in favor of SSO + registration - Translated using Weblate (Arabic) (Rex_sa) - Translated using Weblate (Chinese (Simplified)) (Poesty Li) - Translated using Weblate (Estonian) (Priit Jõerüüt) @@ -943,6 +1151,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.12.0 + - Added translation using Weblate (Toki Pona) (Mæve Rey) - Translated using Weblate (Arabic) (Rex_sa) - Translated using Weblate (Chinese (Simplified)) (Eric) @@ -980,12 +1189,14 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - feat: Add toggle to mute notifications from chat groups (fbievan) - feat: Allow ruby tags in html (Krille) - feat: Display progress value for initial sync (Krille) -- feat: Implement new error reporting tool when critical features break like playing audio or video messages or opening a chat (Krille) +- feat: Implement new error reporting tool when critical features break like playing audio or video + messages or opening a chat (Krille) - feat: clean up macOS build metadata (TheOneWithTheBraid) - feat: set display information correctly (TheOneWithTheBraid) - feat: update macOS build files (TheOneWithTheBraid) - feat: update macOS build information for macOS Ventura (TheOneWithTheBraid) -- fix "Unhandled Exception: VRouter.of(context) was called with a context which does not contain a VRouter." (Lauren N. Liberda) +- fix "Unhandled Exception: VRouter.of(context) was called with a context which does not contain a + VRouter." (Lauren N. Liberda) - fix: Broken arb file (Krille) - fix: Do not unnecessary request all members in public rooms (Krille) - fix: Remove wrong rendered linebreak in html (Krille) @@ -1007,6 +1218,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - refactor: Use DateTime for weekday localization (Malin Errenst) ## v1.11.2 + - Translated using Weblate (Croatian) (Milo Ivir) - Translated using Weblate (Dutch) (Jelv) - Translated using Weblate (Estonian) (Priit Jõerüüt) @@ -1018,9 +1230,11 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - fix: Chats do not load (Krille) ## v1.11.1 - 2023-04-20 + - fix: Download files on web and iOS with correct mimetype ## v1.11.0 - 2023-04-14 + - feat: Add visual read marker (Krille) - feat: Jump to last read event (Krille) - feat: Use fragmented timeline to jump to event (Krille) @@ -1051,6 +1265,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.10.0 - 2023-02-25 + - Added translation using Weblate (Thai) (Wphaoka) - Added translation using Weblate (Tibetan) (Nathan Freitas) - Default hardcoded message when l10n is not available (fabienli) @@ -1088,7 +1303,8 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - fix: Display error when user tries to send too large file (Christian Pauly) - refactor: Do only instantiate AudioPlayer() object when in use (Christian Pauly) - refactor: Remove syncstatus verbose logs (Christian Pauly) -- refactor: Store cached files in tmp directory so OS will clear file cache from time to time (Krille) +- refactor: Store cached files in tmp directory so OS will clear file cache from time to time ( + Krille) - style: Adjust key verification dialog (Christian Pauly) - style: Bootstrap design adjustments (Christian Pauly) - style: Encryption page adjustments (Christian Pauly) @@ -1105,6 +1321,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - utils/url_launcher: force opening http(s) links in external browser (Marcus Hoffmann) ## v1.9.0 - 2023-01-29 + - Translated using Weblate (Czech) (Michal Bedáň) - Translated using Weblate (Czech) (grreby) - Translated using Weblate (Dutch) (Jelv) @@ -1143,6 +1360,7 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - style: Redesign public room bottomsheets (Krille) ## v1.8.0 2022-12-30 + - Added translation using Weblate (Yue (yue_HK)) (Raatty) - Translated using Weblate (Chinese (Simplified)) (Mike Evans) - Translated using Weblate (Estonian) (Priit Jõerüüt) @@ -1169,13 +1387,19 @@ Release with a lot of bugfixes and refactorings under the hood. FluffyChat now u - fix: minor issues in room list (TheOneWithTheBraid) ## v1.7.2 2022-12-19 + Update dependencies and translations. ## v1.7.1 2022-11-23 -Minor bugfix release to retrigger build for FlatPak and Android. Fixes some style bugs and updates some translations + +Minor bugfix release to retrigger build for FlatPak and Android. Fixes some style bugs and updates +some translations ## v1.7.0 2022-11-17 -FluffyChat 1.7.0 features a new way to work with spaces via a bottom navigation bar. A lot of work has also been done under the hood to make the app faster and more stable. The main color has slightly changed and the design got some finetuning. + +FluffyChat 1.7.0 features a new way to work with spaces via a bottom navigation bar. A lot of work +has also been done under the hood to make the app faster and more stable. The main color has +slightly changed and the design got some finetuning. - chore: Add keys to roomlist and stories header (Christian Pauly) - chore: Add unread badge to navigation rail and adjust design (Christian Pauly) @@ -1232,6 +1456,7 @@ FluffyChat 1.7.0 features a new way to work with spaces via a bottom navigation - Translated using Weblate (Ukrainian) (Raatty) ## v1.6.4 - 2022-09-08 + - Translated using Weblate (Chinese (Simplified)) (Eric) - Translated using Weblate (Estonian) (Priit Jõerüüt) - Translated using Weblate (Galician) (Xosé M) @@ -1247,6 +1472,7 @@ FluffyChat 1.7.0 features a new way to work with spaces via a bottom navigation - fix: add missing command localizations (Christian Pauly) ## v1.6.3 - 2022-08-25 + - Translated using Weblate (Chinese (Simplified)) (Eric) - Translated using Weblate (Estonian) (Priit Jõerüüt) - Translated using Weblate (Finnish) (Aminda Suomalainen) @@ -1259,6 +1485,7 @@ FluffyChat 1.7.0 features a new way to work with spaces via a bottom navigation - refactor: App widget (Christian Pauly) ## v1.6.0 - 2022-07-31 + FluffyChat 1.6.0 features a lot of bug fixes and improvements. The code base has been simplified and the drawer on the chat list page got a come-back. Some new features like the space hierarchy and session dump have been implemented. @@ -1329,6 +1556,7 @@ the space hierarchy and session dump have been implemented. - chore: remove snapping sheet (TheOneWithTheBraid) ## v1.5.0 - 2022-06-03 + - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) - feat: Better sign up UX and allow signup without password (Christian Pauly) - feat: Initial material you support (Christian Pauly) @@ -1364,6 +1592,7 @@ the space hierarchy and session dump have been implemented. - Translated using Weblate (Turkish) (Oğuz Ersen) ## v1.4.0 - 2022-04-23 + - design: Display icon for failed sent messages (Krille Fear) - design: Display own stories at first place and combine with new stories button (Krille Fear) - feat: Add "Show related DMs in spaces" settings (20kdc) @@ -1418,6 +1647,7 @@ the space hierarchy and session dump have been implemented. - refactor: New push (Krille Fear) ## v1.3.1 - 2022-03-20 + - Allow app to be moved to external storage (Marcel) - Translated using Weblate (Arabic) (Mads Louis) - Translated using Weblate (Basque) (Sorunome) @@ -1456,14 +1686,19 @@ the space hierarchy and session dump have been implemented. - refactor: Switch to just audio for playing sounds (Krille Fear) ## v1.3.0 - 2022-02-12 -FluffyChat 1.3.0 makes it possible to report offensive users to server admins (not only messages). It fixes + +FluffyChat 1.3.0 makes it possible to report offensive users to server admins (not only messages). +It fixes the video player, improves Linux desktop notifications, and the stories design. -The button to create a new story is now in the app bar of the main page so that users who don't want to use +The button to create a new story is now in the app bar of the main page so that users who don't want +to use this feature no longer have a whole list item pinned at the top of the chat list. -FluffyChat 1.3.0 is the first release with full null safe dart code. While this is a huge change under the -hood, it should improve the stability and performance of the app. It also builds now with Flutter 2.10. +FluffyChat 1.3.0 is the first release with full null safe dart code. While this is a huge change +under the +hood, it should improve the stability and performance of the app. It also builds now with Flutter +2.10. Thanks to all contributors and translators!! <3 @@ -1503,6 +1738,7 @@ Thanks to all contributors and translators!! <3 - refactor: Migrate to null safety (Krille Fear) ## v1.2.0 - 2022-01-27 + FluffyChat 1.2.0 brings a new stories feature, a lot of bug fixes and improved voice messages. @@ -1536,7 +1772,8 @@ voice messages. - followup: Improve stories (Krille Fear) - Improve website SEO tagging (Marcel) - Increase font size granularity (S1m) -- refactor: /command hints add tooltips, test for missing hints, script to generate glue code, hints for dm, create, clearcache, discardsession (Steef Hegeman) +- refactor: /command hints add tooltips, test for missing hints, script to generate glue code, hints + for dm, create, clearcache, discardsession (Steef Hegeman) - refactor: Make more files null safe (Krille Fear) - refactor: Make style settings null safe (Krille Fear) - systemNavigationBarColor ← appBar.backgroundColor (Steef Hegeman) @@ -1566,6 +1803,7 @@ voice messages. - Translated using Weblate (Ukrainian) (Ihor Hordiichuk) ## v1.1.0 - 2021-12-08 + - CI: Add candidate release pipeline (Krille Fear) - Translated using Weblate (Dutch) (Jelv) - Translated using Weblate (Estonian) (Priit Jõerüüt) @@ -1586,6 +1824,7 @@ voice messages. - refactor: Make user device list item null safe (Krille Fear) ## v1.0.0 - 2021-11-29 + - design: Chat backup dialog as a banner - design: Encrypted by design, all users valid is normal not green - design: Move video call button to menu @@ -1643,7 +1882,9 @@ voice messages. - fix: Wrong version in snap packages ## v0.42.2 - 2021-11-04 -Minor bugfix release which fixes signing up on matrix.org and make FluffyChats voice messages playable in Element. + +Minor bugfix release which fixes signing up on matrix.org and make FluffyChats voice messages +playable in Element. - feat: Nicer registration form - feat: Nicer audio message design and send duration @@ -1653,6 +1894,7 @@ Minor bugfix release which fixes signing up on matrix.org and make FluffyChats v - fix: Crash on logout ## v0.42.1 - 2021-10-26 + Minor bugfix release. - feat: Ignore users directly from bottom sheet @@ -1663,6 +1905,7 @@ Minor bugfix release. - design: Make homepicker page nicer ## v0.42.0 - 2021-10-14 + This release fixes several bugs and makes E2EE enabled by default. - feat: Enable E2EE by default for new rooms @@ -1673,17 +1916,20 @@ This release fixes several bugs and makes E2EE enabled by default. - feat: More finetuning for font sizes - chore: Updated translations (Thanks to all translators!) - fix: App crash on logout -- fix: Temporary disable sign-up for matrix.org (Currently gives "500: Internal Server Error" while FluffyChat **should** send the same requests like Element) +- fix: Temporary disable sign-up for matrix.org (Currently gives "500: Internal Server Error" while + FluffyChat **should** send the same requests like Element) - fix: Implement Roboto font to fix font issues on Linux Desktop and mobile - fix: QR Code scanning ## v0.41.3 - 2021-10-08 + Minor bugfix release. - fix: Last space is not visible - chore: Google services disabled by default for F-Droid ## v0.41.1 - 2021-09-15 + Minor bugfix release. - fix: Start up time waits for first sync @@ -1693,7 +1939,10 @@ Minor bugfix release. And some other minor bugs. ## v0.41.0 - 2021-09-14 -This release features a lot of bug fixes and the new multi account feature which also include account bundles. + +This release features a lot of bug fixes and the new multi account feature which also include +account bundles. + - feat: Multiple accounts - feat: New splash screen - fix: Password reset @@ -1705,21 +1954,28 @@ This release features a lot of bug fixes and the new multi account feature which - chore: Updated translations ## v0.40.1 - 2021-09-14 + Minor bug fixes. ## v0.40.0 - 2021-09-13 -This release contains a security fix. Red more about it here: https://matrix.org/blog/2021/09/13/vulnerability-disclosure-key-sharing + +This release contains a security fix. Red more about it +here: https://matrix.org/blog/2021/09/13/vulnerability-disclosure-key-sharing - New in-app registration - Design improvements - Minor fixes ## v0.39.0 - 2021-08-30 + - Hotfix a bug which produces problems in downloading files and playing audios - Hotfix a bug which breaks device management ## v0.39.0 - 2021-08-28 -This release fixes a bug which makes it impossible to send images in unencrypted rooms. It also implements a complete new designed new chat page which now uses a QR code based workflow to start a new chat. + +This release fixes a bug which makes it impossible to send images in unencrypted rooms. It also +implements a complete new designed new chat page which now uses a QR code based workflow to start a +new chat. - feat: Dismiss keyboard on scroll in iOS - feat: Implement QR code scanner @@ -1732,11 +1988,13 @@ This release fixes a bug which makes it impossible to send images in unencrypted - fix: Open matrix.to urls - fix: Padding and colors - fix: Sharing invite link -- fix: Unread bubbles on iOS +- fix: Unread bubbles on iOS - fix: Sending images in unencrypted rooms ## v0.38.0 - 2021-08-22 -This release adds more functionality for spaces, enhances the html viewer, adds a brand new video player and brings some improvements for voice messages. Thanks to everyone involved! + +This release adds more functionality for spaces, enhances the html viewer, adds a brand new video +player and brings some improvements for voice messages. Thanks to everyone involved! ### All changes: @@ -1761,7 +2019,8 @@ This release adds more functionality for spaces, enhances the html viewer, adds - fix: Display loading dialog on start DM - fix: Dont add/remove DMs to space - fix: Empty timelines crashing the room view -- fix: excessive CPU usage on Windows, as described in https://github.com/flutter/flutter/issues/78517#issuecomment-846436695 +- fix: excessive CPU usage on Windows, as described + in https://github.com/flutter/flutter/issues/78517#issuecomment-846436695 - fix: Joining room aliases not published into the room directory - fix: Keep display alive while recording - fix: Load space members to display DM rooms @@ -1779,22 +2038,27 @@ This release adds more functionality for spaces, enhances the html viewer, adds - fix: Wrap login form into `AutofillGroup` ## v0.37.0 - 2021-08-06 + - Implement location sharing - Updated translations - Improved spaces support - Minor bug fixes ## v0.36.2 - 2021-08-03 + Hotfix a routing problem on web and desktop ## v0.36.1 - 2021-08-03 + - Hotfix uploading to many OTKs - Implement initial spaces UI ## v0.36.0 - 2021-07-31 + Minor design improvements and bug fixes. ### All changes: + * design: Make unread listtiles more visible * design: Move pinned icon in title * feat: Rate limit streams so that large accounts have a smoother UI @@ -1807,10 +2071,13 @@ Minor design improvements and bug fixes. * fix: Tests ## v0.35.0 - 2021-07-24 + This release introduces stickers and a lot of minor bug fixes and improvements. ### All changes: + ### Feature + * Add sticker picker [205d7e8] * Also suggest username completions based on their slugs [3d980df] * Nicer mentions [99bc819] @@ -1819,6 +2086,7 @@ This release introduces stickers and a lot of minor bug fixes and improvements. * Android SSO in webview [befd8e1] ### Fixes + * Reset bootstrap on bad ssss [b78b654] * Hide stickers button when there is not sticker pack [b71dd4b] * Download files on iOS [a8201c4] @@ -1834,15 +2102,19 @@ This release introduces stickers and a lot of minor bug fixes and improvements. * Close safariviewcontroller on SSO [ba685b7] ### Refactor + * Rename store and allow storing custom values [b1c35e5] ## v0.34.1 - 2021-07-14 + Bugfix image picker on Android 11 ## v0.34.0 - 2021-07-13 + Mostly bugfixes and one new feature: Lottie file rendering. ### All changes: + * feat: Add rendering of lottie files * fix: Check for jitsi server in well-known lookup also on login screen * fix: show thumbnails in timeline on desktop @@ -1854,21 +2126,27 @@ Mostly bugfixes and one new feature: Lottie file rendering. * fix: Don't allow backup of the android app ## v0.33.3 - 2021-07-11 + Another bugfixing release to solve some problems and republish the app on iOS. ### Changes + * Redesign SSO buttons * Update dependencies * Remove moor database (no migration from here possible) * fix: Keyboard hides imagePicker buttons on iOS ## v0.33.2 - 2021-06-29 + * Fix Linux Flatpak persistent storing of data ## v0.33.0 - 2021-06-26 -Just a more minor bugfixing release with some design changes in the settings, updated missing translations and for rebuilding the arm64 Linux Flatpak. + +Just a more minor bugfixing release with some design changes in the settings, updated missing +translations and for rebuilding the arm64 Linux Flatpak. ### Features + * redesigned settings * Updated translations - thanks to all translators * display progress bar in first sync @@ -1876,23 +2154,31 @@ Just a more minor bugfixing release with some design changes in the settings, up * update some dependencies ### Fixes + * Favicon on web * Database not storing files correctly * Linux builds for arm64 * a lot of minor bugs ## v0.32.2 - 2021-06-20 + * fix: Broken hive keys ## v0.32.1 - 2021-06-17 -* fix: Hive breaks if room IDs contain emojis (yes there are users with hacked synapses out there who needs this) + +* fix: Hive breaks if room IDs contain emojis (yes there are users with hacked synapses out there + who needs this) * feat: Also migrate inbound group sessions - ## v0.32.0 - 2021-06-16 -FluffyChat 0.32.0 targets improved stability and a new onboarding flow where single sign on is now the more prominent way to get new users into the app. This release also introduces a complete rewritten database under the hood based on the key value store Hive instead of sqlite. This should improve the overall stability and the performance of the web version. + +FluffyChat 0.32.0 targets improved stability and a new onboarding flow where single sign on is now +the more prominent way to get new users into the app. This release also introduces a complete +rewritten database under the hood based on the key value store Hive instead of sqlite. This should +improve the overall stability and the performance of the web version. ### Feat + * Long-press reactions to see who sent this * New login UI * Shift+Enter makes a new line on web and desktop @@ -1902,6 +2188,7 @@ FluffyChat 0.32.0 targets improved stability and a new onboarding flow where sin * Minor design tweaks ### Fixes + * Single sign on on iOS and web * Database corruptions * Minor fixes @@ -1909,26 +2196,31 @@ FluffyChat 0.32.0 targets improved stability and a new onboarding flow where sin ## v0.31.3 - 2021-05-28 ### Fixes + * Build Linux * Multiline keyboard on web and desktop ## v0.31.2 - 2021-05-28 ### Fixes + * Setting up push was broken ## v0.31.0 - 2021-05-26 ### Chore + * Format iOS stuff [584c873] * LibOlm has been updated to 3.2.3 ### Feature + * Cute animation for hiding the + button in inputbar [37c40a2] * Improved chat bubble design and splash animations [0b3734f] * Zoom page transition on Android and Fuchsia [e6c20dd] ### Fixes + * "Pick an image" button in emote settings doesn't do anything [e6be684] * Formatting and style [2540a6c] * Emoji picker [e1bd4e1] @@ -1942,9 +2234,11 @@ FluffyChat 0.32.0 targets improved stability and a new onboarding flow where sin * Send read markers [08dd2d7] ### Docs + * Update code style [3e7269d] ### Refactor + * Structure files in more directories [ebc598a] * Rename UI to Views [e44de26] * rename UI to View and MVC login page [cc113bb] @@ -1957,40 +2251,58 @@ FluffyChat 0.32.0 targets improved stability and a new onboarding flow where sin ## v0.30.2 - 2021-05-13 ### Feature + * Implement registration with email [19616f3] ### Fixes + * Android input after sending message [4488520] ### Changes + * Switch to tchncs.de as default homeserver ### Refactor + * UIA registering [48bf116] ## v0.30.1 - 2021-05-07 ### Chore + * Update translations ### Fixes + * Record audio on iOS [cd1e9ae] ## v0.30.0 - 2021-05-01 -In this release we have mostly focused on bugfixing and stability. We have switched to the new Flutter 2 framework and have done a lot of refactoring under the hood. The annoying freezing bug should now be fixed. Voice messages now have a new backend which should improve the sound quality and stability. There is now a more professional UI for editing aliases of a room. Users can now see a list of all aliases, add new aliases, delete them and mark one alias as the canonical (or main) alias. Some minor design changes and design fixes should improve the overall UX of the app exspecially on tablets. +In this release we have mostly focused on bugfixing and stability. We have switched to the new +Flutter 2 framework and have done a lot of refactoring under the hood. The annoying freezing bug +should now be fixed. Voice messages now have a new backend which should improve the sound quality +and stability. There is now a more professional UI for editing aliases of a room. Users can now see +a list of all aliases, add new aliases, delete them and mark one alias as the canonical (or main) +alias. Some minor design changes and design fixes should improve the overall UX of the app +exspecially on tablets. -Version 0.30.0 will be the first version with arm64 support. You can download binaries from the CI and we will try to publish it on Flathub. Together with the new Linux Desktop Notifications feature, this might be interesting for the Librem 5 or the PinePhone. Sadly I don't own one of these very interesting devices. If you have one, I would very like to see some screenshots of it! :-) +Version 0.30.0 will be the first version with arm64 support. You can download binaries from the CI +and we will try to publish it on Flathub. Together with the new Linux Desktop Notifications feature, +this might be interesting for the Librem 5 or the PinePhone. Sadly I don't own one of these very +interesting devices. If you have one, I would very like to see some screenshots of it! :-) ### Chore + * Update UP and automatically re-register UP on startup [aa3348e] ### Feature + * Desktop notifications on Linux Desktop [25e76f0] * Much better alias managing [642db67] * Archive with clean up [f366ab6] ### Fixes + * Lock screen [f8ba7bd] * Freeze bug [15c3178] * UserBottomSheet [dbb0464] @@ -2005,6 +2317,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Chat UI doesnt load [4f20ea4] ### Refactor + * Remove unused variable [b9f5c94] * Remove flutter_sound [334d4c0] * Switch to record package [2cf4f47] @@ -2035,9 +2348,11 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.29.1 - 2021-04-13 ### Chore + * Bump version [215f3c8] ### Fixes + * Save file [3f854d6] * Routing broken in chat details [f1166b2] * Tests [e75a5a0] @@ -2045,6 +2360,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * nogooglewarning [7619941] ### Refactor + * MVC archive [c2cbad7] * MVC sign up password view [fa0162a] * MVC sign up view [db19b37] @@ -2053,6 +2369,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.29.0 - 2021-04-09 ### Chore + * Clean up repo [ef7ccef] * Bump version [81a4c26] * Nicer FAB icon [3eeb9a9] @@ -2061,9 +2378,11 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Remove unused dependencies [c505c50] ### Feature + * Experimental support for room upgrades [a3af5a9] ### Fixes + * Room upgrade again [1d40705] * Better padding [c79562f] * Room upgrade [dac26dd] @@ -2087,9 +2406,11 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Select room version [2f5a73f] ### Docs + * Add code style [035ad96] ### Refactor + * Move app_config to /configs [8b9f4a4] * homeserver picker view [8e828d8] * widgets dir [c9ab69a] @@ -2097,12 +2418,15 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.28.1 - 2021-03-28 ### Chore + * Update version [518634a] ### Feature + * Implement new search view design [e42dd4b] ### Fixes + * Share on iOS [ea31991] * Permission to send video call [4de6d16] * Unread badge color [49d5f86] @@ -2113,11 +2437,13 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Set status missing [17a3311] ### Refactor + * push stuff [b6eaf5b] ## v0.28.0 - 2021-03-16 ### Chore + * Bump version [f8ee682] * Change push gateway url [078aefa] * Update file picker cross dependency [91c6912] @@ -2127,12 +2453,14 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Update famedlySdk [ec64cf6] ### Feature + * Cache and resend status message [c8a7031] * New experimental design [94aa9a3] * Better verification design [9bcd6b2] * Verify and block devices in devices list [8ebacfe] ### Fixes + * substring in reply key respects unicode runes [5695342] * Resend status message [05cd699] * Remove test push [a838d90] @@ -2174,10 +2502,12 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Use single-isolate push [949771d] ### Docs + * Update readme and contributing [449e46d] * Update Turkish translation for website [4a664eb] ### Refactor + * Update SDK and enable login with email and phone [864b665] * Migrate to flutter 2 [bb97b1b] * Switch to TextButton [55803d1] @@ -2185,6 +2515,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.27.0 - 2021-02-17 ### Chore + * Switch to experimental new hedwig [30a1fb0] * update sdk & remove selfSign [26f7cb3] * Update sdk [cde8a30] @@ -2192,6 +2523,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Change push gateway port [8f36140] ### Feature + * localize bootstrap [395e62e] * Add more bootstrap features [e4db84a] * Add some tooltipps [b9eb8d1] @@ -2206,6 +2538,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Implement autofillhints [41a2457] ### Fixes + * Website [080a909] * docs _site dir [875d652] * Bootstrap dialog [c72da0a] @@ -2242,29 +2575,35 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * iOS push [c01bdf7] ### Docs + * Fix qr-codes [c7f0a74] * grammar fixes [c4d569b] ### Refactor + * Theme colors [fe13778] * border radius [ddd10d1] ## v0.26.1 - 2021-01-26 ### Chore + * Update SDK [e9df6bf] * Bump version [d79b356] * Update dependencies [6159f99] ### Feature + * Add unified push as push provider [124a5ee] ### Fixes + * Link color [16d6623] ## v0.26.0 - 2021-01-25 ### Chore + * Redesign textfields [aef8090] * Simplify bootstrap [2df4a78] * Update audio player icons [3f14d5e] @@ -2280,6 +2619,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Use correct paths on new server [2f00007] ### Feature + * emoji working on desktop [c3feb65] * Implement sso [d1d470d] * Implement app lock [77ee2ef] @@ -2287,6 +2627,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Display version number in app [e1e60c4] ### Fixes + * Dark mode fixes [36746c8] * Dark theme [0bd0e58] * clean up iOS dir [6ae59a8] @@ -2320,6 +2661,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Readme [dda0925] ### Docs + * Make howtofork.md less misunderstandable [96de54a] * Add howtofork.md [f091469] * Mention emoji font [bb53714] @@ -2327,23 +2669,28 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Update fdroid button [ea7e20b] ### Refactor + * Theme and iOS stuff [189f65a] * Upgrade to latest flutter_sound_lite [2f7dece] ## v0.25.1 - 2021-01-17 ### Chore + * Bump version [c881424] ### Fixes + * Change size [83e2385] ### Refactor + * remove deprecated approute [be08de5] ## v0.25.0 - 2021-01-16 ### Chore + * Minor design improvements [d4dbe83] * Minor design tweaks [06581e2] * Bump version [7f51f7f] @@ -2351,6 +2698,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Better authwebview [d76df0a] ### Fixes + * Share files [d018a4b] * Typing update [9b5a3ca] * Status [d27dbe0] @@ -2373,9 +2721,11 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Minor apl bugs [05b9551] ### Docs + * Update fdroid logo [31d16a0] ### Refactor + * Use APL [cbcfa15] * Use Provider [880f9cc] * Use adaptive_theme [5d52c26] @@ -2383,29 +2733,35 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.24.3 - 2021-01-15 ### Chore + * Bump version [46c8386] * Update SDK [ba0726c] * Update fdroid domain [f130681] * Update dependencies [611e5e3] ### Feature + * Add Turkish translations for website [817c7dd] * Handle matrix: URIs as per MSC2312 [1da643f] ### Fixes + * Format [84b2ac9] * Push gateway url [ed2fbf7] ## v0.24.2 - 2021-01-08 ### Chore + * Update linux version [ef9369c] * Update SDK [4a006c9] ### Feature + * Regulate when thumbnails are animated as per MSC2705 [f5e11c2] ### Fixes + * Don't allow an empty ssss passphrase in key verification [3a0ce79] * reactions [92684da] * Reply fallback sometimes being stripped incorrectly [e9ec699] @@ -2413,11 +2769,13 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Properly handle url encoding in matrix.to URLs [baccd0a] ### Refactor + * Switch to loading dialog [e84bc25] ## v0.24.1 - 2020-12-24 ### Chore + * Update linux build [a91407f] * Add website to main repo [4df33a1] * Update dependencies [0d9f418] @@ -2427,11 +2785,13 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Update SDK [e802593] ### Feature + * Better invite search bar [3c4a29b] * Open alias in discover page [f0d1f5a] * Implement logger [714c7b4] ### Fixes + * auto-dep update [d9e8c5f] * Read receipts and filtered events [0ae36f0] * Don't re-render the lock icon nearly as often [00a56a7] @@ -2450,6 +2810,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.24.0 - 2020-12-18 ### Chore + * Update dependencies [550cb4a] * Update SDK [775a33b] * Update dependencies [644433c] @@ -2458,6 +2819,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Update dependencies [5af4eab] ### Feature + * Add languages to iOS [68a5efb] * Bring back config.json [b6a0d37] * Implement emojipicker for reactions [20b3157] @@ -2473,6 +2835,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Implement rich notification settings [87a73dd] ### Fixes + * Update typing [3d70b1e] * Build in dev [f892a9f] * Fix that damn regex [8961bff] @@ -2489,16 +2852,19 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * CI [da5bc56] ### Refactor + * Update sdk [32acc21] ## v0.23.1 - 2020-11-25 ### Fixes + * Release CI [14d8c80] ## v0.23.0 - 2020-11-25 ### Chore + * Update adaptive dialogs [0061660] * Prettier redacted events [d1e291e] * Minor design changes in user viewer [b4fb283] @@ -2507,6 +2873,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Only load google services if needed [bae779a] ### Feature + * Next version [1af048e] * Annoy user with dialog to add a recovery method [d9ec9f6] * Implement password recovery [4b2fef5] @@ -2515,6 +2882,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Improved encryption UI [2516848] ### Fixes + * Broken dialog [97bb692] * set email dialog [72e325a] * Minor fixes [11e2dd5] @@ -2530,17 +2898,20 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Suggest correct rooms [59ec9de] ### Refactor + * Make verification in dialogs [1f9e953] * matrix to link prefix [1aa9c08] ## v0.22.1 - 2020-11-21 ### Fixes + * Input bar not working, making app unusable [10773b4] ## v0.22.0 - 2020-11-21 ### Chore + * fix CI [00ed0d6] * fix CI [bb4bb9f] * Fix CI variables [d3822b0] @@ -2554,6 +2925,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Remove unused dependency [d12de2d] ### Feature + * Add svg support and better image handling [f70bbc3] * add config.json [4b7fb6b] * persistent upload of release artifacts [1b2481b] @@ -2561,28 +2933,33 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Better encryption / verification [1ff986e] ### Fixes + * iOS [26731ab] * resolve some sentry issues [61f35e8] * resolve some sentry issues [2c3693e] * iOS build [9fee409] * Automatic update deps job [255c05d] -* Don't re-render message widgets on insertion of new messages, making e.g. audio playing not stop [25b2997] +* Don't re-render message widgets on insertion of new messages, making e.g. audio playing not + stop [25b2997] * Add missing safearea [caab868] * no pushers enpdoint [b3942ad] * Sentry and small null fix [5dc22be] ### Refactor + * CI [34d7fdd] * SDK update [7e23280] ## v0.21.1 - 2020-10-28 ### Chore + * update version code [d1dfa9c] ## v0.21.0 - 2020-10-28 ### Chore + * Change compileSdkVersion again [f93f9c2] * Update packages [b471bd0] * Update SDK [86a385d] @@ -2593,6 +2970,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * release [844b4a8] ### Fixes + * CompileSDKVersion [bcf75fc] * Target sdk [c3e23b6] * File picker issue [aa191c1] @@ -2608,6 +2986,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.20.0 - 2020-10-23 ### Chore + * update dependencies [427cdc0] * upate matrix link text [0892ca9] * Change default linux window size [719323a] @@ -2619,6 +2998,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Make app ready for flutter 1 22 [e5b23fa] ### Feature + * Implement mouse select chat list items [6d41136] * Implement linux desktop notifications [75cd6f1] * Implement change device name [bfd3888] @@ -2631,6 +3011,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Enable macOS build [a845209] ### Fixes + * return text field to the previous state after editing message [08e61c0] * Web server picker [4cb19be] * Some single-emoji names crashing [b29ebce] @@ -2673,6 +3054,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi ## v0.19.0 - 2020-09-21 ### Chore + * Version update & olm-CI [0f805a2] * Update SDK & Changelog [1825543] * Add new language [c6d67ad] @@ -2686,6 +3068,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * update sdk [954eedb] ### Feature + * Implement send reactions [6bf25b7] * Improve design [c8a63c6] * Display emotes/emojis bigger [9cccd07] @@ -2701,6 +3084,7 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * New notification sound [8a5be21] ### Fixes + * Last bits for the release [1db9bdd] * Small stuff [9d3f272] * Search bar [eca25de] @@ -2716,5 +3100,5 @@ Version 0.30.0 will be the first version with arm64 support. You can download bi * Send read receipt only on focus [98316f1] * Desktop notifications [b05bfa6] - -This CHANGELOG.md was generated with [**Changelog for Dart**](https://pub.dartlang.org/packages/changelog) +This CHANGELOG.md was generated with [**Changelog for Dart +**](https://pub.dartlang.org/packages/changelog) diff --git a/PRIVACY.md b/PRIVACY.md index 018b85760..439899d0e 100644 --- a/PRIVACY.md +++ b/PRIVACY.md @@ -1,6 +1,6 @@ # Privacy -FluffyChat is available on Android, iOS and as a web version. Desktop versions for Windows, Linux and macOS may follow. +FluffyChat is available on Android, iOS, Linux and as a web version. Desktop versions for Windows and macOS may follow. * [Matrix](#matrix) * [Database](#database) @@ -109,4 +109,4 @@ To enhance user safety and help protect against the sexual abuse and exploitatio In addition to reporting messages, users can also report other users following a similar process. -We encourage server administrators to adhere to strict safety standards and provide mechanisms for addressing and moderating inappropriate content. For more information on the Matrix protocol and its safety standards, please refer to the following link: https://matrix.org/docs/older/moderation/ \ No newline at end of file +We encourage server administrators to adhere to strict safety standards and provide mechanisms for addressing and moderating inappropriate content. For more information on the Matrix protocol and its safety standards, please refer to the following link: https://matrix.org/docs/older/moderation/ diff --git a/README.md b/README.md index 0642b7dcf..1bf5e37af 100644 --- a/README.md +++ b/README.md @@ -41,8 +41,6 @@ * Also thanks to all translators and testers! With your help, fluffychat is now available in more than 12 languages. -* Noto Emoji Font for the awesome emojis. - * WoodenBeaver sound theme for the notification sound. * The Matrix Foundation for making and maintaining the [emoji translations](https://github.com/matrix-org/matrix-spec/blob/main/data-definitions/sas-emoji.json) used for emoji verification, licensed Apache 2.0 diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 375323e37..a4058486b 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + android:installLocation="auto"> -
+