cordova-common icon indicating copy to clipboard operation
cordova-common copied to clipboard

feat: Support finding an unprefixed Info.plist file

Open dpogue opened this issue 1 year ago • 1 comments

Platforms affected

iOS

Motivation and Context

Currently the Info.plist file in a generated iOS project is prefixed with the project name (i.e., HelloCordova-Info.plist), and plugins have to set up their config-file/edit-config directives to use wildcards like **/*-Info.plist.

The standard way for Xcode projects is to just have Info.plist in the project, and this gets us one step closer to supporting that.

Description

  • Try to find an unprefixed Info.plist, falling back to the AppName-Info.plist
  • Cache the result of the Xcodeproj name to avoid repeated globs
  • Streamline plist loading to avoid reading the file twice
    • This allows us to drop the read-chunks dependency in next major

Testing

Added a new test for the Info.plist behaviour. All existing tests pass.

Checklist

  • [x] I've run the tests to see all new and existing tests pass
  • [x] I added automated test coverage as appropriate for this change

dpogue avatar Aug 23 '24 16:08 dpogue

Codecov Report

:white_check_mark: All modified and coverable lines are covered by tests. :white_check_mark: Project coverage is 94.62%. Comparing base (fe09756) to head (84a96f8). :warning: Report is 9 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #212      +/-   ##
==========================================
+ Coverage   93.86%   94.62%   +0.76%     
==========================================
  Files          20       20              
  Lines        4008     4021      +13     
==========================================
+ Hits         3762     3805      +43     
+ Misses        246      216      -30     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov-commenter avatar Aug 23 '24 16:08 codecov-commenter