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

Application Refactor for Merging OpenEBooks #1070

Closed
wants to merge 13 commits into from
Closed

Application Refactor for Merging OpenEBooks #1070

wants to merge 13 commits into from

Conversation

ghost
Copy link

@ghost ghost commented Oct 30, 2019

What's this do?
[Description of what this PR does goes here]

Why are we doing this? (w/ JIRA link if applicable)
[Quick blurb about why the code is needed and Jira link goes here / Do these changes meet the business requirements of the story?]

How should this be tested? / Do these changes have associated tests?
[Description of any tests that need to be performed once merged goes here]

Dependencies for merging? Releasing to production?
[Description of any watchouts, dependencies, or issues we should be aware of goes here]

Has the application documentation been updated for these changes?

Kyle Sakai added 2 commits October 30, 2019 14:23
# Conflicts:
#	Simplified/NYPLCatalogNavigationController.m
#	Simplified/NYPLCatalogUngroupedFeedViewController.m
#	Simplified/NYPLConfiguration.h
#	Simplified/NYPLConfiguration.m
#	Simplified/NYPLHoldsNavigationController.m
#	Simplified/NYPLMyBooksNavigationController.m
#	Simplified/NYPLMyBooksViewController.m
#	Simplified/NYPLReaderSettings.m
#	Simplified/NYPLReaderSettingsView.m
#	Simplified/NYPLReaderTOCViewController.m
#	Simplified/NYPLReaderViewController.m
@ghost ghost requested review from leonardr and MalcolmMcFly October 30, 2019 22:54
<key>NSCameraUsageDescription</key>
<string>Open eBooks requires access to the camera in order to scan your library card.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>This service is available to New York State residents only. In order to determine your location, please allow access</string>
Copy link
Contributor

Choose a reason for hiding this comment

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

Presumably you need to provide a value for this string, but this particular string is inaccurate for Open eBooks. If you do need a value for this string, it would be better to have the equivalent of "this can't happen" so we can treat it as a bug if it ever shows up.

In the medium term we'll hopefully be removing the native card creator code and this can go away when that does.

Copy link
Author

Choose a reason for hiding this comment

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

Can confirm they require this string even if we don't actually use location services. As per your suggestion, how about "Oops! Looks like OpenEBooks is accidentally requesting location services. Please report a bug!"

Copy link
Contributor

Choose a reason for hiding this comment

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

Since there's no way to submit a bug within the iOS interface that I can find, I vote "Open eBooks never tracks or uses your location. Please take a screenshot and email it to info@openebooks.net so we can fix this error."

@leonardr
Copy link
Contributor

Just so we have a link, this is for https://jira.nypl.org/browse/SIMPLY-2062.

Obviously I'm not qualified to review this whole thing but what I do understand brings up one major concern. The SimplyE mobile app asks for permission to check the patron's location, and the Open eBooks mobile app shouldn't ask for that permission. I noticed that you've got strings talking about the mobile permission in some kind of Open eBooks resource file, and I want to make sure that we don't build an app that asks for a new permission we don't need, potentially freaking out patrons.

@ettore
Copy link
Collaborator

ettore commented Apr 8, 2020

This PR was open more than 5 months ago and SimplyE has changed a lot since then. For instance the app delegate has been updated, but I see here it has been rewritten in swift. So we would need to integrate all those changes in. Same thing for Accounts.swift, NYPLConfiguration and probably others.

I also see large sections of code being removed from Navigation controllers, but I don't know why.

So I don't think I have enough context to review this. We should rebase this branch but since so much time has passed we would really need to revisit all these changes carefully. Otherwise we'll be in regressions hell.

I would leave the Swift rewrites outside of this PR. The reason is it's extremely hard to review changes between 2 classes in different languages, and on top of that across different apps. We can probably use some of the code you wrote here and do those changes individually in a separate PR, and merge those first. Or, do the swift rewrite after the merge.

The goal here should be to have as few changes as possible in order to minimize merge conflicts and more importantly regressions.

ettore added a commit that referenced this pull request Sep 9, 2020
- Don't add account selection button (top-left nav item in Catalogs, MyBooks, Holds) for OE.
- Refactor migrations for SE and OE. Add migration for AdobeDRM user/device IDs.
- Add preprocessor macros to identify SE / OE.
- Add strings for OE Tutorial screens.
- Add OE URLs in configuration file.
- Refactor Settings classes for OE in Swift. SE still uses old implementation.
- Rename OE icon to match SE's equivalent and ease launch process set-up.
- Add generic VC presentation utility.

Much of this code was taken from old PR for merging OE in SE: #1070
ettore added a commit that referenced this pull request Sep 17, 2020
New classes taken from original OE PR: #1070

This leaves the SimplyE part as-is
ettore added a commit that referenced this pull request Sep 17, 2020
New classes taken from original OE PR: #1070

This leaves the SimplyE part as-is
@ettore
Copy link
Collaborator

ettore commented Dec 16, 2020

Closing since we shipped the refactored OE.

@ettore ettore closed this Dec 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants