Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up SwiftLint as a standalone build plugin #23996

Open
wants to merge 254 commits into
base: trunk
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
254 commits
Select commit Hold shift + click to select a range
79c49ae
Add convenience init to LightboxViewController
kean Dec 24, 2024
246b122
Integrate LightboxViewController in SiteMedia
kean Dec 24, 2024
6ed4454
Integrate LightboxViewController in ReaderDetailsCoordinator (cover i…
kean Dec 24, 2024
95399b0
INtegrate in DefaultContentCoordinator
kean Dec 24, 2024
b3a84ac
Integrate LightboxViewController in Guteberg
kean Dec 24, 2024
8fbeb66
Integrate LightboxViewController in ExternalMediaPickerViewController
kean Dec 24, 2024
8f7dd16
Integrate LightboxViewController in PostSettingsViewController (featu…
kean Dec 24, 2024
8096de9
Remove FeaturedImageViewController (ObjC)
kean Dec 24, 2024
88c7b13
Rewrite PostFeaturedImageCell
kean Dec 24, 2024
da7b29a
Integrate LightboxViewController in ReaderCommentsViewController
kean Dec 24, 2024
3354d85
Update WPRichTextImage to use AsyncImageView
kean Dec 24, 2024
c3993e0
Automatically pick thumbnail when available
kean Dec 24, 2024
36b392e
Remove WPImageViewController
kean Dec 24, 2024
342e63e
Update release notes
kean Dec 24, 2024
d613c05
Remove ImageLoader
kean Dec 24, 2024
2ac4c2e
Remove ImageDimensionParser
kean Dec 24, 2024
5141337
Update MediaItemHeaderView to use AsyncImageView instead of CachedAni…
kean Dec 24, 2024
a3adfee
Fix code formatting in RichTextView
kean Dec 24, 2024
61871d0
Update AnimatedGifAttachmentViewProvider to use GIFImageView directly
kean Dec 24, 2024
4b3f4ef
Remove SolidColorActivityIndicator
kean Dec 24, 2024
79b3a0a
Remove CachedAnimatedImageView
kean Dec 24, 2024
c96c844
Remove GIFPlaybackStrategy
kean Dec 24, 2024
3f270d2
Update EditorMediaUtility to use ImageDownloader directly (without Au…
kean Dec 24, 2024
dca2548
Remove AuthenticatedImageDownload
kean Dec 24, 2024
f9a2315
Update MediaExternalExporter to use ImageDownloader for downloading G…
kean Dec 24, 2024
8ad55b8
Remove AnimatedImageCache
kean Dec 24, 2024
f013a31
Remove remaining AlamofireImage usages from the anouncement cells
kean Dec 24, 2024
f27c41d
Remove AlamofireImageCacheAdapter
kean Dec 24, 2024
129bc3e
Remove AlamofireImage
kean Dec 24, 2024
eece5e9
Add ImagePrefetcher
kean Dec 30, 2024
49df350
Update releaes notes
kean Dec 30, 2024
1e5f0e8
Add ImageRequest support in AsyncImageView
kean Dec 30, 2024
023b3cd
Add ImageSize
kean Dec 30, 2024
f352225
Fix an issue with blogging reminders flow not being shown after publi…
kean Dec 30, 2024
afdfd05
Remove unused LightNavigationController
kean Dec 30, 2024
af4ba9c
Remove BottomSheetViewController usage from BloggingReminders flow
kean Dec 30, 2024
c9dca5f
Simplify BloggingRemindersFlowIntroViewController
kean Dec 31, 2024
956a3f0
Add SpacerView
kean Dec 31, 2024
a49d006
Add BottomToolbarView
kean Dec 31, 2024
6431474
Fix notice covering the blogging reminders fow
kean Dec 31, 2024
79334a2
Replace FancyButton
kean Dec 31, 2024
9c0bed9
Add close button to BloggingRemindersFlowSettingsViewController
kean Dec 31, 2024
882df62
Fix BloggingRemindersTimeSelectionViewController presentation
kean Dec 31, 2024
581a10a
Remove FancyButton from BloggingRemindersPushPromptViewController
kean Dec 31, 2024
9f81f7f
Remove dismiss button (it now shows back)
kean Dec 31, 2024
1d56a16
Update BloggingRemindersPushPromptViewController layout
kean Dec 31, 2024
a5d4fc2
Remove FancyButton from BloggingRemindersFlowCompletionViewController
kean Dec 31, 2024
94dd45f
Update BloggingRemindersFlowCompletionViewController layout
kean Dec 31, 2024
7bbd838
Update releaes notes
kean Dec 31, 2024
c1c70e1
Fix typo in release notes
kean Dec 31, 2024
60a9e23
Fix compliance popover accessibility settings
kean Dec 31, 2024
a1786a4
Fix an issue with compliance popover not dismissing
kean Dec 31, 2024
195e8e8
Update release notes
kean Dec 31, 2024
f91c0d7
Remove unused CircularProgressView extensions
kean Dec 31, 2024
ae33151
Remove BottomSheetViewController usage from JetpackBrandingCoordinator
kean Jan 2, 2025
c97bbdd
Remove ottomSheetViewControllerTests
kean Jan 2, 2025
927616a
Remove BottomSheetViewController
kean Jan 2, 2025
2aa3bff
Remove DrawerPresentationController
kean Jan 2, 2025
8b886a3
Update release notes
kean Jan 2, 2025
1782da1
Add Share action to the site link on dashboard
kean Jan 2, 2025
92d446f
Remove duplicated Share actions
kean Jan 2, 2025
8921783
Remove duplicated Strings.ok
kean Jan 2, 2025
57dc107
Update release notes
kean Jan 2, 2025
86ee87b
Fix layout issues in Privacy Settings
kean Jan 2, 2025
9038395
Add assertion
kean Jan 2, 2025
df6f938
Update release notes
kean Jan 2, 2025
b9de1da
Rename WordPressMedia to AsyncImageKit
kean Jan 2, 2025
cdfbd20
Rename WordPressMedia (#23937)
kean Jan 2, 2025
c7b0a49
Remove MediaHost from AsyncImageKit
kean Jan 2, 2025
4d8d512
Move ImageDownloader.shared to AsyncImageKit
kean Jan 2, 2025
7f45fec
Move AsyncImageView and other related types to AsyncImageKit
kean Jan 2, 2025
90b1166
Fix unit tests
kean Jan 2, 2025
2c17896
Move AsyncImageView to AsyncImageKit (#23938)
kean Jan 2, 2025
330ebaf
Cleanup MediaHost initializers
kean Jan 2, 2025
58ec973
Optimize account lookup
kean Jan 2, 2025
ebbeb8b
Fix MediaHostTests
kean Jan 2, 2025
221386f
Cleanup MediaHost initializers (#23939)
kean Jan 2, 2025
42aea77
Fix crash in ReaderDetailFeaturedImageView
kean Jan 3, 2025
14b5c56
Fix RTL support in WebKitViewController
kean Jan 3, 2025
eb7bed6
Use semantic back/forward chevrons in other places
kean Jan 3, 2025
2b4ff05
Update StatsBaseCell
kean Jan 3, 2025
c227ab4
Update SiteStatsTableHeaderView
kean Jan 3, 2025
e6883c5
Replace disclosure-chevron and editor-chevron-left
kean Jan 3, 2025
379b156
Fix remainig incorrect chevron usages
kean Jan 3, 2025
5e77775
Remove remainig chevron images
kean Jan 3, 2025
161fc2d
Update release notes
kean Jan 3, 2025
3a85553
Fix separator insets on homepage
kean Jan 3, 2025
cb3816d
Fix incorrect chevron icons direction in RTL languages (#23940)
kean Jan 3, 2025
eab7835
Fix an issue with clear navigation bar background in revision browser
kean Jan 3, 2025
bf01b8f
Fix an issue with clear navigation bar background in revision browser
kean Jan 3, 2025
a337327
Fix toolbar inset to safe area in revision browser
kean Jan 3, 2025
56ef3a7
Modernize menus and stuff
kean Jan 3, 2025
87ff4b6
Fix an issue with clear navigation bar background in revision browser…
kean Jan 3, 2025
7b36ced
Fix an issue with clear navigation bar background in revision browser…
kean Jan 3, 2025
8b02a8e
Fix MediaRequestAuthenticatorTests
kean Jan 3, 2025
c74a857
Remove preflight connection check when sending replies (can be laggin…
kean Jan 3, 2025
b1709b7
Fix an issue with comments disppearing if request fails
kean Jan 3, 2025
d847e8a
Update other screens using TextView
kean Jan 3, 2025
cb47b04
Update release notes
kean Jan 3, 2025
309ddbc
Fix an issue with comments being lost on request failure (#23942)
kean Jan 3, 2025
ccbdbfb
Fix formatting
kean Jan 3, 2025
13bcd39
Fix an issue with referrers showing invalid icons
kean Jan 3, 2025
2f22b2f
Update release notes
kean Jan 3, 2025
fe31a0d
Fix an issue with Referrers in Stats showing invalid icons (#23943)
kean Jan 3, 2025
4c2f229
Remove some of the scenarios where isInternetConnected used
kean Jan 4, 2025
565a34b
Update site menu style on iPhone
kean Jan 6, 2025
c02b29b
Update release notes
kean Jan 6, 2025
fcc9cf5
Update site menu style on iPhone (#23944)
kean Jan 6, 2025
26058c7
Integrate zoom transitions in Theme browser
kean Jan 6, 2025
babc529
Update release notes
kean Jan 6, 2025
ff930aa
Integrate zoom transitions in Theme browser (#23945)
kean Jan 6, 2025
af9dd41
Fix tint colors in wpios
kean Jan 6, 2025
ff83911
Remove UIAppColor.brand
kean Jan 6, 2025
2dbd0fc
Fix tint color in wpios (#23946)
kean Jan 6, 2025
8cdd43e
Enable zoom transitions in Reader (iPad)
kean Jan 6, 2025
7584f56
Update release notes
kean Jan 6, 2025
e6f37bd
Integrate zoom transitions in Reader (#23947)
kean Jan 6, 2025
d86c342
Remove unused isVisibleInScrollView
kean Jan 6, 2025
40f7142
Enable toolbar hiding on iPad
kean Jan 6, 2025
fe68ae3
Fix ReaderDetailFeaturedImageView gradienet showing up when no image …
kean Jan 6, 2025
4b741ea
Enable toolbar hiding on iPad too (#23948)
kean Jan 6, 2025
99b0ba2
Fix an issue with Publisize options appearing in the prepublishing sh…
kean Jan 6, 2025
9edac5f
Fix an issue with Publisize options appearing in the prepublishing sh…
kean Jan 6, 2025
600ad8f
Fix code formatting and remove unused imports
kean Jan 6, 2025
c966dc6
Move SiteIconView to WordPressUI
kean Jan 6, 2025
a6775eb
Update Share extension to use SiteIconView
kean Jan 6, 2025
7c33ae7
Remove UIImageView+Blavatar
kean Jan 6, 2025
119f4cc
Use firstLetter
kean Jan 6, 2025
0862ef1
Update release notes
kean Jan 6, 2025
6e32673
Fix an issue with site icons cropped in share extensions (#23950)
kean Jan 6, 2025
f95fe7c
Disable universal links support for QR code login
kean Jan 7, 2025
4dc172d
Fix an issue with the confirmation screen shown more than once
kean Jan 7, 2025
f9738ee
Update release notes
kean Jan 7, 2025
406da34
Enable fast deceleration for filters on the Discover tab
kean Jan 7, 2025
9879df0
Update release notes
kean Jan 7, 2025
530faff
Enable fast deceleration for filters on the Discover tab (#23954)
kean Jan 7, 2025
09f7e55
Show selected filter in the Discover navigation bar
kean Jan 7, 2025
5fd1a43
Update release notes
kean Jan 7, 2025
011b671
Merge branch 'christmas-feature-branch' into fix/disable-qr-code-univ…
kean Jan 7, 2025
4b41387
Disable universal links support for QR code login (#23953)
kean Jan 7, 2025
f0e5730
Show selected filter in the Discover navigation bar (#23956)
kean Jan 7, 2025
9e70581
Remove unused makeCreateButtonAnnouncementAlertController
kean Jan 7, 2025
9fe9593
Add scroll-to-top button to Reader
kean Jan 7, 2025
321c8d2
Cleanup
kean Jan 7, 2025
8e0026c
Update design for iPad
kean Jan 7, 2025
6ead7b3
Add analytics
kean Jan 7, 2025
2069c49
Update releaes notes
kean Jan 7, 2025
46d183f
Add scroll-to-top button to Reader streams (#23957)
kean Jan 7, 2025
34775f3
Flatten a nested localized string to avoid `genstrings` failure
mokagio Jan 8, 2025
b491858
Import `WordPressUI` in `SiteIconViewModelTests`
mokagio Jan 8, 2025
ab47169
Add initial MediaPicker implementation
kean Jan 8, 2025
6ddf963
Add initial PostSettingsFeaturedImageCell implementation
kean Jan 8, 2025
3338325
Add configurable MediaPicker content
kean Jan 8, 2025
bcd2738
Add ViewModel to PostSettingsFeaturedImageCell
kean Jan 8, 2025
ba566af
Add reuseIdentifier for featured image cells
kean Jan 8, 2025
dbfb9db
Pass selection from MediaPicker to PostSettingsFeaturedImageViewModel
kean Jan 8, 2025
d23bf0e
Show upload status using PostMediaUploadItemView
kean Jan 8, 2025
6c9f7e7
Rename MediaUploadItemViewModel
kean Jan 8, 2025
b90111e
Add PostSettingsFeaturedImageUploadView to show upload progress
kean Jan 8, 2025
20cae40
Simlify how the app shows media upload status
kean Jan 8, 2025
ff30855
Handle upload failure
kean Jan 8, 2025
495d921
Implement featured image save
kean Jan 8, 2025
c83378b
Add support for showing a selected featured image
kean Jan 8, 2025
8cdce43
Add support for removing featured image
kean Jan 8, 2025
477227a
Simplify lightbox
kean Jan 8, 2025
2ab52b7
Add support for camera as a source
kean Jan 8, 2025
a800eae
Add .siteMedia(blog:) source
kean Jan 8, 2025
842dcfe
Add ImagePlayground source support
kean Jan 8, 2025
0d5640d
Add ImagePlayground support in MediaPicker
kean Jan 8, 2025
7483497
Add free photos and GIFs support to MediaPicker
kean Jan 8, 2025
d2c05f0
Remove unused media upload code from PostSettingsViewController
kean Jan 8, 2025
7fbb68a
Remove WPTableViewActivityCell
kean Jan 8, 2025
4e283d4
Remove WPProgressTableViewCell
kean Jan 8, 2025
5e3dd5a
Remvove unused featured image size
kean Jan 8, 2025
ec09ca8
Remove more unused code
kean Jan 8, 2025
e4554a9
Remove unused code
kean Jan 9, 2025
e8b846b
Add SiteMediaImageView
kean Jan 9, 2025
45b2fcc
Remove unused code
kean Jan 9, 2025
7f4c780
Integrate FeaturedImageDelegate
kean Jan 9, 2025
3d007fe
Fix SiteMediaImage background when loading with spinner
kean Jan 9, 2025
c2523d4
Fix animations
kean Jan 9, 2025
017f72f
Add zoom transition
kean Jan 9, 2025
0e100ad
Add shadow to more menu
kean Jan 9, 2025
7ea1cf4
Make the entire cell tappable
kean Jan 9, 2025
5d13e71
Add View action
kean Jan 9, 2025
3f27e17
Add replace action
kean Jan 9, 2025
a828b2c
Show spinner when replacing an image
kean Jan 9, 2025
b0f3a4b
Remove unused reloadFeaturedImageCell
kean Jan 9, 2025
f44329d
Update release notse
kean Jan 9, 2025
f5ff6d2
Address localization and test build failures (#23960)
kean Jan 9, 2025
cd13f63
Improve featured image flow (#23962)
kean Jan 9, 2025
41cd8ee
Revert "Update site menu style on iPhone"
kean Jan 9, 2025
a49ee2d
Fix an issue with wrong cover images appearing in Reader (#23914)
kean Jan 9, 2025
a045bf1
Point back to wpios-edition
kean Jan 9, 2025
e9b4605
Fix an issue with non-stable order in Posts and Pages in stats (#23915)
kean Jan 9, 2025
67ba286
Fix an issue with a missing "Mark as Unread" button in the More menu …
kean Jan 9, 2025
846199d
Add missing social sharing icons (#23918)
kean Jan 9, 2025
754c960
Update release notes
kean Jan 9, 2025
6deca49
Merge branch 'trunk' into christmas-feature-branch
kean Jan 9, 2025
a07bfb3
Fix build
kean Jan 9, 2025
4cd2be4
Update UI tests
kean Jan 9, 2025
d33d540
Use medium font for main navigation area in Reader to align with Home
kean Jan 9, 2025
39fa791
Remove commented-out code
kean Jan 9, 2025
3a4c671
Add context menus and previews for sites in Reader (#23964)
kean Jan 9, 2025
0ea86d8
Update release notes
kean Jan 9, 2025
d7a6a34
Run `pod deintegrate` and remove CocoaPods automation
mokagio Jan 6, 2025
e6c57d8
Add `Makefile` automation to download Gutenberg framework
mokagio Jan 6, 2025
920e6c0
Remove dead reference to `Pods.framework` in project
mokagio Jan 6, 2025
a840db4
Remove dead reference to pods from workspace
mokagio Jan 6, 2025
6b4c68f
Remove SwiftLint-via-CocoaPods from `Rakefile`
mokagio Jan 6, 2025
b208d1b
Remove unnecessary `$(inherited)` flag from a couple of targets
mokagio Jan 7, 2025
60ddd7e
Remove CocoaPods instruction from the README
mokagio Jan 7, 2025
6c4cb26
Remove SwiftLint instructions from the `README`
mokagio Jan 7, 2025
c2b40bd
Add a version of Aztec fetched via SwiftPM
mokagio Jan 7, 2025
b9b60bd
Add Gutenberg XCFrameworks via drag-n-drop from local paths
mokagio Jan 7, 2025
f25be24
Disable `CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER`
mokagio Jan 7, 2025
80bc576
Disable `CLANG_WARN_STRICT_PROTOTYPES`
mokagio Jan 7, 2025
7ed9913
Update search path for Gutenberg React Native bundle in script
mokagio Jan 7, 2025
96eec8c
Remove some leftover bits of CocoaPods set up for automation
mokagio Jan 7, 2025
bb06f6b
Remove leftover `COCOAPODS` precompiler flag
mokagio Jan 7, 2025
93290ca
Remove a couple of CocoaPods-specific code branches
mokagio Jan 7, 2025
3b2d4a1
Temporarily switch to CI toolkit branch compatible with no CocoaPods
mokagio Jan 7, 2025
1cd31ea
Fetch XCFrameworks in CI
mokagio Jan 7, 2025
c90515b
Update Gutenberg checkout logic in localization lint for CP-less setup
mokagio Jan 7, 2025
bbf1cc4
Update source map upload for CP-less Gutenberg setup
mokagio Jan 7, 2025
9c425c9
Ensure `Frameworks` folder exist, otherwise tar will fail
mokagio Jan 7, 2025
de6c042
Remove "Log Outdated Pods" step from code freeze
mokagio Jan 7, 2025
138b3aa
Remove Pods from lists in `.gitignore` and RuboCop
mokagio Jan 7, 2025
31f40e9
Remove imports of Pods xcconfigs
mokagio Jan 7, 2025
14a85da
No longer look in Pods folder to extract localizations
mokagio Jan 7, 2025
ed0940c
Link Gutenberg XCFramework in Jetpack target too!
mokagio Jan 7, 2025
03b1f42
Add instruction in README to run `make dependencies`
mokagio Jan 7, 2025
b2e22a1
Use CI toolkit 3.8.0
mokagio Jan 8, 2025
7dc268b
Merge remote-tracking branch 'origin/trunk' into mokagio/remove-cocoa…
mokagio Jan 17, 2025
a8832fc
Point Aztec to branch in wordpress-mobile org from SPM support PR
mokagio Jan 17, 2025
f315110
Merge remote and local SwiftLint configs–Plugin has trouble with remote
mokagio Jan 21, 2025
878802f
Set up SwiftLint as a SwiftPM plugin in dedicated BuildTools pkg
mokagio Jan 21, 2025
e647171
Fix `opening_braces` violation using `swiftlint --fix`
mokagio Jan 21, 2025
b45f8b7
Revert "Fix `opening_braces` violation using `swiftlint --fix`"
mokagio Jan 21, 2025
5ce2bdc
Set SDK when running SwiftLint to avoid conflicts
mokagio Jan 21, 2025
088fed2
Try with version 0.58.0 which seems a bit faster than 0.58.2
mokagio Jan 21, 2025
f006bb7
Fix SwiftLint `open_brace` violations via running with `--fix`
mokagio Jan 21, 2025
cfc62e6
Try version 0.58.1
mokagio Jan 21, 2025
f692687
Back to version 0.58.2
mokagio Jan 21, 2025
9da124f
Restore remote configuration
mokagio Jan 21, 2025
05a0116
Revert "Restore remote configuration"
mokagio Jan 22, 2025
1b5d37d
Wrap SwiftLint call from aggretate target in script
mokagio Jan 22, 2025
db78e12
Do not run build-time SwiftLint when building in CI
mokagio Jan 23, 2025
53f4eab
Only run SwiftLint build phase in Debug builds
mokagio Jan 23, 2025
8479673
Remove commented out SwiftLint source alternatives
mokagio Jan 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 1 addition & 8 deletions .buildkite/commands/build-for-testing.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,7 @@ echo "--- :beer: Installing Homebrew Dependencies"
brew tap FelixHerrmann/tap
brew install swift-package-list

echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :cocoapods: Setting up Pods"
install_cocoapods
"$(dirname "${BASH_SOURCE[0]}")/shared-set-up.sh"

echo "--- :writing_hand: Copy Files"
mkdir -pv ~/.configure/wordpress-ios/secrets
Expand All @@ -24,9 +20,6 @@ cp -v fastlane/env/project.env-example ~/.configure/wordpress-ios/secrets/projec
echo "--- :closed_lock_with_key: Installing Secrets"
bundle exec fastlane run configure_apply

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- :hammer_and_wrench: Building"
bundle exec fastlane build_${APP}_for_testing

Expand Down
25 changes: 0 additions & 25 deletions .buildkite/commands/log-outdated-pods.sh

This file was deleted.

9 changes: 1 addition & 8 deletions .buildkite/commands/prototype-build-jetpack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,10 @@ brew upgrade sentry-cli
brew tap FelixHerrmann/tap
brew install swift-package-list

echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :cocoapods: Setting up Pods"
install_cocoapods
"$(dirname "${BASH_SOURCE[0]}")/shared-set-up.sh"

echo "--- :closed_lock_with_key: Installing Secrets"
bundle exec fastlane run configure_apply

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- :hammer_and_wrench: Building"
bundle exec fastlane build_and_upload_jetpack_prototype_build
10 changes: 1 addition & 9 deletions .buildkite/commands/prototype-build-wordpress.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,10 @@ brew upgrade sentry-cli
brew tap FelixHerrmann/tap
brew install swift-package-list


echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :cocoapods: Setting up Pods"
install_cocoapods
"$(dirname "${BASH_SOURCE[0]}")/shared-set-up.sh"

echo "--- :closed_lock_with_key: Installing Secrets"
bundle exec fastlane run configure_apply

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- :hammer_and_wrench: Building"
bundle exec fastlane build_and_upload_wordpress_prototype_build
9 changes: 1 addition & 8 deletions .buildkite/commands/release-build-jetpack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,7 @@ brew install swift-package-list
brew install imagemagick
brew install ghostscript

echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :cocoapods: Setting up Pods"
install_cocoapods

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies
"$(dirname "${BASH_SOURCE[0]}")/shared-set-up.sh"

echo "--- :closed_lock_with_key: Installing Secrets"
bundle exec fastlane run configure_apply
Expand Down
3 changes: 0 additions & 3 deletions .buildkite/commands/release-build-wordpress.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@ brew install ghostscript
echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :cocoapods: Setting up Pods"
install_cocoapods

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

Expand Down
49 changes: 0 additions & 49 deletions .buildkite/commands/run-pod-tests.sh

This file was deleted.

4 changes: 1 addition & 3 deletions .buildkite/commands/run-ui-tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,10 @@ echo "--- 📦 Downloading Build Artifacts"
download_artifact build-products-jetpack.tar
tar -xf build-products-jetpack.tar

# Only the gems are needed here, given we run the tests on a pre-built binary
echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- 🔬 Testing"
xcrun simctl list >> /dev/null
rake mocks &
Expand Down
4 changes: 1 addition & 3 deletions .buildkite/commands/run-unit-tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,10 @@ echo "--- 📦 Downloading Build Artifacts"
download_artifact build-products-wordpress.tar
tar -xf build-products-wordpress.tar

# Only the gems are needed here, given we run the tests on a pre-built binary
echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- 🔬 Testing"
set +e
bundle exec fastlane test_without_building name:WordPressUnitTests
Expand Down
12 changes: 12 additions & 0 deletions .buildkite/commands/shared-set-up.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/bash -eu

echo "--- :rubygems: Setting up Gems"
install_gems

echo "--- :swift: Setting up Swift Packages"
install_swiftpm_dependencies

echo "--- :xcode: Fetch XCFrameworks"
pushd WordPress
make dependencies
popd
9 changes: 0 additions & 9 deletions .buildkite/release-pipelines/complete-code-freeze.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,3 @@ steps:
manual:
# If those jobs fail, one should always prefer re-triggering a new build from ReleaseV2 rather than retrying the individual job from Buildkite
allowed: false

- label: Log Outdated Pods
depends_on: complete_code_freeze
plugins: [$CI_TOOLKIT_PLUGIN]
command: .buildkite/commands/log-outdated-pods.sh "$RELEASE_VERSION"
retry:
manual:
# If those jobs fail, one should always prefer re-triggering a new build from ReleaseV2 rather than retrying the individual job from Buildkite
allowed: false
2 changes: 1 addition & 1 deletion .buildkite/shared-pipeline-vars
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

# The ~> modifier is not currently used, but we check for it just in case
XCODE_VERSION=$(sed -E 's/^~> ?//' .xcode-version)
CI_TOOLKIT_PLUGIN_VERSION="3.7.1"
CI_TOOLKIT_PLUGIN_VERSION="3.8.0"

export IMAGE_ID="xcode-$XCODE_VERSION-macos-14.7.1-v1"
export CI_TOOLKIT_PLUGIN="automattic/a8c-ci-toolkit#$CI_TOOLKIT_PLUGIN_VERSION"
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ $RECYCLE.BIN/

# Project
/Entitlements.plist
Pods/
WordPress.xcworkspace/*.mode1v3
WordPress.xcworkspace/*.mode2v3
WordPress.xcworkspace/*.pbxuser
Expand Down
7 changes: 0 additions & 7 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
AllCops:
Exclude:
- DerivedData/**/*
- Pods/**/*
- vendor/**/*
- WordPressAuthenticator/**/*
- WordPressKit/**/*
Expand All @@ -26,12 +25,6 @@ Layout/LineLength:
Layout/EmptyLines:
Exclude: *xfiles

Style/MutableConstant:
Exclude:
# CocoaPods mutates some input values.
# It's simpler to relax this rule than to address each individually by passing mutable copies.
- Gutenberg/cocoapods_helpers.rb

Style/AsciiComments:
Exclude: *xfiles

Expand Down
109 changes: 103 additions & 6 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,121 @@
swiftlint_version: 0.54.0

parent_config: https://raw.githubusercontent.com/Automattic/swiftlint-config/0f8ab6388bd8d15a04391825ab125f80cfb90704/.swiftlint.yml
remote_timeout: 10.0
swiftlint_version: 0.58.2
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We cannot use 0.54.0 because it's not available as a built tool plugin, see https://github.com/SimplyDanny/SwiftLintPlugins/releases

Given that, it makes sense to use the latest available version. But even if we didn't want to:

  • 0.58.0 and 0.58.1 have a bug where the Docker image reads the wrong version, so we cannot use them
  • 0.55.0 does not have the --working-directory option which we need


excluded:
- Modules/.build
- BuildTools/.build
- DerivedData
- WordPress/DerivedData
- fastlane
- Pods
- Scripts
# Automattic's CI caching setup may generate this in the project folder
- Users/builder/Library/Caches/CocoaPods/Pods
- vendor

# Rules – Opt-in only, so we can progressively introduce new ones
#
only_rules:
# Colons should be next to the identifier when specifying a type.
- colon

# There should be no space before and one after any comma.
- comma

# if,for,while,do statements shouldn't wrap their conditionals in parentheses.
- control_statement

# Allow custom rules. See the end of the config for our custom rules
- custom_rules

opt_in_rules:
- discarded_notification_center_observer

- duplicate_imports

# Arguments can be omitted when matching enums with associated types if they
# are not used.
- empty_enum_arguments

# Prefer `() -> ` over `Void -> `.
- empty_parameters

# MARK comment should be in valid format.
- mark

# Opening braces should be preceded by a single space and on the same line as
# the declaration.
- opening_brace

- overridden_super_call

- shorthand_optional_binding

# Files should have a single trailing newline.
- trailing_newline

# Lines should not have trailing semicolons.
- trailing_semicolon

# Lines should not have trailing whitespace.
- trailing_whitespace

- vertical_whitespace

- weak_delegate

overridden_super_call:
# Rules configuration
#
control_statement:
severity: error

discarded_notification_center_observer:
severity: error

overridden_super_call:
severity: error

trailing_whitespace:
ignores_empty_lines: false
ignores_comments: false

weak_delegate:
severity: error

# Custom rules
#
custom_rules:
natural_content_alignment:
name: "Natural Content Alignment"
regex: '\.contentHorizontalAlignment(\s*)=(\s*)(\.left|\.right)'
message: "Forcing content alignment left or right can affect the Right-to-Left layout. Use naturalContentHorizontalAlignment instead."
severity: warning

natural_text_alignment:
name: "Natural Text Alignment"
regex: '\.textAlignment(\s*)=(\s*).left'
message: "Forcing text alignment to left can affect the Right-to-Left layout. Consider setting it to `natural`"
severity: warning

inverse_text_alignment:
name: "Inverse Text Alignment"
regex: '\.textAlignment(\s*)=(\s*).right'
message: "When forcing text alignment to the right, be sure to handle the Right-to-Left layout case properly, and then silence this warning with this line `// swiftlint:disable:next inverse_text_alignment`"
severity: warning

localization_comment:
name: "Localization Comment"
regex: 'NSLocalizedString([^,]+,\s+comment:\s*"")'
message: "Localized strings should include a description giving context for how the string is used."
severity: warning

string_interpolation_in_localized_string:
name: "String Interpolation in Localized String"
regex: 'NSLocalizedString\("[^"]*\\\(\S*\)'
message: "Localized strings must not use interpolated variables. Instead, use `String(format:`"
severity: error

swiftui_localization:
name: "SwiftUI Localization"
regex: 'LocalizedStringKey'
message: "Using `LocalizedStringKey` is incompatible with our tooling and doesn't allow you to provide a hint/context comment for translators either. Please use `NSLocalizedString` instead, even with SwiftUI code."
severity: error
excluded: '.*Widgets/.*'
1 change: 1 addition & 0 deletions BuildTools/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.build
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd add it to the .gitignore file in the root directory.

2 changes: 2 additions & 0 deletions BuildTools/Empty.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// Here only to satisfy SwiftPM requirement.
// See https://github.com/nicklockwood/SwiftFormat#1-create-a-buildtools-folder-and-packageswift
Loading