There is no exported function months() in lubridate:
> lubridate::months()
Error: 'months' is not an exported object from 'namespace:lubridate'
Both the base function months() and the lubridate period() function yield the same result:
> months(1)
[1] "1m 0d 0H 0M 0S"
period("1 month")
[1] "1m 0d 0H 0M 0S"
The function %m+% is required if you want to make sure that the additional period falls on a valid day:
> ymd('2020-01-31') %m+% months(1)
[1] "2020-02-29"
> ymd('2020-01-31') + months(1)
[1] NA
> ymd('2020-02-21') + months(1)
[1] "2020-03-21"