{"id":23149690,"url":"https://github.com/fortechromania/itargetchecker","last_synced_at":"2025-08-17T19:31:44.737Z","repository":{"id":56845837,"uuid":"132310958","full_name":"FortechRomania/iTargetChecker","owner":"FortechRomania","description":"Checks the xcodeproj file for files that are not in all targets and reports them. Useful for iOS projects with multiple targets.","archived":false,"fork":false,"pushed_at":"2018-08-13T15:34:45.000Z","size":28,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-08-14T13:31:29.143Z","etag":null,"topics":["fastlane","fastlane-plugin","ios","ruby-gem","xcodeproj"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FortechRomania.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-06T05:52:04.000Z","updated_at":"2018-08-13T15:34:21.000Z","dependencies_parsed_at":"2022-09-17T11:20:49.303Z","dependency_job_id":null,"html_url":"https://github.com/FortechRomania/iTargetChecker","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/FortechRomania/iTargetChecker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FortechRomania%2FiTargetChecker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FortechRomania%2FiTargetChecker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FortechRomania%2FiTargetChecker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FortechRomania%2FiTargetChecker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FortechRomania","download_url":"https://codeload.github.com/FortechRomania/iTargetChecker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FortechRomania%2FiTargetChecker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270898221,"owners_count":24664697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-17T02:00:09.016Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fastlane","fastlane-plugin","ios","ruby-gem","xcodeproj"],"created_at":"2024-12-17T18:14:57.274Z","updated_at":"2025-08-17T19:31:44.354Z","avatar_url":"https://github.com/FortechRomania.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# itargetchecker plugin\n\n[![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-itargetchecker)\n\n## About itargetchecker\n\nChecks the xcode proj file for targets and points out which files from the project are not present in a certain target.\nUsualy this helps if you have a project with multiple targets and you want to make sure that certain classes/resources from your project are present in each of the targets.\n\nAt the first run you should check the plugin without passing some ignore files just to see what the plugin finds. After the first run, you should check for false alarms and add those files to youre custom ignore list.\n\n**Attention!**  You can use the plugin as a gem as well, without having to setup Fastlane(though it is recommended as it helps a lot)\n\n## Getting Started\n\nThis project is a [_fastlane_](https://github.com/fastlane/fastlane) plugin. \n\nIf you are new to Fastlane or haven't installed a plugin for Fastlane before, please check the plugins section below. \nShortcut for those who don't have time to read more:\n- Execute the following commands:\n```bash\nfastlane add_plugin fastlane-plugin-itargetchecker\nfastlane install_plugins\n ```\n\n After these you should be able to use the plugin as pointed in the example below.\n\n\n## Example\n\nCheck out the [example `Fastfile`](fastlane/Fastfile) to see how to use this plugin. Try it by cloning the repo, running `fastlane install_plugins` and `bundle exec fastlane test`.\nYou can now use regex in the ignored files strings passed to the plugin. That can help you to ignore certain file types like .h or Tests.m.\n\n**Note:** The ignored files added in the sample should be changed to match your own rules. \n\n## Run as gem executable\n\nIf you don't want to install the plugin for fastlane, you can simply run  ```gem install fastlane-plugin-itargetchecker``` and after that you should be able to use itargetchecker.\n\nYou can use the executable as following:\n\n```\nbundle exec itargetchecker \"yourProject.xcodeproj\" \"\\w*\\.framework\\b*#\\w*\\.xcconfig\\b*#\\w*\\.h\\b*#Info.plist\" \"yourProjectTests\" \n```\n\n\nBasicaly the command takes 3 parameters:\n1. the xcodeproj file path\n2. the files to be ignored (if more than 1, # is used to split them -see the exemple above-)\n3. the targets to be ignored (if more than 1, # is used to split them -see the exemple above-)\n\n\n\n**Quick ussage sample:**\n\n```ruby \nitargetchecker(project_path:\"../your_project.xcodeproj\", \n                    ignore_files:[\"\\w*\\.framework\\b*\", \"\\w*\\.xcconfig\\b*\", \"\\w*\\.h\\b*\", \"Info.plist\"],\n                    ignore_targets:[\"your_projectTests\"])    \n```\n\n## Run tests for this plugin (to be continued..)\n\nTo run both the tests, and code style validation, run\n\n```\nrake\n```\n\nTo automatically fix many of the styling issues, use\n```\nrubocop -a\n```\n\n## Issues and Feedback\n\nFor any other issues and feedback about this plugin, please submit it to this repository.\n\n## Troubleshooting\n\nIf you have trouble using plugins, check out the [Plugins Troubleshooting](https://docs.fastlane.tools/plugins/plugins-troubleshooting/) guide.\n\n## Using _fastlane_ Plugins\n\nFor more information about how the `fastlane` plugin system works, check out the [Plugins documentation](https://docs.fastlane.tools/plugins/create-plugin/).\n\n## About _fastlane_\n\n_fastlane_ is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out [fastlane.tools](https://fastlane.tools).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffortechromania%2Fitargetchecker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffortechromania%2Fitargetchecker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffortechromania%2Fitargetchecker/lists"}