Skip to content

Commit 4e4b0ea

Browse files
Merge branch 'release/2.0.6'
2 parents fb346c9 + 79f60c1 commit 4e4b0ea

File tree

294 files changed

+54650
-2382
lines changed

Some content is hidden

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

294 files changed

+54650
-2382
lines changed

.gitlab-ci.yml

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
variables:
22
PUBLIC_REPO_URL: [email protected]:ProtonVPN/win-app.git
3+
SCREENSHOT_PATH: src/bin/TestFailureData/
34

45
stages:
56
- release
@@ -38,9 +39,7 @@ build-release:
3839
- echo "Restoring NuGet Packages..."
3940
- 'c:\nuget\nuget.exe restore ProtonVpn.sln'
4041
- MSBuild.exe /consoleloggerparameters:ErrorsOnly /maxcpucount /nologo /property:Configuration=Release /verbosity:quiet "src\\ProtonVPN.MarkupValidator\\ProtonVPN.MarkupValidator.csproj"
41-
- echo "Downloading translations from crowdin..."
42-
- git clone -b windows-vpn --single-branch "https://gitlab-ci-token:${CI_JOB_TOKEN}@${I18N_CACHE_REPO}" --depth 1
43-
- python ci\main.py add-languages
42+
- python ci\main.py lint-languages
4443
- python ci\main.py add-commit-hash $env:CI_COMMIT_SHORT_SHA
4544
- python ci\main.py defaultConfig
4645
- echo "Building release..."
@@ -64,8 +63,7 @@ build-debug:
6463
- 'c:\nuget\nuget.exe restore ProtonVpn.sln'
6564
- MSBuild.exe /consoleloggerparameters:ErrorsOnly /maxcpucount /nologo /property:Configuration=Release /verbosity:quiet "src\\ProtonVPN.MarkupValidator\\ProtonVPN.MarkupValidator.csproj"
6665
- echo "Downloading translations from crowdin..."
67-
- git clone -b windows-vpn --single-branch "https://gitlab-ci-token:${CI_JOB_TOKEN}@${I18N_CACHE_REPO}" --depth 1
68-
- python ci\main.py add-languages
66+
- python ci\main.py lint-languages
6967
- python ci\main.py add-commit-hash $env:CI_COMMIT_SHORT_SHA
7068
- python ci\main.py defaultConfig
7169
- echo "Building debug..."
@@ -96,6 +94,7 @@ tests:
9694
coverage_report:
9795
coverage_format: cobertura
9896
path: cobertura.xml
97+
coverage: '/Total.*?([0-9]{1,3}.[0-9]{1,3})%/'
9998

10099
build-installer-for-release:
101100
stage: build-installer
@@ -150,28 +149,37 @@ ui-test:
150149
- ui_tests
151150
script:
152151
- powershell -File ci\uninstall-app.ps1
153-
- powershell -Command "Start-Sleep -s 45"
154-
- powershell -File ci\launch-installer.ps1
155-
- powershell -Command "Start-Sleep -s 45"
152+
- powershell -File ci\install-the-app.ps1
156153
- VSTest.Console.exe src\bin\ProtonVPN.UI.Test.dll /TestCaseFilter:"Category=UI"
154+
- powershell -File ci\uninstall-app.ps1
157155
except:
158156
- /^debug.*$/
159157
- release/9.9.9
160158
- master
159+
artifacts:
160+
when: on_failure
161+
paths:
162+
- $SCREENSHOT_PATH
163+
expire_in: 2 weeks
161164

162165
connection-tests:
163166
stage: ui-test
164-
allow_failure: true
165167
tags:
166168
- connection_tests
167169
script:
168170
- powershell -File ci\uninstall-app.ps1
169171
- powershell -File ci\install-the-app.ps1
170172
- VSTest.Console.exe src\bin\ProtonVPN.UI.Test.dll /TestCaseFilter:"Category=Connection"
173+
- powershell -File ci\uninstall-app.ps1
171174
except:
172175
- /^debug.*$/
173176
- release/9.9.9
174177
- master
178+
artifacts:
179+
when: on_failure
180+
paths:
181+
- $SCREENSHOT_PATH
182+
expire_in: 2 weeks
175183

