Skip to content
This repository was archived by the owner on Sep 4, 2018. It is now read-only.
This repository was archived by the owner on Sep 4, 2018. It is now read-only.

Allow installing plugins with git submodule dependencies #454

@tjarratt

Description

@tjarratt

Hello!

I'm an author and maintainer of a couple few Xcode plugins (notably Better Console, Cedar Shortcuts and Better Refactor Tools). A few people have asked me to make these installable via Alcatraz, and I was pretty excited to do this.

Unfortunately I learned that my plugins aren't installable because they have dependencies that I track via git submodules. I took a look at a few other plugins and it looks like none of them link against frameworks, so maybe I'm unique in having this problem?

I believe that my plugins could be installed by Alcatraz if the following changed...

  1. issue the git submodule update --init --recursive command after cloning a repo
    • for projects with submodules, these need to be updated before building
  2. xcode clean build ... should be able to take in the scheme name
  • since build settings such as FRAMEWORK_SEARCH_PATHS are stored on the scheme, rather than the target, any plugin that wants to link against a framework or have other build settings will need to specify the scheme.

Would a PR adding the optional uses_submodules and scheme_name flag to the package JSON format, along with some changes to the ATZPluginInstaller class to support this be well received? I haven't dug into the code too deeply, perhaps there's a better place where this behavior could be implemented?

Also, I'm a strong believer in TDD. Are there tests for the Alcatraz plugin that I can refer to? I'd love to be able to contribute tests for these changes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions