diff --git a/.github/release_template.md b/.github/release_template.md
new file mode 100644
index 00000000..19aaa093
--- /dev/null
+++ b/.github/release_template.md
@@ -0,0 +1,57 @@
+
+
+[![Release Downloads](https://img.shields.io/github/downloads/chen08209/FlClash/vVERSION/total?style=flat-square&logo=github)](https://img.shields.io/github/downloads/chen08209/FlClash/vVERSION/)
+
+
+
+**Download based on your OS:**
+
+
+
+
+
+**List of all changes:** [ChangeLog](https://github.com/chen08209/FlClash/blob/main/CHANGELOG.md)
+
+
\ No newline at end of file
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yaml
similarity index 72%
rename from .github/workflows/build.yml
rename to .github/workflows/build.yaml
index ab72146f..1dd2461a 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yaml
@@ -35,7 +35,6 @@ jobs:
install: mingw-w64-x86_64-gcc
update: true
-
- name: Set Mingw64 Env
if: startsWith(matrix.platform,'windows')
run: |
@@ -105,8 +104,7 @@ jobs:
overwrite: true
- upload-release:
- if: ${{ !contains(github.ref, '+') }}
+ upload:
permissions: write-all
needs: [ build ]
runs-on: ubuntu-latest
@@ -123,32 +121,62 @@ jobs:
pattern: artifact-*
merge-multiple: true
- - name: Pre Release
+ - name: Generate release
run: |
- pip install gitchangelog pystache mustache markdown
- pre=$(curl --silent "https://api.github.com/repos/chen08209/FlClash/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' || echo "")
- if [ -z "pre" ]; then
- echo "init" > release.md
- else
- current="${{ github.ref_name }}"
- echo -e "\n\nAll changes from $current to the latest commit:
\n\n" >> release.md
- gitchangelog "${pre}.." >> release.md 2>&1 || echo "Error in gitchangelog"
- echo -e "\n\n " >> release.md
- fi
+ tags=($(git tag --merged $(git rev-parse HEAD) --sort=-creatordate))
+ preTag=$(curl --silent "https://api.github.com/repos/chen08209/FlClash/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' || echo "")
+ version=$(echo "${{ github.ref_name }}" | sed 's/^v//')
+ sed "s|VERSION|$version|g" ./.github/release_template.md > release.md
+ currentTag=""
+ for ((i = 0; i <= ${#tags[@]}; i++)); do
+ if (( i < ${#tags[@]} )); then
+ tag=${tags[$i]}
+ else
+ tag=""
+ fi
+ if [ -n "$currentTag" ]; then
+ if [ "$(echo -e "$currentTag\n$preTag" | sort -V | head -n 1)" == "$currentTag" ]; then
+ break
+ fi
+ fi
+ if [ -n "$currentTag" ]; then
+ echo "## $currentTag" >> release.md
+ echo "" >> release.md
+ if [ -n "$tag" ]; then
+ git log --pretty=format:"%B" "$tag..$currentTag" | awk 'NF {print "- " $0} !NF {print ""}' >> release.md
+ else
+ git log --pretty=format:"%B" "$currentTag" | awk 'NF {print "- " $0} !NF {print ""}' >> release.md
+ fi
+ echo "" >> release.md
+ fi
+ currentTag=$tag
+ done
+
+ - name: Upload
+ if: ${{ contains(github.ref, '+') }}
+ uses: actions/upload-artifact@v4
+ with:
+ name: artifact
+ path: ./dist
+ retention-days: 7
+ overwrite: true
- name: Release
+ if: ${{ !contains(github.ref, '+') }}
uses: softprops/action-gh-release@v2
with:
files: ./dist/*
body_path: './release.md'
- name: Create Fdroid Source Dir
+ if: ${{ !contains(github.ref, '+') }}
run: |
mkdir -p ./tmp
cp ./dist/*android-arm64-v8a* ./tmp/ || true
echo "Files copied successfully"
- name: Push to fdroid repo
+ if: ${{ !contains(github.ref, '+') }}
uses: cpina/github-action-push-to-another-repository@v1.7.2
env:
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
@@ -160,31 +188,4 @@ jobs:
user-email: 'github-actions[bot]@users.noreply.github.com'
target-branch: action-pr
commit-message: Update from ${{ github.ref_name }}
- target-directory: /tmp/
-
-
- upload-test:
- if: ${{ contains(github.ref, '+') }}
- permissions: write-all
- needs: [ build ]
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v4
- with:
- fetch-depth: 0
-
- - name: Download
- uses: actions/download-artifact@v4
- with:
- path: ./dist/
- pattern: artifact-*
- merge-multiple: true
-
- - name: Upload
- uses: actions/upload-artifact@v4
- with:
- name: artifact
- path: ./dist
- retention-days: 7
- overwrite: true
\ No newline at end of file
+ target-directory: /tmp/
\ No newline at end of file
diff --git a/.github/workflows/change.yml b/.github/workflows/change.yaml
similarity index 100%
rename from .github/workflows/change.yml
rename to .github/workflows/change.yaml
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 00000000..bbabad87
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,630 @@
+## v0.8.63
+
+- Fix windows admin auto launch issues
+
+- Add android vpn options
+
+- Support proxies icon configuration
+
+- Optimize android immersion display
+
+- Fix some issues
+
+## v0.8.62
+
+- Optimize ip detection
+
+- Support android vpn ipv6 inbound switch
+
+- Support log export
+
+- Optimize more details
+
+- Fix android system dns issues
+
+- Optimize dns default option
+
+- Fix some issues
+
+- Update readme
+
+- Update README.md 2
+
+- Update README.md 2
+
+- Update README.md
+
+## v0.8.60
+
+- Fix build error2
+
+- Fix build error
+
+- Support desktop hotkey
+
+- Support android ipv6 inbound
+
+- Support android system dns
+
+- fix some bugs
+
+## v0.8.59
+
+- Fix delete profile error
+
+## v0.8.58
+
+- Fix submit error 2
+
+- Fix submit error
+
+- Optimize DNS strategy
+
+- Fix the problem that the tray is not displayed in some cases
+
+- Optimize tray
+
+- Update core
+
+- Fix some error
+
+## v0.8.57
+
+- Fix tun update issues
+
+- Add DNS override
+- Fixed some bugs
+- Optimize more detail
+
+- Add Hosts override
+
+## v0.8.56
+
+- fix android tip error
+- fix windows auto launch error
+
+## v0.8.55
+
+- Fix windows tray issues
+
+- Optimize windows logic
+
+- Optimize app logic
+
+- Support windows administrator auto launch
+
+- Support android close vpn
+
+## v0.8.53
+
+- Change flutter version
+
+- Support profiles sort
+
+- Support windows country flags display
+
+- Optimize proxies page and profiles page columns
+
+## v0.8.52
+
+- Update flutter version
+
+- Update version
+
+- Update timeout time
+
+- Update access control page
+
+- Fix bug
+
+## v0.8.51
+
+- Optimize provider page
+
+- Optimize delay test
+
+- Support local backup and recovery
+
+- Fix android tile service issues
+
+## v0.8.49
+
+- Fix linux core build error
+
+- Add proxy-only traffic statistics
+
+- Update core
+
+- Optimize more details
+
+- Merge pull request #140 from txyyh/main
+
+- 添加自建 F-Droid 仓库相关 workflow
+- Rename readme fingerprint
+
+- Rename workflow deploy repo name
+
+- Add download guide to README
+
+- Add push release files to fdroid-repo
+
+## v0.8.48
+
+- Optimize proxies page
+
+- Fix ua issues
+
+- Optimize more details
+
+## v0.8.47
+
+- Fix windows build error
+
+## v0.8.46
+
+- Update app icon
+
+- Fix desktop backup error
+
+- Optimize request ua
+
+- Change android icon
+
+- Optimize dashboard
+
+## v0.8.44
+
+- Remove request validate certificate
+
+- Sync core
+
+## v0.8.43
+
+- Fix windows error
+
+## v0.8.42
+
+- Fix setup.dart error
+
+- Fix android system proxy not effective
+
+- Add macos arm64
+
+## v0.8.41
+
+- Optimize proxies page
+
+- Support mouse drag scroll
+
+- Adjust desktop ui
+
+- Revert "Fix android vpn issues"
+
+- This reverts commit 891977408e6938e2acd74e9b9adb959c48c79988.
+
+## v0.8.40
+
+- Fix android vpn issues
+
+- Fix android vpn issues
+
+- Rollback partial modification
+
+## v0.8.39
+
+- Fix the problem that ui can't be synchronized when android vpn is occupied by an external
+
+- Override default socksPort,port
+
+## v0.8.38
+
+- Fix fab issues
+
+## v0.8.37
+
+- Update version
+
+- Fix the problem that vpn cannot be started in some cases
+
+- Fix the problem that geodata url does not take effect
+
+## v0.8.36
+
+- Update ua
+
+- Fix change outbound mode without check ip issues
+
+- Separate android ui and vpn
+
+- Fix url validate issues 2
+
+- Add android hidden from the recent task
+
+- Add geoip file
+
+- Support modify geoData URL
+
+## v0.8.35
+
+- Fix url validate issues
+
+- Fix check ip performance problem
+
+- Optimize resources page
+
+## v0.8.34
+
+- Add ua selector
+
+- Support modify test url
+
+- Optimize android proxy
+
+- Fix the error that async proxy provider could not selected the proxy
+
+## v0.8.33
+
+- Fix android proxy error
+
+- Fix submit error
+
+- Add windows tun
+
+- Optimize android proxy
+
+- Optimize change profile
+
+- Update application ua
+
+- Optimize delay test
+
+## v0.8.32
+
+- Fix android repeated request notification issues
+
+## v0.8.31
+
+- Fix memory overflow issues
+
+## v0.8.30
+
+- Optimize proxies expansion panel 2
+
+- Fix android scan qrcode error
+
+## v0.8.29
+
+- Optimize proxies expansion panel
+
+- Fix text error
+
+## v0.8.28
+
+- Optimize proxy
+
+- Optimize delayed sorting performance
+
+- Add expansion panel proxies page
+
+- Support to adjust the proxy card size
+
+- Support to adjust proxies columns number
+
+- Fix autoRun show issues
+
+- Fix Android 10 issues
+
+- Optimize ip show
+
+## v0.8.26
+
+- Add intranet IP display
+
+- Add connections page
+
+- Add search in connections, requests
+
+- Add keyword search in connections, requests, logs
+
+- Add basic viewing editing capabilities
+
+- Optimize update profile
+
+## v0.8.25
+
+- Update version
+
+- Fix the problem of excessive memory usage in traffic usage.
+
+- Add lightBlue theme color
+
+- Fix start unable to update profile issues
+
+- Fix flashback caused by process
+
+## v0.8.23
+
+- Add build version
+
+- Optimize quick start
+
+- Update system default option
+
+## v0.8.22
+
+- Update build.yml
+
+- Fix android vpn close issues
+
+- Add requests page
+
+- Fix checkUpdate dark mode style error
+
+- Fix quickStart error open app
+
+- Add memory proxies tab index
+
+- Support hidden group
+
+- Optimize logs
+
+- Fix externalController hot load error
+
+## v0.8.21
+
+- Add tcp concurrent switch
+
+- Add system proxy switch
+
+- Add geodata loader switch
+
+- Add external controller switch
+
+- Add auto gc on trim memory
+
+- Fix android notification error
+
+## v0.8.20
+
+- Fix ipv6 error
+
+- Fix android udp direct error
+
+- Add ipv6 switch
+
+- Add access all selected button
+
+- Remove android low version splash
+
+## v0.8.19
+
+- Update version
+
+- Add allowBypass
+
+- Fix Android only pick .text file issues
+
+## v0.8.18
+
+- Fix search issues
+
+## v0.8.17
+
+- Fix LoadBalance, Relay load error
+
+- Fix build.yml4
+
+- Fix build.yml3
+
+- Fix build.yml2
+
+- Fix build.yml
+
+- Add search function at access control
+
+- Fix the issues with the profile add button to cover the edit button
+
+- Adapt LoadBalance and Relay
+
+- Add arm
+
+- Fix android notification icon error
+
+## v0.8.16
+
+- Add one-click update all profiles
+- Add expire show
+
+## v0.8.15
+
+- Temp remove tun mode
+
+- Remove macos in workflow
+
+- Change go version
+
+## v0.8.14
+
+- Update Version
+
+- Fix tun unable to open
+
+## v0.8.13
+
+- Optimize delay test2
+
+- Optimize delay test
+
+- Add check ip
+
+- add check ip request
+
+## v0.8.12
+
+- Fix the problem that the download of remote resources failed after GeodataMode was turned on, which caused the application to flash back.
+
+- Fix edit profile error
+
+- Fix quickStart change proxy error
+
+- Fix core version
+
+## v0.8.10
+
+- Fix core version
+
+## v0.8.9
+
+- Update file_picker
+
+- Add resources page
+
+- Optimize more detail
+
+- Add access selected sorted
+
+- Fix notification duplicate creation issue
+
+- Fix AccessControl click issue
+
+## v0.8.7
+
+- Fix Workflow
+
+- Fix Linux unable to open
+
+- Update README.md 3
+
+- Create LICENSE
+- Update README.md 2
+
+- Update README.md
+
+- Optimize workFlow
+
+## v0.8.6
+
+- optimize checkUpdate
+
+## v0.8.5
+
+- Fix submit error
+
+## v0.8.4
+
+- add WebDAV
+
+- add Auto check updates
+
+- Optimize more details
+
+- optimize delayTest
+
+## v0.8.2
+
+- upgrade flutter version
+
+## v0.8.1
+
+- Update kernel
+- Add import profile via QR code image
+
+## v0.8.0
+
+- Add compatibility mode and adapt clash scheme.
+
+## v0.7.14
+
+- update Version
+
+- Reconstruction application proxy logic
+
+## v0.7.13
+
+- Fix Tab destroy error
+
+## v0.7.12
+
+- Optimize repeat healthcheck
+
+## v0.7.11
+
+- Optimize Direct mode ui
+
+## v0.7.10
+
+- Optimize Healthcheck
+
+- Remove proxies position animation, improve performance
+- Add Telegram Link
+
+- Update healthcheck policy
+
+- New Check URLTest
+
+- Fix the problem of invalid auto-selection
+
+## v0.7.8
+
+- New Async UpdateConfig
+
+- add changeProfileDebounce
+
+- Update Workflow
+
+- Fix ChangeProfile block
+
+- Fix Release Message Error
+
+## v0.7.7
+
+- Update Selector 2
+
+## v0.7.6
+
+- Update Version
+
+- Fix Proxies Select Error
+
+## v0.7.5
+
+- Fix the problem that the proxy group is empty in global mode.
+
+- Fix the problem that the proxy group is empty in global mode.
+
+## v0.7.4
+
+- Add ProxyProvider2
+
+## v0.7.3
+
+- Add ProxyProvider
+
+- Update Version
+
+- Update ProxyGroup Sort
+
+- Fix Android quickStart VpnService some problems
+
+## v0.7.1
+
+- Update version
+
+- Set Android notification low importance
+
+- Fix the issue that VpnService can't be closed correctly in special cases
+
+- Fix the problem that TileService is not destroyed correctly in some cases
+
+- Adjust tab animation defaults
+
+- Add Telegram in README_zh_CN.md
+
+- Add Telegram
+
+## v0.7.0
+
+- update mobile_scanner
+
+- Initial commit
+
diff --git a/pubspec.yaml b/pubspec.yaml
index 35740b97..8dcfc333 100755
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,7 +1,7 @@
name: fl_clash
description: A multi-platform proxy client based on ClashMeta, simple and easy to use, open-source and ad-free.
publish_to: 'none'
-version: 0.8.63+202410081
+version: 0.8.64+202410121
environment:
sdk: '>=3.1.0 <4.0.0'