Merge branch 'master' into releases/v1
This commit is contained in:
		
						commit
						cbaf47b85d
					
				
							
								
								
									
										4
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										4
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -1,6 +1,6 @@ | ||||
| { | ||||
|   "name": "node12-template-action", | ||||
|   "version": "0.0.0", | ||||
|   "name": "stale-action", | ||||
|   "version": "1.0.0", | ||||
|   "lockfileVersion": 1, | ||||
|   "requires": true, | ||||
|   "dependencies": { | ||||
|  | ||||
							
								
								
									
										10
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								package.json
									
									
									
									
									
								
							| @ -1,8 +1,8 @@ | ||||
| { | ||||
|   "name": "node12-template-action", | ||||
|   "version": "0.0.0", | ||||
|   "name": "stale-action", | ||||
|   "version": "1.0.0", | ||||
|   "private": true, | ||||
|   "description": "Node 12 template action", | ||||
|   "description": "Marks old issues and PRs as stale", | ||||
|   "main": "lib/main.js", | ||||
|   "scripts": { | ||||
|     "build": "tsc", | ||||
| @ -12,12 +12,12 @@ | ||||
|   }, | ||||
|   "repository": { | ||||
|     "type": "git", | ||||
|     "url": "git+https://github.com/actions/start-vm-action.git" | ||||
|     "url": "git+https://github.com/actions/stale.git" | ||||
|   }, | ||||
|   "keywords": [ | ||||
|     "actions", | ||||
|     "node", | ||||
|     "setup" | ||||
|     "stale" | ||||
|   ], | ||||
|   "author": "GitHub", | ||||
|   "license": "MIT", | ||||
|  | ||||
							
								
								
									
										23
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								src/main.ts
									
									
									
									
									
								
							| @ -2,6 +2,9 @@ import * as core from '@actions/core'; | ||||
| import * as github from '@actions/github'; | ||||
| import * as Octokit from '@octokit/rest'; | ||||
| 
 | ||||
| type Issue = Octokit.IssuesListForRepoResponseItem; | ||||
| type IssueLabel = Octokit.IssuesListForRepoResponseItemLabelsItem; | ||||
| 
 | ||||
| type Args = { | ||||
|   repoToken: string; | ||||
|   staleIssueMessage: string; | ||||
| @ -51,7 +54,7 @@ async function processIssues( | ||||
| 
 | ||||
|     let staleMessage = isPr ? args.stalePrMessage : args.staleIssueMessage; | ||||
|     if (!staleMessage) { | ||||
|       core.debug(`skipping ${isPr ? "pr" : "issue"} due to empty message`); | ||||
|       core.debug(`skipping ${isPr ? 'pr' : 'issue'} due to empty message`); | ||||
|       continue; | ||||
|     } | ||||
| 
 | ||||
| @ -82,19 +85,13 @@ async function processIssues( | ||||
|   return await processIssues(client, args, operationsLeft, page + 1); | ||||
| } | ||||
| 
 | ||||
| function isLabeledStale( | ||||
|   issue: Octokit.IssuesListForRepoResponseItem, | ||||
|   label: string | ||||
| ): boolean { | ||||
|   const labelComparer = l => | ||||
|     label.localeCompare(l.name, undefined, {sensitivity: 'accent'}); | ||||
| function isLabeledStale(issue: Issue, label: string): boolean { | ||||
|   const labelComparer: (l: IssueLabel) => boolean = l => | ||||
|     label.localeCompare(l.name, undefined, {sensitivity: 'accent'}) === 0; | ||||
|   return issue.labels.filter(labelComparer).length > 0; | ||||
| } | ||||
| 
 | ||||
| function wasLastUpdatedBefore( | ||||
|   issue: Octokit.IssuesListForRepoResponseItem, | ||||
|   num_days: number | ||||
| ): boolean { | ||||
| function wasLastUpdatedBefore(issue: Issue, num_days: number): boolean { | ||||
|   const daysInMillis = 1000 * 60 * 60 * num_days; | ||||
|   const millisSinceLastUpdated = | ||||
|     new Date().getTime() - new Date(issue.updated_at).getTime(); | ||||
| @ -103,7 +100,7 @@ function wasLastUpdatedBefore( | ||||
| 
 | ||||
| async function markStale( | ||||
|   client: github.GitHub, | ||||
|   issue: Octokit.IssuesListForRepoResponseItem, | ||||
|   issue: Issue, | ||||
|   staleMessage: string, | ||||
|   staleLabel: string | ||||
| ): Promise<number> { | ||||
| @ -128,7 +125,7 @@ async function markStale( | ||||
| 
 | ||||
| async function closeIssue( | ||||
|   client: github.GitHub, | ||||
|   issue: Octokit.IssuesListForRepoResponseItem | ||||
|   issue: Issue | ||||
| ): Promise<number> { | ||||
|   core.debug(`closing issue ${issue.title} for being stale`); | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Shawn Napora
						Shawn Napora