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

Add support for tvOS and any possible future platforms. #14

Merged
merged 3 commits into from
Oct 30, 2015

Conversation

manuyavuz
Copy link
Member

Solves #11.

  • Includes specs for missing watchos cases, tvos, and any future platform
  • Updates Gemfile.lock to cocoapods 0.39.0
  • Includes CHANGELOG

- Include specs for missing watchos cases, tvos, and any future platform.
- Update Gemfile.lock to cocoapods 0.39.0
@@ -13,26 +13,37 @@ class Search < Command
CLAide::Argument.new('QUERY', true),
]

def self.all_platforms
Copy link
Member

Choose a reason for hiding this comment

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

Maybe just define this as module_function?

@manuyavuz
Copy link
Member Author

@segiddins, What do you think about adding all_platforms method to dsl.rb in cocoapods core?

@segiddins
Copy link
Member

@manuyavuz I'd prefer it be a class method on Platform, personally.

@manuyavuz
Copy link
Member Author

It seems good to me.

I also see there is a class method string_name in Platform class which gives pretty name of the platform symbols. I can use it while printing options description.

I'll make class method all_platforms on Platform which returns Array<Platform>. It would be more convenient.

@segiddins
Copy link
Member

Sounds perfect!

@floere
Copy link
Member

floere commented Oct 30, 2015

Or perhaps Platform.all?

@manuyavuz
Copy link
Member Author

@floere you're right, that is better!

@manuyavuz
Copy link
Member Author

I get the following error while running specs:

NoMethodError: undefined method `all' for Pod::Platform:Class
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/lib/cocoapods-search/command/search.rb:34:in `initialize': option --web - includes any new platform option correctly
    /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:334:in `new'
    /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:334:in `parse'
    /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:330:in `parse'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/command.rb:9:in `command'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/command.rb:19:in `block in run_command'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/command.rb:13:in `chdir'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/command.rb:13:in `run_command'
    spec/command/search_spec.rb:137:in `block (3 levels) in <module:Pod>'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/pre_flight.rb:34:in `call'
    /Users/manuyavuz/Development/OpenSource/Cocoapods/Rainforest/cocoapods-search/spec/spec_helper/pre_flight.rb:34:in `block in <class:Context>'
    spec/command/search_spec.rb:134:in `block (2 levels) in <module:Pod>'
    spec/command/search_spec.rb:96:in `block in <module:Pod>'
    spec/command/search_spec.rb:4:in `<module:Pod>'
    spec/command/search_spec.rb:3:in `<top (required)>'

I actually added the method to the class. Also when I run pod search --help, it prints description successfully. While running command, it finds the method, however, during tests it fails.

I see from trace that claide is used from default installation, not local repo. Will it cause core repo to be used from default installation also?

PS: I successfully set rake local_dependencies_set from Rainforest.

cc: @segiddins

@segiddins
Copy link
Member

Yeah, you'll need to point to your branch of core in the gemfile

@manuyavuz
Copy link
Member Author

We can check correctness now because I pointed gems to updated repos. However, how we will manage it correctly? Will you update these while releasing the next release?

@segiddins
Copy link
Member

Dependent PR merged, if you update the gemfile and bundle install we can merge

@manuyavuz manuyavuz force-pushed the imp/supportAllFuturePlatforms branch from 635849b to 1ea0580 Compare October 30, 2015 22:18
@manuyavuz
Copy link
Member Author

@segiddins Travis fails because it needs head version of cocoapods and core. Will you merge like this and wait for release?

@segiddins
Copy link
Member

Ah sorry, the Gemfile needs to be pointing to HEAD... I didn't express that well

@manuyavuz
Copy link
Member Author

Sorry to repeat but I can only get a success from specs with the following Gemfile:

source 'https://rubygems.org'

# Specify your gem's dependencies in cocoapods-search.gemspec
gemspec

group :development do
  gem 'cocoapods', :github => 'CocoaPods/CocoaPods', :ref => 'HEAD'
  gem 'cocoapods-core', :github => 'CocoaPods/Core', :ref => 'HEAD'
  gem 'bacon'
  gem 'mocha-on-bacon'
  gem 'prettybacon'
end

@segiddins Do you have any other suggestions?

@segiddins
Copy link
Member

@manuyavuz
Copy link
Member Author

It's ready!

@segiddins
Copy link
Member

:D 🚢

segiddins added a commit that referenced this pull request Oct 30, 2015
Add support for tvOS and any possible future platforms.
@segiddins segiddins merged commit fc82cb2 into CocoaPods:master Oct 30, 2015
@floere
Copy link
Member

floere commented Oct 30, 2015

👍

@manuyavuz manuyavuz deleted the imp/supportAllFuturePlatforms branch November 3, 2015 19:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants