Commit Graph

51 Commits

Author SHA1 Message Date
Nathan Hammond
be13bbd1b7 Early exit when no files are changed. (#456)
* Early exit when no files are changed.

As a consequence of the `checkAll` function call returning `true` if the length of `changedFiles` is 0, this must early-exit in order to avoid labeling empty PRs.

* Update dist.

* Update for new code styles.

* review changes requested

* Update dist.

* chore: prettify code

---------

Co-authored-by: MaksimZhukov <maksimzhukov@github.com>
Co-authored-by: IvanZosimov <ivanzosimov@github.com>
2023-07-07 16:35:16 +02:00
Liam Stanley
994304c5d5 feat(config): support reading from local file if it exists (#394)
* feat(config): support reading from local file if it exists

Signed-off-by: Liam Stanley <me@liamstanley.io>

* fix: fix review point, update logic

* docs: update readme

* docs: update readme

* feat: add additional logging

* chore: update licenses

* docs: fix review point in readme.md

---------

Signed-off-by: Liam Stanley <me@liamstanley.io>
Co-authored-by: IvanZosimov <ivanzosimov@github.com>
2023-07-07 12:44:54 +02:00
Mark Ridgwell
327d35fdca Added ability to pass in an optional PR number as a parameter (#349)
* Adding pr-number as an optional parameter

* Updated README

* Tests on the pr-number parameter

* Added missing | to table

* re-built script

* Adding support for multiple pr-numbers

* excluded .idea

* Updated readme to reflect that there might be more than one PR

* Additional warning

* Removed unused

* Reformatted and re-built

* Corrected message

* Removed required check

* Added (s) to pull request numbers in the description

Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>

* Reworded PR-number parameter description

Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>

* adding getMultilineInput into the tests

* Fixing tests for single pr

* Fixing tests for multiple prs

* Updated README.md to make it more obvious that it can take a list of PRs

* Added example that labels PR's 1-3

* Handled no pull requests better (from code review)

* Handled no pull requests better (from code review)

* Handled missing pull request better (from code review)

* Back out suggested change as it broke the tests

* Rebuilt dist

* Update src/labeler.ts

Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>

* Added Emphasis to the note

Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>

* Changed mockInput for pr-number to be string[]

---------

Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>
2023-07-06 17:10:50 +02:00
Lukas Hennies
e3c0d9b6cc Improved Error message for missing config file (#475)
* error message for missing config

* chore: formatting and index js

* chore: update json5

* changes from cr

Co-authored-by: AndreiLobanovich <andreilobanovich@github.com>

* chore: recreate dist.js

* chore: revert package-lock

* chore: newline fix

---------

Co-authored-by: AndreiLobanovich <andreilobanovich@github.com>
2023-06-30 12:09:04 +02:00
Daniel Shteremberg
0967ca812e Added output (#60)
* Added output

* removed formatting changes

* more formatting changes

* Fix merge conflicts

* Small test refactoring

* tests are passing

* Add a test

* Add a small jest mock for addLabels. Not used.

* Add tests for more cases

* get rid of an unused jest mock

* fix review points

* rebuild + minor README fix

* fix review points

* update tests

* fix formatting

* add tests, fix bug

* cleanup

---------

Co-authored-by: Daniel Shteremberg <dshteremberg@labelbox.com>
Co-authored-by: Daniel Shteremberg <Daniel@Daniel-Shterembergs-MacBook-Pro.local>
Co-authored-by: Patrick Ellis <patrick.j.ellis@gmail.com>
Co-authored-by: Andrey Lobanovich <andrei.lobanovich@akvelon.com>
2023-06-29 12:45:24 +02:00
MaksimZhukov
375538a703 Bump @octokit/plugin-retry from 5.0.2 to 5.0.4 (#599) 2023-06-28 13:52:50 +02:00
Mark Massoud
7a202e6428 fix: Limit number of labels added to 100 (#497)
* push to excess labels to avoid reaching the limit

* build dist

* never set more than 100 labels

* use splice instead of set

* ignore IDE folders

* install @octokit/plugin-retry

* always setLabels

* fix indentations

* fix specs

* add spec for excess labels

* prettier

* licensed cache

* revert to !!core.getInput('sync-labels')

* better warning for exceeded labels

* keep manually-added labels

* nest the dedupe logic

* rename `removeLabel` to `removeLabelFromList` to avoid confusion

* use Sets, and issue a call only if labels have actually changed

* remove IDE config folders from gitignore

* remove obsolete duplucation check

---------

Co-authored-by: Mark Massoud <mark@unrealcloud.io>
2023-06-21 11:49:43 +02:00
Josh Soref
b5ff161cf0 Explain misconfigured workflow (#405)
Fixes #136
2023-06-19 13:07:00 +02:00
Alexander Kachkaev
639ba81ab1 Rebuild 2023-05-31 18:46:34 +01:00
Alexander Kachkaev
59d3310a72 Rebuild 2023-05-31 17:32:09 +01:00
Alexander Kachkaev
e3b3815c8d Further diff reduction 2023-05-31 01:54:22 +01:00
Alexander Kachkaev
673c7e22a7 Rebuild 2023-05-31 01:50:27 +01:00
Alexander Kachkaev
97762039fe Update build 2023-05-31 01:46:05 +01:00
Alexander Kachkaev
cecbd94bd4 Merge remote-tracking branch 'u/main' into dot-option 2023-05-31 01:35:46 +01:00
MaksimZhukov
5c4deb8a24 Revert "fix: correct reading of sync-labels input. (#480)" (#564)
This reverts commit 751921c443.
2023-05-23 19:06:03 +02:00
Alexander Kachkaev
a7cc8a62ef Fix 2023-03-27 09:47:52 +01:00
Alexander Kachkaev
b28379f6ed Cleanup 2023-03-27 09:44:05 +01:00
Alexander Kachkaev
b898cc8e29 Merge remote-tracking branch 'u/main' into dot-option 2023-03-27 09:39:25 +01:00
Adam Azarchs
751921c443 fix: correct reading of sync-labels input. (#480)
* fix: correct reading of sync-labels input.

Contrary to the assumptions made in the unit tests, core.getInput
always returns a string, and !!'false' is true.

Also updates the unit test to reduce changes of regressions by ensuring
that the mocked getInput returns a string, as it would in production.

Fixes https://github.com/actions/labeler/issues/112

Make sure test catches regressions.

* Rebuild dist/index.js.
2023-03-23 10:47:14 +01:00
Milos Pantic
468a5e0250 Rebuild minimatch (#522)
* Rebuild minimatch and adapt changed interface

* Apply formatting

* Update minimatch license
2023-03-23 10:45:05 +01:00
Alexander Kachkaev
4a96e771de Merge branch 'main' into dot-option 2023-03-12 22:13:26 +00:00
Ivan
8d81f881dd Add and configure ESLint and update configuration for Prettier (#508)
* Add ESLint and update Prettier

* Rebuild action

* Update package.json
2023-03-09 15:02:17 +02:00
Michaël De Boey
ba790c862c feat: default repo-token to github.token (#227)
* feat: default `repo-token` to `github.token`

* Update README.md

* Update labeler.ts

* Update index.js

* Update action.yml

* Update dist/index.js

* Update index.js

* Update dist/index.js
2023-03-07 12:25:56 +01:00
Alexander Kachkaev
305cfeb74c Rebuild 2023-01-16 17:40:12 +00:00
Alexander Kachkaev
866eff55a5 Merge remote-tracking branch 'origin/main' into dot-option 2023-01-16 17:36:24 +00:00
MaksimZhukov
36adcc2cb2 Update licenses and dependencies (#477) 2023-01-09 15:27:57 +01:00
IvanZosimov
ce7f13552d Rebuild project 2022-12-19 17:18:39 +01:00
IvanZosimov
e63db1786a Update licenses and rebuild action 2022-12-19 16:48:00 +01:00
Francesco Renzi
d8fb392051 Update @actions/core to 1.10.0 2022-10-06 11:51:14 +01:00
Alexander Kachkaev
d89797c51d Merge remote-tracking branch 'upstream/main' into dot-option 2022-09-14 14:54:45 +01:00
Cory Miller
493ae8a9ee re-build package 2022-08-11 15:43:30 -04:00
Alexander Kachkaev
6a0b7265cb Rebuild 2022-02-04 13:29:12 +00:00
dependabot[bot]
9b2da75f4b Bump @actions/github from 2.2.0 to 5.0.0 (#161)
* Bump @actions/github from 2.2.0 to 5.0.0

Bumps [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) from 2.2.0 to 5.0.0.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/github)

---
updated-dependencies:
- dependency-name: "@actions/github"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update licensed cache

* Code changes to support github 5.0

* regenerate dist/index

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Patrick Ellis <patrick.j.ellis@gmail.com>
2021-06-21 11:39:52 -04:00
Patrick Ellis
b2730a2b56 regenerate dist/index.js 2021-06-17 15:17:17 -04:00
Patrick Ellis
ecdb2919bd regenerate dist/index.js 2021-06-17 15:14:37 -04:00
Patrick Ellis
d5a6e81a0b Merge branch 'main' into upgrade-js-yaml-to-4 2021-06-14 18:43:21 -04:00
Patrick Ellis
5235463eb5 Upgrade ncc to 0.28.6 2021-06-11 19:01:54 -04:00
Patrick Ellis
3424206184 Upgrade js-yaml to 4.0
The only code change is switching `safeLoad` (which was removed) for `load` (which is "safe" by default now)

https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md#400---2021-01-03
2021-06-11 18:54:48 -04:00
Patrick Ellis
f0414a79d7 Upgrade Typescript to 4.3
Also necessitated upgrading ts-jest to 27.0 and jest to 26.0
2021-06-04 22:57:32 -04:00
Patrick Ellis
c97a9580dd Update prettier to 2.3.0 and re-prettify everything
Gotta love those trailing commas!
2021-06-04 16:14:32 -04:00
Patrick Ellis
84a53dc124 Regenerate dist/index.js 2021-06-04 15:43:55 -04:00
Patrick Ellis
f2e6c011a1 rebuild dist/index.js 2021-06-04 15:00:20 -04:00
David Kale
9042c970f2 Update zeit->vercel 2020-09-08 14:00:23 -04:00
David Kale
fa244eaba5 Paginate and remove old labels (#96)
* Paginate to get all changed files. Add option to remove labels

* build

* format and build
2020-09-08 13:09:16 -04:00
Jameel Al-Aziz
efc1b29f09 Fix "any" matching when not all globs match (#75)
The previous logic had a bug where the "any" pattern list could match
against changed files even when not all globs matched a single changed
file. The bug arose individual globs in the "any" list were tested
against all changed files individually. Therefore, as long as at least
one changed file matched an individual glob in the list, a successful
match would be found.

The correct behavior is to match all the globs in the list against each
individual file. This ensures that is possible to define exlcusions
correctly and matched the documented behavior.
2020-06-19 10:55:47 -04:00
Jameel Al-Aziz
4b52aec09b Add support for exclusions (#22)
* Add support for exclusions

Paths can be negated to stop searching through the remaining patterns in
a the glob list. All changed files tested and at least one matching file
will result in a label being added.

Fixes actions/labeler#9

* Add support for "AND"-ed matches

A new "rich" matcher object can be provided instead of a normal glob.

The matcher object has two fields that accept an array of globs:
* Globs in "all" must all match every changed file.
* Globs in "some" must all match at least one changed file.

Combined with negated globs, this allows for a precise control of when
labels are applied.

* Rename `some` to `any`

* Update README
2020-06-01 17:01:37 -04:00
PJ Quirk
937b16c09f Rerun build/pack 2020-05-12 16:00:39 -04:00
PJ Quirk
ce29b1babf Fixed build/pack steps to be more predictable 2020-05-12 14:26:07 -04:00
PJ Quirk
06ad9709b1 Bump actions/core to 1.2.4 2020-05-12 14:08:27 -04:00
PJ Quirk
912b1d0ff0 Bumping actions/github to 2.2.0 2020-05-08 17:07:38 -04:00