Swift Dependency Management for iOS

iOSDev
Dependency/Package Manager Most modern languages come with an official solution for code distribution. In today's world of modern mobile development, it is essential to re-use the code already written by developers. Code reuse can be achieved by creating and distributing the packages from central repository. A package manager is a tool that simplifies the process of working with code from multiple sources. Typical Package Manager should have ability to do following things Centralised hosting of packages and source code with public server with access to developers or contributors Download the source code at the run time, so that we don't need to include it in the repository. Link the source code to our working repository by including source files. Allow packages to be versioned The examples of popular package managers are RubyGems for Ruby , Composer for…
Read More
Apple Swift Package Manager : A Deep Dive

Apple Swift Package Manager : A Deep Dive

Automation, DevOps, iOSDev
Apple has released it's own package manager called 'Swift Package Manager' to share and distribute Swift packages. It's good to know that Apple is working on replacement of the current loved and hated package managers in the iOS development world those are CocoaPods and Carthage. In this article, we will cover basics of package management & deep dive into package management in iOS especially Swift Package Manager. Current iOS Package Managers Most modern languages come with an official solution for code distribution e.g RubyGems for Ruby,  Composer for PHP , NPM for NodeJS. In the iOS development world, developers has to rely on third party dependency management tools like CocoaPods and Carthage. The package managers in iOS has a additional job of building the code on top of downloading. Package manager should able to download as…
Read More

PHP Continuous Integration Template using Composer and JenkinsCI

Automation
PHP-Jenkins Template Jenkins is a very popular Continuous Integration tool these days and using it with PHP project is became so easy with help of Jenkins-PHP  template  project. This project gives us ultimate guide to get started with basic setup of the PHP related tools and Jenkins plugins. You can install Jenkins on various platform, in my old blog post 'Adventures with JenkinsCI on Mac OSX and Linux' we have covered Jenkins installation. I got my JenkinsCI instance running on Mac OSX [http://localhost:8080] Install Jenkins-PHP Plugins Let's now install basic Jenkins plugins using Jenkins-CLI. In iTerm type following commands to install these required plugins: [crayon-58a984f685e31656026459/] Here are some more useful plug-ins like phing, Ruby, RVM, PHP and Rake. You can install and restart Jenkins. [crayon-58a984f685e3f563854846/] Now, you should see something…
Read More