Skip to content

Commit c65e450

Browse files
committed
Merge development into refactoring-branch: resolve conflicts by keeping development versions
2 parents c468dad + 7a19f3d commit c65e450

51 files changed

Lines changed: 909 additions & 321 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.editorconfig

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
root=true
2+
3+
[*.md]
4+
indent_style=tab
5+
6+
[*.{yml,yaml}]
7+
indent_style=space
8+
indent_size=2
9+
10+
[*.{kt,kts}]
11+
indent_style=space
12+
indent_size=4
13+
14+
[*.dart]
15+
indent_style=space
16+
indent_size=2
Lines changed: 29 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,127 +1,101 @@
1-
name: Flutter CI/CD
1+
name: Build and Release
22

33
on:
4+
workflow_dispatch:
45
push:
5-
branches: [main, develop]
6+
branches: [main, development]
67
pull_request:
7-
branches: [main]
8-
workflow_dispatch:
9-
10-
env:
11-
FLUTTER_VERSION: '3.29.3'
8+
branches: [main, development]
129

1310
jobs:
14-
analyze:
15-
name: Analyze
16-
runs-on: ubuntu-latest
17-
steps:
18-
- uses: actions/checkout@v4
19-
- uses: subosito/flutter-action@v2
20-
with:
21-
flutter-version: ${{ env.FLUTTER_VERSION }}
22-
- run: flutter analyze
23-
24-
test:
25-
name: Test
26-
runs-on: ubuntu-latest
27-
steps:
28-
- uses: actions/checkout@v4
29-
- uses: subosito/flutter-action@v2
30-
with:
31-
flutter-version: ${{ env.FLUTTER_VERSION }}
32-
- run: flutter test
33-
3411
build-android:
3512
name: Build Android
36-
needs: [analyze, test]
3713
runs-on: ubuntu-latest
3814
steps:
3915
- uses: actions/checkout@v4
4016
- uses: subosito/flutter-action@v2
4117
with:
42-
flutter-version: ${{ env.FLUTTER_VERSION }}
43-
- uses: actions/setup-java@v3
18+
channel: stable
19+
flutter-version-file: pubspec.yaml
20+
- uses: actions/setup-java@v4
4421
with:
4522
java-version: '17'
46-
distribution: 'temurin'
23+
distribution: 'jetbrains'
4724
- run: flutter build apk --release
48-
- uses: actions/upload-artifact@v3
25+
- uses: actions/upload-artifact@v4
4926
with:
5027
name: android-apk
5128
path: build/app/outputs/flutter-apk/app-release.apk
52-
5329
build-ios:
5430
name: Build iOS
55-
needs: [analyze, test]
5631
runs-on: macos-latest
5732
steps:
5833
- uses: actions/checkout@v4
5934
- uses: subosito/flutter-action@v2
6035
with:
61-
flutter-version: ${{ env.FLUTTER_VERSION }}
36+
channel: stable
37+
flutter-version-file: pubspec.yaml
6238
- run: flutter build ios --release --no-codesign
63-
- uses: actions/upload-artifact@v3
39+
- uses: actions/upload-artifact@v4
6440
with:
6541
name: ios-app
66-
path: build/ios/Release
67-
42+
path: build/ios/iphoneos/Runner.app
6843
build-macos:
6944
name: Build macOS
70-
needs: [analyze, test]
7145
runs-on: macos-latest
7246
steps:
7347
- uses: actions/checkout@v4
7448
- uses: subosito/flutter-action@v2
7549
with:
76-
flutter-version: ${{ env.FLUTTER_VERSION }}
50+
channel: stable
51+
flutter-version-file: pubspec.yaml
7752
- run: flutter build macos --release
78-
- uses: actions/upload-artifact@v3
53+
- uses: actions/upload-artifact@v4
7954
with:
8055
name: macos-app
81-
path: build/macos/Build/Products/Release
82-
56+
path: build/macos/Build/Products/Release/VPN\ Client.app
8357
build-windows:
8458
name: Build Windows
85-
needs: [analyze, test]
8659
runs-on: windows-latest
8760
steps:
61+
- name: Enable long paths on Windows
62+
run: git config --system core.longpaths true
8863
- uses: actions/checkout@v4
8964
- uses: subosito/flutter-action@v2
9065
with:
91-
flutter-version: ${{ env.FLUTTER_VERSION }}
66+
channel: stable
67+
flutter-version-file: pubspec.yaml
9268
- run: flutter build windows --release
93-
- uses: actions/upload-artifact@v3
69+
- uses: actions/upload-artifact@v4
9470
with:
9571
name: windows-app
96-
path: build/windows/runner/Release
97-
72+
path: build/windows/x64/runner/Release/vpn_client.exe
9873
build-linux:
9974
name: Build Linux
100-
needs: [analyze, test]
10175
runs-on: ubuntu-latest
10276
steps:
10377
- uses: actions/checkout@v4
10478
- uses: subosito/flutter-action@v2
10579
with:
106-
flutter-version: ${{ env.FLUTTER_VERSION }}
80+
channel: stable
81+
flutter-version-file: pubspec.yaml
10782
- run: |
10883
sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev
10984
flutter build linux --release
110-
- uses: actions/upload-artifact@v3
85+
- uses: actions/upload-artifact@v4
11186
with:
11287
name: linux-app
11388
path: build/linux/x64/release/bundle
114-
11589
release:
11690
name: Create Release
91+
if: ${{ github.ref == 'refs/heads/main' && startsWith(github.ref, 'refs/tags/v') }}
11792
needs: [build-android, build-ios, build-macos, build-windows, build-linux]
11893
runs-on: ubuntu-latest
119-
if: github.event_name == 'push' && contains(github.ref, 'tags')
12094
steps:
121-
- uses: actions/download-artifact@v3
95+
- uses: actions/download-artifact@v4
12296
with:
12397
path: artifacts
124-
- uses: softprops/action-gh-release@v1
98+
- uses: softprops/action-gh-release@v2
12599
with:
126100
files: |
127101
artifacts/android-apk/app-release.apk

