Most broadly, all versions of the GPL allow developers to copy, create, and modify code and freely redistribute it to other users who also may freely modify and redistribute it. However, on June 29, 2007, the Free Software Foundation released the hotly-debated final draft of GPL 3. GPL 3 had been several years in the making.
The goal of GPL 3 is to bring the concepts of GPL 2 into the modern era by addressing certain of GPL 2’s loopholes and omissions. In large part, GPL 2 did not provide patent protection for software because it wasn’t needed. At the time of GPL 2’s release in 1991, it addressed proprietary software head-on by its mere existence. The GPL was true free software and required downstream users who modified, developed, or used it to maintain its free nature by providing all source code downstream. However, GPL 2 no longer addresses the modern world’s problems.