title: Ansible - what are the differences between version 2, 3, and 4?
body: <p>Previously I used ansible 2.x and now the latest ansible version is 4.x. Having read <a href="https://docs.ansible.com/ansible/devel/roadmap/ansible_roadmap_index.html" rel="noreferrer">Ansible Roadmap</a> and <a href="https://www.ansible.com/blog/announcing-the-community-ansible-3.0.0-package" rel="noreferrer">Announcing the Community Ansible 3.0.0 Package</a> but not clear what are the differences among versions 2, 3, and 4. It looks version 2.x (base or core) is included in Ansible 3.x and seemingly in 4.x as well. It is not clear if playbooks developed with Ansible 2.9 is compatible in Ansible 4.x.</p>
  <p>How can I clearly understand their differences? Please advise the best resources to understand the differences between Ansible 2, 3, and 4.</p>
  <ul>
  <li><a href="https://www.ansible.com/blog/announcing-the-community-ansible-3.0.0-package" rel="noreferrer">Announcing the Community Ansible 3.0.0 Package</a></li>
  </ul>
  <blockquote>
  <p>Today, there are 3 distinct artefacts in the Ansible open source
  world:</p>
  <p>Ansible Core - A minimal Ansible language and runtime (soon to be
  renamed from ansible-base) Ansible Collections on Galaxy (community
  supported) Ansible community package - Ansible installation including
  ansible-base/core plus community curated Collections Now that these
  artefacts are managed separately, their versions are diverging as
  well. Moving forward, Ansible Core will maintain its existing
  numbering scheme (similar to the Linux Kernel). The next version of
  Ansible Core after ansible-base 2.10 will be ansible-core 2.11. The
  Ansible community package (Ansible Core + community Collections) is
  adopting semantic versioning. The next version of the Ansible
  community package after 2.10 is 3.0.0.<br>
  <a href="https://i.stack.imgur.com/d7QkGl.png" rel="noreferrer"><img src="https://i.stack.imgur.com/d7QkGl.png" alt="enter image description here" /></a></p>
  </blockquote>