# Configuration for probot-stale - https://github.com/probot/stale

# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 90

# Number of days of inactivity before a stale Issue or Pull Request is closed
daysUntilClose: 7

# Issues or Pull Requests with these labels will never be considered stale
exemptLabels:
  - "t1:enhancement"

# Label to use when marking as stale
staleLabel: "s1:awaiting input"

# Comment to post when marking as stale. Set to `false` to disable
markComment: >
  There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

# Comment to post when removing the stale label. Set to `false` to disable
unmarkComment: false

# Comment to post when closing a stale Issue or Pull Request. Set to `false` to disable
closeComment: >
  This issue will be auto-closed because there hasn't been any activity for a few months.
  Feel free to [open a new one](https://github.com/CocoaPods/CocoaPods/issues/new) if you still experience this problem :+1:

# Limit to only `issues`
only: issues
