What steps do REP token holders need to take in order to prepare for the upcoming REP token contract migration on July 9th, 2018?
According to the May 16th, 2018 developer update What needs to be done and by whom depends on the custody arrangements of REP tokens at that time:
If you are a REP holder or user of a centralized exchange or non-custodial decentralized exchange, there is nothing you need to do.
In the specific case of custodial decentralized exchanges such as EtherDelta/ForkDelta, IDEX and OasisDEX, users must withdraw their REP from the exchange contract prior to July 9th, 2018 to have their balances properly migrated.
Users of non-custodial decentralized exchanges (such as Paradex, RadarRelay, and other 0x Relayers) and centralized exchanges (such as Bittrex, Poloniex, and Kraken) do not need to do anything. Individual REP token holders also do not need to do anything: once the REP migration is complete, your REP balance will be exactly as it was before the migration. The migration should only take a few hours, assuming all goes well.