Skip to content

Commit

Permalink
Address review coments
Browse files Browse the repository at this point in the history
  • Loading branch information
s-anupam committed Jan 3, 2023
1 parent 23073eb commit 2de4236
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 14 deletions.
4 changes: 1 addition & 3 deletions __tests__/delete.test.ts
Expand Up @@ -2,15 +2,13 @@
import {rest} from 'msw'
import {setupServer} from 'msw/node'
import {Input, InputParams} from '../src/input'
import {deleteVersions, finalIds} from '../src/delete'
import {deleteVersions, finalIds, RATE_LIMIT} from '../src/delete'
import {getMockedVersionsResponse} from './version/rest.mock'
import {RestEndpointMethodTypes} from '@octokit/plugin-rest-endpoint-methods/dist-types/generated/parameters-and-response-types'

type GetVersionsResponseData =
RestEndpointMethodTypes['packages']['getAllPackageVersionsForPackageOwnedByUser']['response']['data']

const RATE_LIMIT = 99

describe('index tests -- call rest', () => {
let server = setupServer()

Expand Down
3 changes: 1 addition & 2 deletions __tests__/version/get-version.test.ts
Expand Up @@ -6,8 +6,7 @@ import {
} from '../../src/version'
import {Observable} from 'rxjs'
import {getMockedVersionsResponse} from './rest.mock'

const RATE_LIMIT = 99
import {RATE_LIMIT} from '../../src/delete'

describe('get versions tests -- mock rest', () => {
let server = setupServer()
Expand Down
2 changes: 1 addition & 1 deletion action.yml
Expand Up @@ -28,7 +28,7 @@ inputs:

package-type:
description: >
Type of the package containing the version to delete.
Type of package. Can be one of container, maven, npm, nuget, or rubygems.
required: true

num-old-versions-to-delete:
Expand Down
12 changes: 6 additions & 6 deletions dist/index.js
Expand Up @@ -8,11 +8,11 @@

/* eslint-disable i18n-text/no-en */
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.deleteVersions = exports.finalIds = exports.getVersionIds = void 0;
exports.deleteVersions = exports.finalIds = exports.getVersionIds = exports.RATE_LIMIT = void 0;
const rxjs_1 = __nccwpck_require__(5805);
const operators_1 = __nccwpck_require__(7801);
const version_1 = __nccwpck_require__(4428);
const RATE_LIMIT = 99;
exports.RATE_LIMIT = 100;
let totalCount = 0;
function getVersionIds(owner, packageName, packageType, numVersions, page, token) {
return (0, version_1.getOldestVersions)(owner, packageName, packageType, numVersions, page, token).pipe((0, operators_1.expand)(value => value.paginate
Expand All @@ -25,7 +25,7 @@ function finalIds(input) {
return (0, rxjs_1.of)(input.packageVersionIds);
}
if (input.hasOldestVersionQueryInfo()) {
return getVersionIds(input.owner, input.packageName, input.packageType, RATE_LIMIT, 1, input.token).pipe(
return getVersionIds(input.owner, input.packageName, input.packageType, exports.RATE_LIMIT, 1, input.token).pipe(
// This code block executes on all versions of a package starting from oldest
(0, operators_1.map)(value => {
// we need to delete oldest versions first
Expand All @@ -34,15 +34,15 @@ function finalIds(input) {
});
/*
Here first filter out the versions that are to be ignored.
Then update input.numOldeVersionsToDelete to the no of versions deleted from the next 100 versions batch.
Then compute number of versions to delete (toDelete) based on the inputs.
*/
value = value.filter(info => !input.ignoreVersions.test(info.version));
let toDelete = 0;
if (input.minVersionsToKeep < 0) {
toDelete = Math.min(value.length, Math.min(input.numOldVersionsToDelete, RATE_LIMIT));
toDelete = Math.min(value.length, Math.min(input.numOldVersionsToDelete, exports.RATE_LIMIT));
}
else {
toDelete = Math.min(value.length - input.minVersionsToKeep, RATE_LIMIT);
toDelete = Math.min(value.length - input.minVersionsToKeep, exports.RATE_LIMIT);
}
if (toDelete < 0)
return [];
Expand Down
4 changes: 2 additions & 2 deletions src/delete.ts
Expand Up @@ -9,7 +9,7 @@ import {
RestVersionInfo
} from './version'

const RATE_LIMIT = 99
export const RATE_LIMIT = 100
let totalCount = 0

export function getVersionIds(
Expand Down Expand Up @@ -68,7 +68,7 @@ export function finalIds(input: Input): Observable<string[]> {
})
/*
Here first filter out the versions that are to be ignored.
Then update input.numOldeVersionsToDelete to the no of versions deleted from the next 100 versions batch.
Then compute number of versions to delete (toDelete) based on the inputs.
*/
value = value.filter(info => !input.ignoreVersions.test(info.version))
let toDelete = 0
Expand Down

0 comments on commit 2de4236

Please sign in to comment.