diff --git a/main.go b/main.go index 84735dd..cfa116a 100644 --- a/main.go +++ b/main.go @@ -270,12 +270,15 @@ func hashBang(b []byte) []byte { return nil } -var reGenerated = regexp.MustCompile(`(?m)^.{1,2} Code generated .* DO NOT EDIT\.$`) +// go generate: ^// Code generated .* DO NOT EDIT\.$ +var goGenerated = regexp.MustCompile(`(?m)^.{1,2} Code generated .* DO NOT EDIT\.$`) +// cargo raze: ^DO NOT EDIT! Replaced on runs of cargo-raze$ +var cargoRazeGenerated = regexp.MustCompile(`(?m)^DO NOT EDIT! Replaced on runs of cargo-raze$`) // isGenerated returns true if it contains a string that implies the file was // generated. func isGenerated(b []byte) bool { - return reGenerated.Match(b) + return goGenerated.Match(b) || cargoRazeGenerated.Match(b) } func hasLicense(b []byte) bool { diff --git a/testdata/expected/file_generated.bzl b/testdata/expected/file_generated.bzl new file mode 100644 index 0000000..40821ca --- /dev/null +++ b/testdata/expected/file_generated.bzl @@ -0,0 +1,22 @@ +""" +cargo-raze crate workspace functions + +DO NOT EDIT! Replaced on runs of cargo-raze +""" +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +def _new_http_archive(name, **kwargs): + if not native.existing_rule(name): + http_archive(name=name, **kwargs) + +def raze_fetch_remote_crates(): + + _new_http_archive( + name = "raze__log__0_4_11", + url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.11.crate", + type = "tar.gz", + sha256 = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b", + strip_prefix = "log-0.4.11", + build_file = Label("//bazel/cargo/remote:log-0.4.11.BUILD"), + ) + diff --git a/testdata/initial/file_generated.bzl b/testdata/initial/file_generated.bzl new file mode 100644 index 0000000..40821ca --- /dev/null +++ b/testdata/initial/file_generated.bzl @@ -0,0 +1,22 @@ +""" +cargo-raze crate workspace functions + +DO NOT EDIT! Replaced on runs of cargo-raze +""" +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +def _new_http_archive(name, **kwargs): + if not native.existing_rule(name): + http_archive(name=name, **kwargs) + +def raze_fetch_remote_crates(): + + _new_http_archive( + name = "raze__log__0_4_11", + url = "https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.11.crate", + type = "tar.gz", + sha256 = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b", + strip_prefix = "log-0.4.11", + build_file = Label("//bazel/cargo/remote:log-0.4.11.BUILD"), + ) +