.github/workflows/notarize-windows.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,3 @@ jobs:
2222
access-token: ${{ secrets.SIGNPATH_ACCESS_TOKEN }}
2323
artifact-path: build/windows/runner/Release/**/*.exe
2424
signing-policy-slug: ${{ secrets.SIGNPATH_SIGNING_POLICY_SLUG }}
25-

.github/workflows/quality.yml

Lines changed: 35 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,43 @@
11
name: Code Quality
22

3-
on: [push, pull_request]
3+
on: push
44

55
jobs:
6-
quality:
6+
analyze:
7+
name: Static Analysis
78
runs-on: ubuntu-latest
89
steps:
910
- uses: actions/checkout@v4
10-
- uses: subosito/flutter-action@v2
11+
- name: Setup Flutter
12+
uses: subosito/flutter-action@v2
1113
with:
12-
flutter-version: ${{ env.FLUTTER_VERSION }}
13-
- run: flutter pub get
14-
- run: dart format --set-exit-if-changed .
15-
- run: flutter analyze
16-
- name: Run Dart Code Metrics
17-
dart pub global activate dart_code_metrics
18-
dart pub global run dart_code_metrics:metrics analyze lib
14+
channel: stable
15+
flutter-version-file: pubspec.yaml
16+
- name: Analyze code
17+
run: flutter analyze
18+
format:
19+
name: Code Formatting
20+
needs: [analyze]
21+
runs-on: ubuntu-latest
22+
steps:
23+
- uses: actions/checkout@v4
24+
- name: Setup Flutter
25+
uses: subosito/flutter-action@v2
26+
with:
27+
channel: stable
28+
flutter-version-file: pubspec.yaml
29+
- name: Format code
30+
run: dart format --output=none --set-exit-if-changed .
31+
matrics:
32+
name: Code Matrics
33+
needs: [analyze]
34+
runs-on: ubuntu-latest
35+
steps:
36+
- uses: actions/checkout@v4
37+
- name: Setup Flutter
38+
uses: subosito/flutter-action@v2
39+
with:
40+
channel: stable
41+
flutter-version-file: pubspec.yaml
42+
- name: Run dart code metrics
43+
run: dart run dart_code_metrics:metrics analyze lib

.github/workflows/test.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: Tests
2+
3+
on: push
4+
5+
jobs:
6+
integration:
7+
name: Integration Test
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
- name: Setup Flutter
12+
uses: subosito/flutter-action@v2
13+
with:
14+
channel: stable
15+
flutter-version-file: pubspec.yaml
16+
- name: Flutter Test
17+
run: flutter test

CHANGELOG.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Changelog
2+
3+
4+
## [Unreleased]
5+
6+
### Added
7+
- Run scripts for different platforms (Android device/emulator, iOS device/simulator)
8+
- Flutter Gen integration for better asset management
9+
- Improved localization with proper l10n configuration
10+
- Enhanced search dialog UI and state management
11+
12+
### Changed
13+
- Replaced flutter_v2ray with vpnclient_engine_flutter
14+
- Updated dependencies and removed unused code
15+
- Improved UI responsiveness and overflow handling
16+
- Refactored main.dart for better localization support
17+
18+
### Fixed
19+
- Resolved potential UI overflow issues in search dialog
20+
- Enhanced state initialization and lifecycle management
21+
- Improved layout responsiveness and SafeArea integration
22+
23+
## [1.0.12] - 2025-01-XX
24+
25+
### Added
26+
- Initial release of VPN Client app
27+
- Basic VPN functionality
28+
- Multi-language support (English, Russian, Thai, Chinese)
29+
- Dark/Light theme support
30+
- Server selection interface
31+
- Apps management page
32+
33+
### Changed
34+
- Initial project structure and architecture
35+
36+
### Fixed
37+
- Various UI improvements and bug fixes

0 commit comments

Comments
 (0)