Commit Graph
15 Commits
Author SHA1 Message Date
Álvaro Brey 01fdf642d2 Fix fastlane setup_dev in submodule checkouts and with PATH-installed swiftlint (#7330)
* fix(pre-commit): find swiftlint via PATH before homebrew paths

* fix(setup_dev): resolve hooks dir via git, skip brew if swiftlint present
2026-07-31 14:51:20 +00:00
Facundo Menzella 02625c3b78 chore: Update swiftlint commit hook (#5993)
* chore: Update swiftlint commit hook

* chore: Update swiftlint commit hook

* nits
2026-01-06 09:16:51 +01:00
Pol Piella AbadiaandHidde van der Ploeg 7138c59a5b SampleCat: A new iOS Sample app that guides users through any configuration issues (#5200)
* Initial app creation

* Initial screen

* Installs and configures the SDK

* Creates a full Swift 6 compliant ViewModel

* Adds a demo customer center button

* Fixes icon name

* Updates a bit of the logic to fetch offerings

* Updates initial layout by showing offerings

* Makes more progress with a VERY DRAFT and VERY WIP screen

* Creates a new network path and requests

* Creates a new health API and adds it to the BE class

* Creates a `checkOfferings` method

* Pushes local changes

* Moved viewmodels to separate files

* Prepared some basic UI structure

* Adds specific branch of `purchases-ios` for testing

* Gets the sample app back to compiling

* Shows products

* Initial implementation of the products view

* More progress

* More changes

* Added first illustrations

* Added noise background and visual to offerings

* Presenting Product on tap

* made more progress on sample

* Removed NavBar

* Fetches offerings with the latest changes to the SDK

* Adds offerings view

* Maps packages into offering

* Updates app so that we can show a list of the packages that belong to an offering

* Moves all logic to a dedicated health view model

* Adds a full-screen blocking error to the app

* More slight adjustments

* Adds a way to purchase products directly from the Sample App

* Adds an empty StoreKit Configuration file to the scheme

* Changes bundle id

* Only allow scroll behaviour to bounce where it makes sense

* Bit of a better layout for the full screen error

* Points RC Swift Package back to the `main` branch

* Re-adds error messages to make sure that we can just point the user in the right direction

* Updates product cell to have better styles and test purchase button

* Updates `ProductCell` to make sure purchased products can be shown

* Removes unnecessary files from PR

* Formats files

* Removes warning

* Adds project to the API checker script

* Adds project to the update revision fastlane script

* Updates error view

* Removes storekit config file temporarily

* Updates name of property to match dashboard

* Updates entitlementId name

* Adds storekit file back to the scheme (this will get injected from the BE)

* Optimizes app icon to reduce repo size

* Reduces app icon file

* Remove instead of comment out

* Removes unused `EntitlementsView`

* Removes duplicate

* Removes all headers from Swift files

* Uses string directly rather than property holding single string

* canNot to cannot

* Renames products to packages

* Refactors logic to tidy up a bit

* Moves types over to their own files

* More tidying up

* Renames properties from sdk to loaded

* Removes previews that do not work

* Renames `purchasable` to `viewModel`

* Fixes sendability issues

* Converts folders to groups instead

---------

Co-authored-by: Hidde van der Ploeg <hiddevanderploeg@me.com>
2025-06-05 11:41:50 +01:00
Facundo Menzella b89d678f28 fix pre-commit hook to lint files with spaces in the path (#5186) 2025-05-28 12:27:54 +02:00
Antonio Pallares b077e9e0b9 Config item rename (#4798)
* add deeper explanation to `refreshableDisabled()` modifier introduce in #4793

* refactor: rename `ConfigItem` to `Constants` in PaywallsTester app

* fix lint warnings
2025-02-19 12:41:15 +01:00
Antonio Pallares af30b55cae Use RC API key for local development from local.xcconfig (#4795)
* feat: have testing apps take RevenueCat API key and Proxy URL from local.xcconfig file

* fix wording mistakes in `Local.xcconfig.SAMPLE`

* chore: include `ConfigItem.swift` file in `verify_no_included_apikeys` check

* fix more mistakes in comments
2025-02-19 09:48:25 +01:00
Facundo Menzella b1631bcb46 fix: Do not lint deleted files (#4687) 2025-01-21 10:58:53 +01:00
Andy Boedo 28b5f2dbf1 More project structure cleanup (#4131)
## More project structure cleanup: 

- Removes redundant workspace and project files for PurchaseTester
- Cleans up bad references
- Cleans up certificates
- Re-does the process to deploy PurchaseTester, since it was designed to
run from the xcworkspace, which doesn't work anymore.
- adds a `dry-run` option to deploying PurchaseTester and adds a job for
it in the all-tests workflow. It tries building it and archiving but
doesn't actually publish to TestFlight. We didn't really have a test for
this, so it's another thing that could have broken in production.
2024-07-31 16:43:15 -03:00
JayShortway 3090da18d6 Only checks staged files for leftover API keys. (#4073) 2024-07-17 15:49:54 +02:00
James Borthwick 1f16a59966 Paywalls Tester: App Store Prep (#3889)
This PR:

- Updates the bundle name to com.revenuecat.app (a new app in App Store
Connect has been set up.)
- Updates the icon.
- Update the app's Display Name to Revenue Cat.
- Removes unneeded keys for "demos" and "testing".
- Changes how keys are stored/managed locally. I'm not completely happy
with this arrangement, but I think it's an improvement because local
keys are now stored in a separate file which can be marked as
`skip-worktree` or `assume-unchanged` which hides them from the diff to
help you not commit changes in it accidentally (which I have done).
- Adds a file in the pre-commit hook to check for keys in
`LocalConfigItems.swift`

For this to compile in release, and the demos tab to show up, the
changes from [this
PR](https://github.com/RevenueCat/purchases-ios/pull/3885) are needed.
2024-05-15 15:53:41 -07:00
NachoSoto 432b704dc7 Purchase Tester: added companion watchOS app (#2140)
I added this in order to debug #2132.

### Changes:
- Extracted `Core` framework to be used by both apps
- Added new `watchOS` target
- Changed `fastlane match` to also create profiles for this new target
- Added a simple view in the watch app that displays a text if an
entitlement is active, or a `restore` purchases button otherwise

This is just a starting point, we can add more to it in the future.

#### Note:
_Unfortunately I haven't been able to test this because of an Apple bug
(`FB11873951`):_


![incoming-722CC7FA-D970-4E23-AB88-50167248D98D](https://user-images.githubusercontent.com/685609/207672762-23abe3e7-6052-4b16-bdf2-7b1e502ffd81.PNG)
2022-12-21 07:31:58 -08:00
NachoSoto 849efdaa5b pre-commit hook: also verify leftover API keys in PurchaseTester (#1914)
See #1756.
2022-09-21 09:35:11 -07:00
NachoSoto 6d37c766b6 SwiftLint: fixed deprecation warning (#1809)
I noticed this new warning in the `pre-commit` hook:
> warning: The --path option is deprecated. Pass the path(s) to lint last to the swiftlint command.

This fixes that.
2022-08-09 13:43:03 -07:00
NachoSoto ee2a56165f Added pre-commit hook to ensure API keys aren't committed (#1756)
Fixes [CSDK-273].
2022-07-25 11:56:59 -07:00
Joshua Liebowitz 06eb4419ae Add setup_dev fastlane lane (#528)
* Add setup_dev fastlane lane

Add fastlane lane for dev setup
Update documentation
Add pre-commit hook script and link it during dev setup
Add SwiftLint to new build phase step in project so people can see issues before commit.

* test

* Fail the pre-commit with friendly message if swiftlint fails

* remove comma from message
2021-06-15 10:27:46 -07:00