Exercise 1: Why Catalina Switched to zsh — Possible Solution ==================================================================== THE SPECIFIC LICENSING REASON ------------------------------ Per this chapter, bash versions from 4.0 onward are licensed under the GPLv3, and Apple's legal position avoids shipping GPLv3-licensed software as part of macOS. Since newer bash releases carry that license, Apple could not simply keep bundling an up-to-date bash without taking on GPLv3 obligations it wanted to avoid. WHAT VERSION STILL SHIPS, AND WHY THAT ONE ------------------------------ macOS still bundles bash today, but it is bash 3.2 specifically - the last release made under the older GPLv2 license, before the switch to GPLv3. Apple kept this exact version, frozen in place, rather than removing bash entirely, so that scripts explicitly written to call bash (via a #!/bin/bash shebang, for instance) would keep working for backward compatibility - it was chosen precisely because it's the newest version still under a license Apple is willing to ship. WHY THIS WORKS AS AN ANSWER ------------------------------ It correctly identifies the GPLv3 licensing change in bash 4.0+ as the specific reason for the shell switch, and correctly names bash 3.2 as the frozen version still bundled, explaining that its GPLv2 status - not any technical limitation - is why that particular version was kept rather than a newer one.