What is podfile.lock in our Xcode projects and why is it used?

Jeesson_7 picture Jeesson_7 · Mar 8, 2017 · Viewed 9.1k times · Source

I am a beginner in using pods in Xcodeprojects. I have been confused by pod file.lock. I want to update a framework "OBJECTMAPPER" to 2.0 to make it compatible with swift 3. however it does't.

why doesn't it update to the latest version (2.0). Does it have anything to do with pod file.lock. which is as follows->

enter image description here

and why is it used?

Update: The podfile enter image description here

Answer

Jeesson_7 picture Jeesson_7 · Jul 10, 2019

Just In case any one is wondering the same i did 2 years ago. I will tell a small description. When u install a library with cocoapods you will be generated a podlock against it with the version which it(The library) is installed. For example suppose you have library named "XX" and you install it with pods. if the latest version of "XX" is 2.0.0, then u will be installed the latest version and podfile.lock is locked with -(XX - (2.0.0))

Suppose if a new version is released of that library and u dont want it's updates to be installed in our project then use pod install.. This will only install any new library in podfile and will not affect your existing library by updating them to latest code.("This prevents some functions of that library which you have used to not disappear if they have depricated it").This is monitored by podfile.lock

If you want to update "XX" to a newer version in future use pod update for that library