Skip to content
This repository was archived by the owner on Sep 15, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
8967071
Remove WordPressShared dependency
kean Jul 12, 2024
f91298f
Inline WordPressShared
kean Jul 12, 2024
d3af1d1
Update unit tests
kean Jul 12, 2024
4f7f0ad
Remove UIDeviceIdentifier dependency
kean Jul 12, 2024
ee95d78
Link NSObject-SafeExpectations and wpxmlrpc statically
kean Jul 12, 2024
721f854
Add a script to build xcframework
kean Jul 12, 2024
a883ef2
(Test) import dependencies using @_implementationOnly
kean Jul 12, 2024
a3000c4
Prefix extensions
kean Jul 12, 2024
d32ce39
Fix missing access control modifier
kean Jul 12, 2024
0ada092
Remove Alamofire dependency from tests
kean Jul 12, 2024
03b2e77
Deintegrate CocoaPods
kean Jul 12, 2024
6f2c142
Remove unused files
kean Jul 12, 2024
561ae06
Add SwiftLint back
kean Jul 12, 2024
fa10ccd
Add SwiftLint phase and fix violations
kean Jul 12, 2024
0cfeddc
Remove validate-podspec phase
kean Jul 12, 2024
25ccccd
Fix Podfile
kean Jul 13, 2024
01fe272
Add changes made in wpios
kean Jul 13, 2024
eee1e01
Add Package.swift
kean Jul 13, 2024
0583ccc
Update some of the public APIs
kean Jul 13, 2024
80a7cd2
Add is_wpcom_staging_site
kean Aug 6, 2024
67c6e68
Add missing @frozen
kean Aug 6, 2024
faf485f
Update WPKit (#817)
kean Aug 7, 2024
c3eeb90
Update Package.swift
kean Aug 7, 2024
05af184
Update Reader APIs
kean Oct 18, 2024
a5dfe35
Add ReaderStream enum
kean Oct 18, 2024
37b3a3b
Update Reader APIs (#820)
kean Dec 19, 2024
7a3624f
Add StatsEmailsSummaryData.SortField.postDate
kean Dec 19, 2024
77b3f5e
Add StatsEmailsSummaryData.SortField.postDate (#824)
kean Dec 19, 2024
87e2a09
Remove automatically resolved featured images
kean Dec 20, 2024
908d96a
Fix features images in Reader (#825)
kean Jan 9, 2025
10097d5
Remove lazy-laod
kean Jan 10, 2025
a9a057e
Task/remove lazy load (#827)
kean Jan 10, 2025
fe83ee7
Add an argument to use ephemeral URLSession to send WP.com API requests
crazytonyli Jan 28, 2025
253b695
Update binary target
crazytonyli Jan 28, 2025
cd1458b
Add an argument to use ephemeral URLSession to send WP.com API reques…
crazytonyli Jan 29, 2025
d46b5be
Add RemoteComment as a reponse object in CommentServiceRemote
kean Feb 20, 2025
2846106
Add autoSuggestedFeaturedImage
kean Feb 28, 2025
4500041
Udpate package
kean Feb 28, 2025
30563e2
Add suitableImageFromPostContent
kean Feb 28, 2025
bad387c
Update tests
kean Mar 3, 2025
ba542ba
Add auto-suggested featured image back (#831)
kean Mar 3, 2025
976f035
Return visible sites only by default
crazytonyli Mar 18, 2025
baf2f40
Update Package.swift
crazytonyli Mar 18, 2025
074fc43
Add search parameter to `getWPThemesPage` method
pmusolino Mar 18, 2025
a5a49e7
update: Package.swift
pmusolino Mar 18, 2025
affb54f
Revert "update: Package.swift"
pmusolino Mar 18, 2025
244b6c4
Revert "Add search parameter to `getWPThemesPage` method"
pmusolino Mar 18, 2025
842c9dc
Add search parameter to theme retrieval methods
pmusolino Mar 18, 2025
9959944
update: Change WordPressKit binary target URL and checksum
pmusolino Mar 18, 2025
1e79b7a
Remove unused filter parameter from ThemeServiceRemote
pmusolino Mar 18, 2025
8669408
update `Package.swift`
pmusolino Mar 18, 2025
b686b15
Change WordPressComRESTAPIVersion from 1_2 to 2_0 in ThemeServiceRemo…
pmusolino Mar 18, 2025
5ec2833
update package.swift
pmusolino Mar 18, 2025
554d3ef
Exclude deleted sites from getBlogs (#833)
crazytonyli Mar 19, 2025
fab54fb
Merge branch 'wpios-edition' into add-search-param-in-theme-service-r…
pmusolino Mar 19, 2025
f5fbaf5
update: Package.swift
pmusolino Mar 19, 2025
99f6f70
update: ThemeServiceRemoteTests
pmusolino Mar 19, 2025
cd033db
update: Package.swift
pmusolino Mar 19, 2025
fcb9916
update: ThemeServiceRemote header file
pmusolino Mar 19, 2025
407437b
update: package.swift
pmusolino Mar 19, 2025
2d2d19a
fix: endpoint version in method `testThatGetThemesWorks`
pmusolino Mar 19, 2025
221e6c6
update: Package.swift
pmusolino Mar 19, 2025
3caf721
fix: handle optional search parameter in getWPThemesPage method
pmusolino Mar 19, 2025
4fbd973
update: Package.swift
pmusolino Mar 19, 2025
7dc4ed3
Add search param in `getWPThemesPage` method and migrate endpoint to …
pmusolino Mar 28, 2025
3258ec3
Exclude unactive Jetpack sites
crazytonyli Mar 31, 2025
aa4ea90
Update xcframework url
crazytonyli Mar 31, 2025
777c651
Update docs to be consistent with the HTTP API doc
crazytonyli Apr 1, 2025
b6ada40
Update xcframework url
crazytonyli Apr 9, 2025
ed050d0
Do not show disconnected Jetpack sites (#835)
crazytonyli Apr 9, 2025
b45f141
Parse the menu_order property in posts list
crazytonyli Mar 10, 2025
86f9eef
Update xcframework
crazytonyli Apr 14, 2025
94cbe7e
Parse the menu_order property in posts list (#832)
crazytonyli Apr 14, 2025
5f75fa3
Add /wpcom/v2/sites/:siteid/subscribers
kean Apr 28, 2025
214ca21
Fix previous Xcode version compatibility
kean Apr 28, 2025
9174ac4
Update tests
kean Apr 28, 2025
5bc0876
Add /wpcom/v2/sites/:siteid/subscribers (#836)
kean Apr 30, 2025
00c78cb
Add search to subscribers
kean May 5, 2025
92c48fc
Add search to initializer
kean May 5, 2025
bb34b0f
Fix missing query
kean May 5, 2025
40342e8
Simplify how filters are passed
kean May 6, 2025
8ffb0d4
Add CaseIterable
kean May 6, 2025
0bd3c27
Add @frozen
kean May 6, 2025
dc27315
Extract SubscribersServiceRemote
kean May 7, 2025
5ecc194
Add getSubsciberStats
kean May 7, 2025
e8e8652
Add getSubsciberDetails
kean May 7, 2025
a128446
Add support for plans
kean May 8, 2025
34f8857
Add SubsciberBasicInfoResponse
kean May 8, 2025
f20b956
Add type parameter
kean May 9, 2025
0454d46
Safer decoding
kean May 9, 2025
9b22001
Cleanup the test data
kean May 9, 2025
c0ccd26
Make filter public
kean May 9, 2025
dfd1877
Add importSubscribers
kean May 12, 2025
cc7fd8a
Fix download link
kean May 12, 2025
83d66fa
Extend SubscriberServiceRemote (#837)
kean May 13, 2025
ceeeedd
DRY `env` definition in CI
mokagio Jun 18, 2025
650e4d9
Use latest CI toolkit version
mokagio Jun 18, 2025
9b995fb
AINFRA-283 - Set `queue: mac` explicitly in pipeline
mokagio Jun 18, 2025
ef77c96
Add search_text parameter to Activity Logs
kean Jun 18, 2025
30dadca
Update Package.swift
kean Jun 18, 2025
173f1f9
AINFRA-283 - Set `queue: mac` explicitly in pipeline (#838)
mokagio Jun 19, 2025
ae3961c
Add /rewindable
kean Jun 19, 2025
171ff36
Bump rexml from 3.2.6 to 3.3.9
dependabot[bot] Oct 28, 2024
ac6c0fa
Use `linter` queue instead of `default` queue for SwiftLint
spencertransier Oct 11, 2024
05832b6
Change swiftlint command
spencertransier Nov 1, 2024
7ad99f1
Remove unneeded quotes
spencertransier Nov 2, 2024
820fec8
Add support for sending magic links to inexistent accounts
hichamboushaba Nov 14, 2024
5dcbdab
Update changelog.
twstokes Nov 20, 2024
46f82f8
Add PR numbers to public features in changelog
mokagio Nov 21, 2024
644bbf6
Update CocoaPods from 1.15.2 to 1.16.2
mokagio Nov 21, 2024
44eacfb
Update README with XCFramework deployment instructions
mokagio Jun 19, 2025
62938ce
Remove CI steps for CocoaPods – We no longer publish to CocoaPods
mokagio Jun 19, 2025
c3e8741
Merge `trunk` + update README in wpios-edition (#840)
mokagio Jun 22, 2025
ac47809
Add search_text parameter to Activity Logs (#839)
mokagio Jun 24, 2025
d2eb3e9
Merge remote-tracking branch 'origin/trunk' into wpios-edition
mokagio Jun 24, 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
27 changes: 27 additions & 0 deletions .buildkite/create-xcframeworks.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
ROOT="./.build/xcframeworks"

rm -rf $ROOT

for SDK in iphoneos iphonesimulator
do
xcodebuild archive \
-workspace WordPressKit.xcworkspace \
-scheme WordPressKit \
-archivePath "$ROOT/WordPressKit-$SDK.xcarchive" \
-sdk $SDK \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES \
DEBUG_INFORMATION_FORMAT=DWARF
done

xcodebuild -create-xcframework \
-framework "$ROOT/WordPressKit-iphoneos.xcarchive/Products/Library/Frameworks/WordPressKit.framework" \
-framework "$ROOT/WordPressKit-iphonesimulator.xcarchive/Products/Library/Frameworks/WordPressKit.framework" \
-output "$ROOT/WordPressKit.xcframework"

cd $ROOT
zip -r -X WordPressKit.zip *.xcframework
rm -rf *.xcframework

swift package compute-checksum WordPressKit.zip
cd -
50 changes: 10 additions & 40 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json
---

agents:
queue: mac

env:
IMAGE_ID: xcode-15.3-v3

# Nodes with values to reuse in the pipeline.
common_params:
plugins: &common_plugins
- automattic/a8c-ci-toolkit#3.1.0
# Common environment values to use with the `env` key.
env: &common_env
# -v3 contains a workaround for a Simulator boot issue
# See paaHJt-6gL-p2#comment-8712
IMAGE_ID: xcode-15.3-v3
- automattic/a8c-ci-toolkit#3.5.1

# This is the default pipeline – it will build and test the app
steps:
Expand All @@ -21,17 +25,6 @@ steps:
- fastlane/test_output/report.html
- fastlane/test_output/report.junit
- .build/derived-data/Logs/**/*.xcactivitylog
env: *common_env
plugins: *common_plugins

#################
# Validate Podspec
#################
- label: "🔬 Validate Podspec"
key: "validate"
command: |
validate_podspec --patch-cocoapods
env: *common_env
plugins: *common_plugins

#################
Expand All @@ -46,26 +39,3 @@ steps:
context: SwiftLint
agents:
queue: linter

- label: "🧹 Lint"
key: "lint"
command: |
lint_pod
env: *common_env
plugins: *common_plugins

#################
# Publish the Podspec (if we're building a tag)
#################
- label: "⬆️ Publish Podspec"
key: "publish"
command: .buildkite/publish-pod.sh
env: *common_env
plugins: *common_plugins
depends_on:
- "test"
- "validate"
- "lint"
if: build.tag != null
agents:
queue: "mac"
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,13 @@ playground.xcworkspace
# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
# Packages/
# Package.pins
# Package.resolved

# *.xcodeproj
#
# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata
# hence it is not needed unless you have added a package configuration file to your project
# .swiftpm

.swiftpm
Package.resolved
.build/

# CocoaPods
Expand Down
122 changes: 0 additions & 122 deletions Package.resolved

This file was deleted.

46 changes: 7 additions & 39 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -1,50 +1,18 @@
// swift-tools-version: 5.9
// swift-tools-version: 5.10

import PackageDescription

let package = Package(
name: "WordPressKit",
platforms: [.iOS(.v13)],
platforms: [.iOS(.v15)],
products: [
.library(name: "APIInterface", targets: ["APIInterface"]),
.library(name: "CoreAPI", targets: ["CoreAPI"]),
],
dependencies: [
// .package(url: "https://github.com/wordpress-mobile/WordPress-iOS-Shared.git", from: "2.3.1"),
// See https://github.com/wordpress-mobile/WordPress-iOS-Shared/pull/354
.package(url: "https://github.com/wordpress-mobile/WordPress-iOS-Shared.git", branch: "mokagio/swiftlint-read-as-dependency"),
.package(url: "https://github.com/wordpress-mobile/wpxmlrpc", from: "0.10.0"),
// Test dependencies
.package(url: "https://github.com/AliSoftware/OHHTTPStubs", from: "9.1.0"),
.package(url: "https://github.com/Alamofire/Alamofire", from: "5.8.1"),
.library(name: "WordPressKit", targets: ["WordPressKit"]),
],
targets: [
.target(name: "APIInterface"),
.target(
name: "CoreAPI",
dependencies: [
.target(name: "APIInterface"),
.product(
name: "WordPressShared",
package: "WordPress-iOS-Shared",
// Constrain to iOS only to avoid having to explicitly set a macOS version because of this library's requirements.
condition: .when(platforms: [.iOS])
),
"wpxmlrpc"
]
),
.testTarget(
name: "CoreAPITests",
dependencies: [
.target(name: "CoreAPI"),
.product(name: "OHHTTPStubs", package: "OHHTTPStubs"),
.product(name: "OHHTTPStubsSwift", package: "OHHTTPStubs"),
"Alamofire",
],
path: "Tests/CoreAPITests",
resources: [
.process("Stubs") // Relative to path
]
.binaryTarget(
name: "WordPressKit",
url: "https://github.com/user-attachments/files/20825728/WordPressKit.zip",
checksum: "097a2e55e4ec66b4d8c37bc49181df33c4b62ea9d130fac4de057a0867b68a69"
),
]
)
26 changes: 1 addition & 25 deletions Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,38 +8,14 @@ use_frameworks!
APP_IOS_DEPLOYMENT_TARGET = Gem::Version.new('13.0')

platform :ios, APP_IOS_DEPLOYMENT_TARGET
workspace './WordPressKit.xcworkspace'

def swiftlint_version
require 'yaml'

YAML.load_file('.swiftlint.yml')['swiftlint_version']
end

def wordpresskit_pods
pod 'WordPressShared', '~> 2.0.0-beta.2'
pod 'NSObject-SafeExpectations', '~> 0.0.4'
pod 'wpxmlrpc', '~> 0.10.0'
pod 'UIDeviceIdentifier', '~> 2.0'
end

## WordPress Kit
## =============
##
target 'WordPressKit' do
project 'WordPressKit.xcodeproj'
wordpresskit_pods
end

target 'WordPressKitTests' do
project 'WordPressKit.xcodeproj'
wordpresskit_pods

pod 'OHHTTPStubs', '~> 9.0'
pod 'OHHTTPStubs/Swift', '~> 9.0'
pod 'OCMock', '~> 3.4'
pod 'Alamofire', '~> 5.0'
end

abstract_target 'Tools' do
pod 'SwiftLint', swiftlint_version
end
Expand Down
45 changes: 1 addition & 44 deletions Podfile.lock
Original file line number Diff line number Diff line change
@@ -1,59 +1,16 @@
PODS:
- Alamofire (5.8.1)
- NSObject-SafeExpectations (0.0.6)
- OCMock (3.9.3)
- OHHTTPStubs (9.1.0):
- OHHTTPStubs/Default (= 9.1.0)
- OHHTTPStubs/Core (9.1.0)
- OHHTTPStubs/Default (9.1.0):
- OHHTTPStubs/Core
- OHHTTPStubs/JSON
- OHHTTPStubs/NSURLSession
- OHHTTPStubs/OHPathHelpers
- OHHTTPStubs/JSON (9.1.0):
- OHHTTPStubs/Core
- OHHTTPStubs/NSURLSession (9.1.0):
- OHHTTPStubs/Core
- OHHTTPStubs/OHPathHelpers (9.1.0)
- OHHTTPStubs/Swift (9.1.0):
- OHHTTPStubs/Default
- SwiftLint (0.54.0)
- UIDeviceIdentifier (2.3.0)
- WordPressShared (2.0.1)
- wpxmlrpc (0.10.0)

DEPENDENCIES:
- Alamofire (~> 5.0)
- NSObject-SafeExpectations (~> 0.0.4)
- OCMock (~> 3.4)
- OHHTTPStubs (~> 9.0)
- OHHTTPStubs/Swift (~> 9.0)
- SwiftLint (= 0.54.0)
- UIDeviceIdentifier (~> 2.0)
- WordPressShared (~> 2.0.0-beta.2)
- wpxmlrpc (~> 0.10.0)

SPEC REPOS:
trunk:
- Alamofire
- NSObject-SafeExpectations
- OCMock
- OHHTTPStubs
- SwiftLint
- UIDeviceIdentifier
- WordPressShared
- wpxmlrpc

SPEC CHECKSUMS:
Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
NSObject-SafeExpectations: c01c8881cbd97efad6f668286b913cd0b7d62ab5
OCMock: 300b1b1b9155cb6378660b981c2557448830bdc6
OHHTTPStubs: 90eac6d8f2c18317baeca36698523dc67c513831
SwiftLint: c1de071d9d08c8aba837545f6254315bc900e211
UIDeviceIdentifier: 442b65b4ff1832d4ca9c2a157815cb29ad981b17
WordPressShared: f93f99269258b46dad04f4e4dbf540ce2e5c1e66
wpxmlrpc: 68db063041e85d186db21f674adf08d9c70627fd

PODFILE CHECKSUM: 64af6d71574c7a92d01a9446aa874e066917ebe5
PODFILE CHECKSUM: c0da9313733b88a1d938ba6a329dd46b895c7dea

COCOAPODS: 1.15.2
Loading