Commit Graph

690 Commits

Author SHA1 Message Date
Alex Bezzubov
476e74d827 ci: bump Go versions to two latest ones
test plan: CI is green
2022-12-01 22:33:00 +01:00
Alex Bezzubov
f4051b0f16 gen: re-generated vendors using build-time optimization 2022-12-01 22:16:54 +01:00
Alex Bezzubov
ede9e478fe IsVendor: move RE collation to code generation phase
test plan:
 * go test -run '^TestIsVendor$' github.com/go-enry/go-enry/v2
2022-12-01 22:16:44 +01:00
Alex
fcb9ea7e45
Merge pull request #146 from go-enry/more-api-tests
test: cover GetLanguageByContent confusing edge cases
2022-12-01 22:15:53 +01:00
Alex Bezzubov
86cae02425 test: cover GetLanguageByContent confusing edge cases
And clarify documentation wording, based on discussion
at https://github.com/go-enry/go-enry/issues/145

test plan:
 * go test -run '^Test_EnryTestSuite$' -testify.m '^(TestGetLanguageByContent)$' ./...
2022-12-01 22:10:01 +01:00
Alex
a243a1fde8
Merge pull request #144 from go-enry/refactoring-tests
Refactoring tests
2022-12-01 22:06:00 +01:00
Alex Bezzubov
6be1ebe9d6 test: fail fast on suite setup/teardown 2022-12-01 22:00:58 +01:00
Alex Bezzubov
43475949cc test: limit linguist repo history size 2022-12-01 22:00:58 +01:00
Alex Bezzubov
a93364ec79 refactoring: add separate test suite for linguist samples/fixtures 2022-12-01 22:00:58 +01:00
Alex Bezzubov
bb7a81ede4 refactoring: unify, extract&reuse maybeCloneLinguist() 2022-12-01 22:00:58 +01:00
Alex Bezzubov
a3304aa121 refactoring: move public constant/types to enry.go
Also re-arrange public API functions to have the same order
as they are in tests.
2022-12-01 22:00:58 +01:00
Alex
a1d6d88745
Merge pull request #147 from go-enry/fix-ci-python
ci: fix Python profile after ubuntu-latest 20.04->22.04 update
2022-12-01 22:00:15 +01:00
Alex Bezzubov
fd9e1c3b63 ci: fix Python profile after ubuntu-latest 20.04->22.04 update
Github has changed the ubuntu-latest runner and it does not ship
Python 3.6 any more ¯\_(ツ)_/¯

See https://github.com/actions/setup-python/issues/544#issuecomment-1320295576

test plan:
 * CI profile for python is green
2022-11-29 22:58:56 +01:00
Alex
fdf062436b
Merge pull request #142 from go-enry/refactor-vendor-regexp-optimization
IsVendor: refactor RE collation optimization
2022-10-27 11:27:55 +02:00
Alex
7388633b02
Merge pull request #141 from go-enry/improve-test-and-codegen
Small improvements in test and code generation
2022-10-27 11:27:38 +02:00
Alex
6e3306a9f7
Merge pull request #140 from go-enry/improve-docs
Improve documentation
2022-10-27 11:27:29 +02:00
Alex Bezzubov
95f30f0db4 IsVendor: refactor RE collation optimization
The same optimization still happens during package initialization
at runtime, but an effort was made to make it more transparent and
self-documented.

Both the test & the benchmark were updated.

Old version (usefull for benchmark) was

```go
func IsVendor(filename string) bool {
	for _, matcher := range data.VendorMatchers {
		if matcher.MatchString(filename) {
			return true
		}
	}
	return false
}
```

Test plan:
 * go test -run ^TestIsVendor$ github.com/go-enry/go-enry/v2
2022-10-23 15:19:53 +02:00
Alex Bezzubov
5683b2e7f8 test: refactored to clarify Linguist cloning logic on codegen 2022-10-23 11:07:50 +02:00
Alex Bezzubov
3feb720575 code-gen: fail fast
Stop the code generation process early if any of its
generators fail rather than skipping it with the log message.
2022-10-23 10:56:01 +02:00
Alex Bezzubov
e4cc955976 doc: improve wording in dev section w.r.t env vars 2022-10-23 10:47:17 +02:00
Alex Bezzubov
b33717cc4f doc: mention linguist sync automation 2022-10-23 10:42:10 +02:00
Josh Soref
fb3939de28 spelling: without
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
bc13e29685 spelling: unnecessary
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
53b48a4669 spelling: through
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
bc7767728d spelling: syntax
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
500fa07895 spelling: structure
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
d4d3d66352 spelling: skipping
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
b28e1b8881 spelling: service
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
2822da6054 spelling: sequentially
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
42c82564ae spelling: reference
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Josh Soref
8363b28e63 spelling: receives
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-10-06 13:25:49 -04:00
Alex
9b19067edc
Merge pull request #133 from lafriks-fork/feat/generated_files_proto_go_sum
Generated proto file and PNP detection
2022-10-06 10:01:35 +02:00
Alex
7633227f79
Merge pull request #131 from go-enry/feature/sync-linguist-4ffcdbcb
Update Linguist to v7.21.0
2022-10-06 09:59:13 +02:00
Alex
a53744636a
Merge pull request #136 from cboylan/fix-vendor-regex
Fix IsVendor() regex generation
2022-10-06 09:41:27 +02:00
Clark Boylan
16a5ff8e22 Fix IsVendor() regex generation
The regex generation introduced by
20726a1de3
had a subtle but important bug in it. In particular the ^ and ^|/
prefixes were only applied to the first regex in the OR'd groupings and
not every regex in the grouping.

We fix this by wrapping each of those OR'd groups in a new non capturing
group to ensure the prefix applies to every entry in the OR'd listing.

Additionally we add three new quick tests of IsVendor to guard against
this regression in the future.

This fixes https://github.com/go-enry/go-enry/issues/135
2022-08-25 16:22:09 -07:00
Josh Soref
799e590e75 spelling: maintaining
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-09 00:45:29 -04:00
Josh Soref
b5b0d48170 spelling: linguist
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-09 00:45:29 -04:00
Josh Soref
b4e2aae0cf spelling: identifies
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-09 00:45:29 -04:00
Josh Soref
6c16f2f4de spelling: identified
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-09 00:45:29 -04:00
Josh Soref
95c80c474b spelling: github
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 23:31:59 -04:00
Josh Soref
d768719609 spelling: distribution
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 23:31:59 -04:00
Josh Soref
cfef8c28e5 spelling: disambiguates
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 23:31:59 -04:00
Josh Soref
2482431dd2 spelling: concatenate
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 23:31:59 -04:00
Josh Soref
7b3e094013 spelling: arbitrary
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 22:52:56 -04:00
Josh Soref
2e629094b6 spelling: allows
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-08-08 22:52:56 -04:00
Lauris BH
05907fe7ec
Change Yarn PnP regex to include all .pnp.* files 2022-08-01 21:35:46 +03:00
Lauris BH
a6f32e054c
Remove go.sum from generated 2022-08-01 21:06:24 +03:00
Lauris BH
fe195c67a9
Generated go.sum and proto file detection 2022-07-18 15:08:20 +03:00
github-actions
60edc790b3 Updated Linguist to v7.21.0 2022-06-09 20:09:50 +00:00
Alex
ed2adad159
Merge pull request #124 from go-enry/feature/sync-linguist-1649189530
Update Linguist to v7.20.0
2022-04-11 20:13:21 +02:00