Commit Graph

79 Commits

Author SHA1 Message Date
MaksimZhukov
9181355e36 Apply suggestions for the beta vesrion and update the documentation 2023-10-31 13:09:20 +01:00
MaksimZhukov
917e5cce72 Merge branch 'main' 2023-10-24 12:11:31 +02:00
MaksimZhukov
f4eefdc659 [Beta] Implement the new structure of the match object for the changed-files section (#680)
* Implement the new structure of the match object for changed files section

* Replace inner loops with the find method
2023-09-20 13:43:39 +02:00
Eric Cornelissen
b3ae1bded7 Make jest-each a devDependency (#611)
* Make `jest-each` a devDependency

Change the dependency on `jest-each` from a regular dependency to a
development dependency (devDependency) as it is only used in tests.

* Remove `jest-each` and use `test-each` instead
2023-07-11 14:57:50 +02:00
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
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
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
Alexander Kachkaev
71d2484daa Address review comment 2023-05-31 18:46:23 +01:00
Alexander Kachkaev
e3b3815c8d Further diff reduction 2023-05-31 01:54:22 +01:00
Alexander Kachkaev
44414dbc7d Fix tests 2023-05-31 01:50:00 +01:00
Alexander Kachkaev
60f44e7cf1 Fix unrelated test 2023-05-31 01:45:27 +01:00
Alexander Kachkaev
cecbd94bd4 Merge remote-tracking branch 'u/main' into dot-option 2023-05-31 01:35:46 +01:00
MaksimZhukov
26342ba349 fix: correct reading of sync-labels input 2023-05-24 12:21:33 +02:00
MaksimZhukov
e1fcf6fe5b Merge pull request #203 from joshdales/main
Assigns labels based on branch names
2023-05-24 12:01:55 +02: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
Josh Dales
3352df1f2b Bring test I accidently deleted 2023-05-17 07:26:44 -04:00
Josh Dales
57d34076e0 Better check for empty configs in checkAll 2023-05-17 07:05:19 -04:00
Josh Dales
a256a58edf Add check for empty objects in checkAll 2023-05-15 10:45:56 -04:00
Josh Dales
51cc5e079c Update text in test descriptions and logging
Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>
2023-05-11 16:35:05 -04:00
Josh Dales
9cfddd0144 Consolidate the new any change files test into the old one 2023-05-05 09:05:40 -04:00
Josh Dales
3aa0d436e5 Better test description 2023-05-05 09:02:53 -04:00
Josh Dales
9488def29a Update tests and build 2023-05-05 08:58:23 -04:00
Josh Dales
2a3422a64e Better description for the new test 2023-04-13 15:15:10 -04:00
Josh Dales
2637d23bca Add test for when not all globs match any changed file 2023-04-13 14:58:52 -04: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
Josh Dales
4554c0d1af Add a bunch more tests 2023-03-25 16:07:56 -04:00
Josh Dales
3bec9227d1 Add any and all functions for both checks 2023-03-24 21:51:33 -04:00
Josh Dales
a9e07ce8ff Add some new tests 2023-03-24 21:23:51 -04:00
Josh Dales
8e6367ddee Merge branch 'main' into main 2023-03-23 09:02:46 -04: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
Josh Dales
b25e3a8c27 Better wording for the new test 2023-03-20 17:51:58 -04:00
Josh Dales
d31255f7be Make sure that empty config options don't accidently label things 2023-03-20 17:40:28 -04:00
Josh Dales
92990c0c57 Don't allow empty changed-files objects through 2023-03-20 17:40:28 -04:00
Josh Dales
d0d3628020 Add extra tests and use toEqual matcher.
Turns out that toMatchObject would allow extra properties through
2023-03-20 17:40:28 -04:00
Josh Dales
65b7640e45 Add unit tests for toMatchConfig 2023-03-18 17:15:18 -04:00
Josh Dales
e9a1777eb0 Fix linting and formatting 2023-03-18 16:46:54 -04:00
Josh Dales
c31ee1fd86 Add more unit tests for changedFiles.ts 2023-03-18 16:44:50 -04:00
Josh Dales
3af9a47a26 Add unit tests for toChangedFilesMatchConfig 2023-03-18 16:44:49 -04:00
Josh Dales
a988f4eb9d Add todo tests for changedFiles 2023-03-18 16:44:49 -04:00
Josh Dales
1ce9b356f6 Move all changedFiles logic into it's own file 2023-03-18 16:44:49 -04:00
Josh Dales
9f259ee115 Rename checkGlobs to checkMatchConfigs and check each property 2023-03-18 16:44:49 -04:00
Josh Dales
90ef37079a Merge branch 'actions:main' into main 2023-03-18 16:44:40 -04: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
Josh Dales
394a01bde3 Make getBranchName argument non-optional 2023-03-03 11:15:48 -05:00
Josh Dales
2a5bc55cbf Fix bad test descriptions
Co-authored-by: MaksimZhukov <46996400+MaksimZhukov@users.noreply.github.com>
2023-03-03 09:28:40 -05:00
Josh Dales
56347d54a1 Add unit tests for toBranchMatchConfig 2023-02-21 08:30:24 -05:00
Josh Dales
ed31b27f2e Rename some functions and variables to match what they are doing 2023-02-19 16:46:14 -05:00