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

Remove Stories and Kanvas dependency #23382

Merged
merged 7 commits into from
Jun 24, 2024
Merged

Conversation

kean
Copy link
Contributor

@kean kean commented Jun 24, 2024

The "Stories" feature was decommissioned five months ago: you can no longer created, view, or edit stories natively in the app. This PR removes the remaining code.

  • Reduces the universal .ipa size by another 2.7 MB
  • Removes the Kanvas dependency (25K of Swift) – one less pod to deal with

To test:

  • Open the app and verify that it still runs
  • Open "Site Media" and verify that the cells are displayed

Regression Notes

  1. Potential unintended areas of impact: n/a

  2. What I did to test those areas of impact (or what existing automated tests I relied on): n/a

  3. What automated tests I added (or what prevented me from doing so)

PR submission checklist:

  • I have completed the Regression Notes.
  • I have considered adding unit tests for my changes.
  • I have considered adding accessibility improvements for my changes.
  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

Testing checklist:

  • WordPress.com sites and self-hosted Jetpack sites.
  • Portrait and landscape orientations.
  • Light and dark modes.
  • Fonts: Larger, smaller and bold text.
  • High contrast.
  • VoiceOver.
  • Languages with large words or with letters/accents not frequently used in English.
  • Right-to-left languages. (Even if translation isn’t complete, formatting should still respect the right-to-left layout)
  • iPhone and iPad.
  • Multi-tasking: Split view and Slide over. (iPad)

@dangermattic
Copy link
Collaborator

dangermattic commented Jun 24, 2024

1 Warning
⚠️ This PR is larger than 500 lines of changes. Please consider splitting it into smaller PRs for easier and faster reviews.

Generated by 🚫 Danger

@kean kean force-pushed the task/remove-stories-and-kanvas branch from 8caaa13 to 32a3251 Compare June 24, 2024 18:03
@jkmassel jkmassel added this to the 25.2 milestone Jun 24, 2024
@wpmobilebot
Copy link
Contributor

WordPress Alpha📲 You can test the changes from this Pull Request in WordPress Alpha by scanning the QR code below to install the corresponding build.
App NameWordPress Alpha WordPress Alpha
ConfigurationRelease-Alpha
Build Numberpr23382-32a3251
Version25.1
Bundle IDorg.wordpress.alpha
Commit32a3251
App Center BuildWPiOS - One-Offs #10216
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@wpmobilebot
Copy link
Contributor

Jetpack Alpha📲 You can test the changes from this Pull Request in Jetpack Alpha by scanning the QR code below to install the corresponding build.
App NameJetpack Alpha Jetpack Alpha
ConfigurationRelease-Alpha
Build Numberpr23382-32a3251
Version25.1
Bundle IDcom.jetpack.alpha
Commit32a3251
App Center Buildjetpack-installable-builds #9265
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@@ -86,7 +88,7 @@ final class ExternalMediaPickerViewController: UIViewController, UICollectionVie
}

private func configureCollectionView() {
collectionView.register(cell: ExternalMediaPickerCollectionCell.self)
collectionView.register(ExternalMediaPickerCollectionCell.self, forCellWithReuseIdentifier: Self.cellReuseID)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This method was coming from Kanvas. I'm not sure why it was working without the import – pch, ObjC briding header?

- parameter brightnessValue: A number that represents the brightness of a color. It ranges from 0.0 (black) to 1.0 (white).
- return: YES if brightness is higher than the brightness value provided.
*/
public func brighterThan(_ brightnessValue: Double) -> Bool {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copied form Kanvas.

@@ -63,7 +65,7 @@ extension QuickStartChecklistManager: UITableViewDelegate {
}

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: QuickStartChecklistHeader.identifier) as? QuickStartChecklistHeader
let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: QuickStartChecklistHeader.defaultReuseID) as? QuickStartChecklistHeader
Copy link
Contributor Author

Choose a reason for hiding this comment

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

The registration code looks like this:

tableView.register(QuickStartChecklistHeader.defaultNib, forHeaderFooterViewReuseIdentifier: QuickStartChecklistHeader.defaultReuseID)

The identifier was coming from Kanvas and its Identifiable protocol.