176184
update-vm:
177185
stage: ui-test
@@ -212,6 +220,10 @@ mirror:
212220
- git push public "$(git describe --abbrev=0)"
213221

214222
include:
223+
- project: 'translations/generator'
224+
ref: master
225+
file: '/jobs/commit-locales.gitlab-ci.yml'
226+
215227
- project: 'translations/generator'
216228
ref: master
217229
file: '/jobs/sync-crowdin.gitlab-ci.yml'
@@ -230,6 +242,13 @@ i18n-manual-sync-crowdin:
230242
I18N_SYNC_CROWDIN_PROJECT: 'windows-vpn'
231243
extends: .i18n-sync-crowdin-common
232244

245+
i18n-commit-translations:
246+
extends: .i18n-commit-locales-shared
247+
variables:
248+
I18N_COMMIT_CROWDIN_PROJECT: 'windows-vpn'
249+
before_script:
250+
- git config --global core.autocrlf false
251+
233252
create-release:
234253
image: debian:stable-slim
235254
stage: release

ProtonVpn.sln

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -103,28 +103,30 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.WireGuardService"
103103
EndProject
104104
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.WireGuardDriver", "src\ProtonVPN.WireGuardDriver\ProtonVPN.WireGuardDriver.csproj", "{7882140D-32E1-4AB5-853D-F8DED5256DC2}"
105105
EndProject
106-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api", "src\ProtonVPN.Api\ProtonVPN.Api.csproj", "{3E905528-D87C-4552-A32D-66BF90D14DB0}"
106+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api", "src\Api\ProtonVPN.Api\ProtonVPN.Api.csproj", "{3E905528-D87C-4552-A32D-66BF90D14DB0}"
107107
EndProject
108-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Contracts", "src\ProtonVPN.Api.Contracts\ProtonVPN.Api.Contracts.csproj", "{9E4D6072-C8DE-475A-B9A7-4B6BF6EEEAEB}"
108+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Contracts", "src\Api\ProtonVPN.Api.Contracts\ProtonVPN.Api.Contracts.csproj", "{9E4D6072-C8DE-475A-B9A7-4B6BF6EEEAEB}"
109109
EndProject
110110
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Api", "Api", "{DCDB1771-1943-4459-8040-F001758E6E1E}"
111111
EndProject
112-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Installers", "src\ProtonVPN.Api.Installers\ProtonVPN.Api.Installers.csproj", "{686E902E-0C23-4396-8887-6D9219EF8D27}"
112+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Installers", "src\Api\ProtonVPN.Api.Installers\ProtonVPN.Api.Installers.csproj", "{686E902E-0C23-4396-8887-6D9219EF8D27}"
113113
EndProject
114-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification", "src\ProtonVPN.HumanVerification\ProtonVPN.HumanVerification.csproj", "{8EE4A9C6-AA93-4A84-8EAB-4EC955DD6851}"
114+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification", "src\HumanVerification\ProtonVPN.HumanVerification\ProtonVPN.HumanVerification.csproj", "{8EE4A9C6-AA93-4A84-8EAB-4EC955DD6851}"
115115
EndProject
116116
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "HumanVerification", "HumanVerification", "{95E8A2C3-A9CF-4911-83AB-74498B7D1528}"
117117
EndProject
118-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Installers", "src\ProtonVPN.HumanVerification.Installers\ProtonVPN.HumanVerification.Installers.csproj", "{80A71107-9C8E-47B2-B743-58D5976B38FB}"
118+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Installers", "src\HumanVerification\ProtonVPN.HumanVerification.Installers\ProtonVPN.HumanVerification.Installers.csproj", "{80A71107-9C8E-47B2-B743-58D5976B38FB}"
119119
EndProject
120-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Contracts", "src\ProtonVPN.HumanVerification.Contracts\ProtonVPN.HumanVerification.Contracts.csproj", "{C0D6E7EC-29AF-4FC2-B8E0-1E5D083B55DD}"
120+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Contracts", "src\HumanVerification\ProtonVPN.HumanVerification.Contracts\ProtonVPN.HumanVerification.Contracts.csproj", "{C0D6E7EC-29AF-4FC2-B8E0-1E5D083B55DD}"
121121
EndProject
122-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Tests", "src\ProtonVPN.Api.Tests\ProtonVPN.Api.Tests.csproj", "{168C5EC3-FF08-402F-8D70-F216CB04DE81}"
122+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.Api.Tests", "src\Api\ProtonVPN.Api.Tests\ProtonVPN.Api.Tests.csproj", "{168C5EC3-FF08-402F-8D70-F216CB04DE81}"
123123
EndProject
124-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Gui", "src\ProtonVPN.HumanVerification.Gui\ProtonVPN.HumanVerification.Gui.csproj", "{7318548D-B8F2-4ED3-8B3E-F61DD8B552D1}"
124+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.HumanVerification.Gui", "src\HumanVerification\ProtonVPN.HumanVerification.Gui\ProtonVPN.HumanVerification.Gui.csproj", "{7318548D-B8F2-4ED3-8B3E-F61DD8B552D1}"
125125
EndProject
126126
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtonVPN.IntegrationTests", "test\ProtonVPN.IntegrationTests\ProtonVPN.IntegrationTests.csproj", "{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}"
127127
EndProject
128+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ProtonVPN.SourceGenerators", "src\ProtonVPN.SourceGenerators\ProtonVPN.SourceGenerators.csproj", "{B7B19A7B-5A20-4690-81F4-83002CA064FB}"
129+
EndProject
128130
Global
129131
GlobalSection(SolutionConfigurationPlatforms) = preSolution
130132
Debug|Any CPU = Debug|Any CPU
@@ -624,15 +626,29 @@ Global
624626
{7318548D-B8F2-4ED3-8B3E-F61DD8B552D1}.Release|x86.ActiveCfg = Release|Any CPU
625627
{7318548D-B8F2-4ED3-8B3E-F61DD8B552D1}.Release|x86.Build.0 = Release|Any CPU
626628
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
629+
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|Any CPU.Build.0 = Debug|Any CPU
627630
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|x64.ActiveCfg = Debug|Any CPU
628631
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|x64.Build.0 = Debug|Any CPU
629632
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|x86.ActiveCfg = Debug|Any CPU
630633
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Debug|x86.Build.0 = Debug|Any CPU
631634
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|Any CPU.ActiveCfg = Release|Any CPU
635+
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|Any CPU.Build.0 = Release|Any CPU
632636
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|x64.ActiveCfg = Release|Any CPU
633637
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|x64.Build.0 = Release|Any CPU
634638
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|x86.ActiveCfg = Release|Any CPU
635639
{A2B4BEC3-7430-489E-BE6B-F1E8205A7C62}.Release|x86.Build.0 = Release|Any CPU
640+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
641+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
642+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|x64.ActiveCfg = Debug|Any CPU
643+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|x64.Build.0 = Debug|Any CPU
644+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|x86.ActiveCfg = Debug|Any CPU
645+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Debug|x86.Build.0 = Debug|Any CPU
646+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
647+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|Any CPU.Build.0 = Release|Any CPU
648+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|x64.ActiveCfg = Release|Any CPU
649+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|x64.Build.0 = Release|Any CPU
650+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|x86.ActiveCfg = Release|Any CPU
651+
{B7B19A7B-5A20-4690-81F4-83002CA064FB}.Release|x86.Build.0 = Release|Any CPU
636652
EndGlobalSection
637653
GlobalSection(SolutionProperties) = preSolution
638654
HideSolutionNode = FALSE

0 commit comments

Comments
 (0)