@kean kean requested a review from jkmassel June 24, 2024 19:10
@kean kean modified the milestones: 25.2, Pending Jun 24, 2024
@jkmassel jkmassel merged commit fc50d1a into trunk Jun 24, 2024
25 of 30 checks passed
@jkmassel jkmassel deleted the task/remove-stories-and-kanvas branch June 24, 2024 20:15
jkmassel added a commit that referenced this pull request Jul 5, 2024
commit e0fd9fd
Author: Gio Lodi <[email protected]>
Date:   Wed Jul 3 15:08:20 2024 +1000

    Explicitly set mac queue in Buildkite pipeline (#23402)

commit 312df0f
Author: Gio Lodi <[email protected]>
Date:   Mon Jul 1 17:37:37 2024 +1000

    Bump Fastlane `xcodebuild -showBuildSettings` interval (#23403)

    This is an attempt to avoid timeouts, mostly in CI.

commit bae5a91
Author: WordPress Mobile Bot Account <[email protected]>
Date:   Thu Jun 27 09:08:50 2024 +1000

    Merge 25.1 release finalization (#23391)

    * Fix announcement card keep showing up after tapping Done (#23384)

    * Update app translations – `Localizable.strings`

    * Update WordPress metadata translations

    * Update Jetpack metadata translations

    * Bump version number

    ---------

    Co-authored-by: David Christiandy <[email protected]>

commit c508e4f
Author: Alex Grebenyuk <[email protected]>
Date:   Tue Jun 25 23:47:11 2024 -0400

    Remove AlamofireNetworkActivityIndicator (#23385)

commit 7bc34eb
Author: kean <[email protected]>
Date:   Tue Jun 25 11:00:32 2024 -0400

    Remove deprecated in JetpackBrandingVisibility.enabled

commit 9c8ff9a
Author: kean <[email protected]>
Date:   Tue Jun 25 10:58:55 2024 -0400

    Fix more warnings

commit 55e0cd4
Author: kean <[email protected]>
Date:   Tue Jun 25 10:53:34 2024 -0400

    Fix warnings in CachedAsyncImage

commit 1f78c63
Author: kean <[email protected]>
Date:   Tue Jun 25 10:51:42 2024 -0400

    Fix warnings in MemoryCache

commit 9d86b6b
Author: Povilas Staskus <[email protected]>
Date:   Tue Jun 25 09:06:16 2024 +0200

    Support editing media metadata via XML-RPC #809 (#23316)

    * Support media metadata editing for XML-RPC connected self-hosted sites

    - Updated WordPressKit supports editing title, description, and caption of the media via XML-RPC
    - XML-RPC API doesn't support editing alt-text

    * Support editing media metadata via XMLRPC in MediaService

    Media is a type of a post therefore "wp.editPost" can be used to edit media metadata. Note that alternative text cannot be edited due to lack of XML-RPC support https://core.trac.wordpress.org/ticket/58582

    * Update RELEASE-NOTES.txt

commit d8a1348
Author: Povilas Staskus <[email protected]>
Date:   Tue Jun 25 09:05:13 2024 +0200

    Add unique identifier to file downloads rows (#23310)

    File Downloads data can be identical which can result in a rare duplicate diffable data source identifiers crash. Pass a unique identifier to ensure that each file downloads row is treated as unique.

commit 09137d3
Merge: fc50d1a c88e54a
Author: Jeremy Massel <[email protected]>
Date:   Mon Jun 24 14:16:17 2024 -0600

    Reduce App Size – Assets (#23381)

commit fc50d1a
Merge: 2270784 32a3251
Author: Jeremy Massel <[email protected]>
Date:   Mon Jun 24 14:15:55 2024 -0600

    Remove Stories and Kanvas dependency (#23382)

commit 2270784
Merge: 2ee755c f76856a
Author: Jeremy Massel <[email protected]>
Date:   Mon Jun 24 13:50:40 2024 -0600

    Update rubocop.yml (#23383)

commit f76856a
Author: kean <[email protected]>
Date:   Mon Jun 24 15:27:29 2024 -0400

    Update rubocop.yml

commit 32a3251
Author: kean <[email protected]>
Date:   Mon Jun 24 13:52:46 2024 -0400

    Remove Kanvas pod

commit c93087b
Author: kean <[email protected]>
Date:   Mon Jun 24 13:30:10 2024 -0400

    Remove StoriesIntroViewController

commit e64e98d
Author: kean <[email protected]>
Date:   Mon Jun 24 13:25:40 2024 -0400

    Replace remaining Kanvas usages

commit 3ec3d0d
Author: kean <[email protected]>
Date:   Mon Jun 24 12:26:35 2024 -0400

    Remove StoryEditor

commit 4b66f07
Author: kean <[email protected]>
Date:   Mon Jun 24 12:17:06 2024 -0400

    Remove Kanvas related code

commit 4812e5b
Author: kean <[email protected]>
Date:   Mon Jun 24 12:13:48 2024 -0400

    Remove remaining Kanvas related code

commit f7743b6
Author: kean <[email protected]>
Date:   Mon Jun 24 12:11:30 2024 -0400

    Remove custom fonts used by Kanvas

commit c88e54a
Author: kean <[email protected]>
Date:   Mon Jun 24 10:44:12 2024 -0400

    Replace JPBackground with tiny-fied icons

commit a9d80c8
Author: kean <[email protected]>
Date:   Mon Jun 24 10:33:29 2024 -0400

    Reduce rppreview size

commit ac82126
Author: kean <[email protected]>
Date:   Mon Jun 24 10:27:29 2024 -0400

    Remove unused site creation icons

commit 5b8a5a3
Author: kean <[email protected]>
Date:   Mon Jun 24 10:21:00 2024 -0400

    Remove Stories related files

commit 6f98ffd
Author: kean <[email protected]>
Date:   Mon Jun 24 10:19:06 2024 -0400

    Move JPBackground to AppImage specific to the Jetpack app

commit dd78ad7
Author: kean <[email protected]>
Date:   Mon Jun 24 10:09:20 2024 -0400

    JPBackground as png

commit 2ee755c
Merge: 81bc1c5 3835956
Author: Alex Grebenyuk <[email protected]>
Date:   Fri Jun 21 10:13:38 2024 -0400

    Fix rare crash in GutenbergWebViewController (#23379)

commit 81bc1c5
Merge: 6dc78ec 465047a
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 13:30:39 2024 +0300

    Stats: Improve scrolling performance  (#22847)

commit 465047a
Merge: bc88b72 6dc78ec
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 11:00:43 2024 +0300

    Merge branch 'trunk' into task/22721-stats-traffic-improve-scrolling-performance

commit bc88b72
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 10:57:00 2024 +0300

    Put analyticsTracker back since it's used by JetpackBanner

commit 1b8bc1c
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 10:52:21 2024 +0300

    Create StatsRowsCell with default child stack view rows and ability to configure more

commit 89fd816
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 10:28:28 2024 +0300

    Make maximum content size category smaller for stats cell subtitles

commit 51992ab
Author: Povilas Staskus <[email protected]>
Date:   Fri Jun 21 10:28:01 2024 +0300

    Remove force layout calls when setting subtitle visibility

    These calls were added together with dynamic type support, however, they slow down layout process of the cell

commit 3835956
Author: kean <[email protected]>
Date:   Thu Jun 20 10:27:02 2024 -0400

    Update release notes

commit 26bd9b3
Author: kean <[email protected]>
Date:   Thu Jun 20 10:23:16 2024 -0400

    Fix rare crash in GutenbergWebViewController

commit 7684a35
Author: Povilas Staskus <[email protected]>
Date:   Thu Jun 20 10:48:25 2024 +0300

    Move additional checks for adding default rows into the extension

commit 25bf46d
Author: Povilas Staskus <[email protected]>
Date:   Wed Jun 19 13:47:26 2024 +0300

    Update RELEASE-NOTES

commit 8884f81
Merge: 2674401 1c05916
Author: Povilas Staskus <[email protected]>
Date:   Wed Jun 19 13:35:52 2024 +0300

    Merge branch 'trunk' into task/22721-stats-traffic-improve-scrolling-performance

commit 2674401
Author: Povilas Staskus <[email protected]>
Date:   Thu Apr 11 15:57:07 2024 +0300

    Update CountriesCell to use setNeedsLayout for more efficiency

commit eb7c142
Author: Povilas Staskus <[email protected]>
Date:   Thu Apr 11 15:45:56 2024 +0300

    Update TopTotalsCell to use setNeedsLayout for more efficiency

commit d0af997
Author: Povilas Staskus <[email protected]>
Date:   Wed Apr 10 11:40:38 2024 +0300

    Update RELEASE-NOTES.txt

commit 8fb2eb4
Merge: 9252c6f d79aa28
Author: Povilas Staskus <[email protected]>
Date:   Wed Apr 10 10:07:24 2024 +0300

    Merge branch 'trunk' into task/22721-stats-traffic-improve-scrolling-performance

commit 9252c6f
Author: Povilas Staskus <[email protected]>
Date:   Mon Mar 18 17:05:19 2024 +0200

    Do not track StatsTraffic tableView scrolling

commit 9880cb7
Author: Povilas Staskus <[email protected]>
Date:   Mon Mar 18 17:05:02 2024 +0200

    Optimize CountriesCell to add rows only when the cell loads

commit 98d5b77
Author: Povilas Staskus <[email protected]>
Date:   Mon Mar 18 16:45:44 2024 +0200

    Optimize TopTotalsCell to add rows only when the cell loads

    TopTotalsCell was calling addRows on every configuration of cell which in turn created and added a hierarchy of UIStackView-based views.

    Optimizing TopTotalsCell to only add rows once and then make manipulations on existing rows.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants