[clang] Add txtpb to the list of supported TextProto extensions (PR #88355)

2024-04-10 Thread Jing Wang via cfe-commits

https://github.com/jingw created https://github.com/llvm/llvm-project/pull/88355

According to 
https://protobuf.dev/reference/protobuf/textformat-spec/#text-format-files, 
txtpb is the canonical extension

>From b8463dbc5ffa3a401bc9470a3c86e8c72964a0f6 Mon Sep 17 00:00:00 2001
From: Jing Wang <99ji...@gmail.com>
Date: Wed, 10 Apr 2024 22:04:17 -0700
Subject: [PATCH] Add txtpb to the list of supported TextProto extensions

According to 
https://protobuf.dev/reference/protobuf/textformat-spec/#text-format-files, 
txtpb is the canonical extension
---
 clang/docs/ClangFormat.rst   | 2 +-
 clang/lib/Format/Format.cpp  | 6 +-
 clang/test/Format/lit.local.cfg  | 1 +
 clang/tools/clang-format/ClangFormat.cpp | 2 +-
 4 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/clang/docs/ClangFormat.rst b/clang/docs/ClangFormat.rst
index 80dc38a075c8fc..dbd9c91ae508e5 100644
--- a/clang/docs/ClangFormat.rst
+++ b/clang/docs/ClangFormat.rst
@@ -54,7 +54,7 @@ to format C/C++/Java/JavaScript/JSON/Objective-C/Protobuf/C# 
code.
Objective-C: .m .mm
Proto: .proto .protodevel
TableGen: .td
-   TextProto: .textpb .pb.txt .textproto 
.asciipb
+   TextProto: .txtpb .textpb .pb.txt 
.textproto .asciipb
Verilog: .sv .svh .v .vh
 --cursor=- The position of the cursor when invoking
  clang-format from an editor integration
diff --git a/clang/lib/Format/Format.cpp b/clang/lib/Format/Format.cpp
index 89e6c19b0af45c..ccb2c9190e2eff 100644
--- a/clang/lib/Format/Format.cpp
+++ b/clang/lib/Format/Format.cpp
@@ -3891,7 +3891,11 @@ static FormatStyle::LanguageKind 
getLanguageByFileName(StringRef FileName) {
   FileName.ends_with_insensitive(".protodevel")) {
 return FormatStyle::LK_Proto;
   }
-  if (FileName.ends_with_insensitive(".textpb") ||
+  // txtpb is the canonical extension, and textproto is the legacy canonical
+  // extension
+  // https://protobuf.dev/reference/protobuf/textformat-spec/#text-format-files
+  if (FileName.ends_with_insensitive(".txtpb") ||
+  FileName.ends_with_insensitive(".textpb") ||
   FileName.ends_with_insensitive(".pb.txt") ||
   FileName.ends_with_insensitive(".textproto") ||
   FileName.ends_with_insensitive(".asciipb")) {
diff --git a/clang/test/Format/lit.local.cfg b/clang/test/Format/lit.local.cfg
index 3851397a3f7ccc..3eb0f54ceaa6f9 100644
--- a/clang/test/Format/lit.local.cfg
+++ b/clang/test/Format/lit.local.cfg
@@ -12,6 +12,7 @@ config.suffixes = [
 ".proto",
 ".protodevel",
 ".pb.txt",
+".txtpb",
 ".textproto",
 ".textpb",
 ".asciipb",
diff --git a/clang/tools/clang-format/ClangFormat.cpp 
b/clang/tools/clang-format/ClangFormat.cpp
index ed401135ad8433..feb733fe3c9e0b 100644
--- a/clang/tools/clang-format/ClangFormat.cpp
+++ b/clang/tools/clang-format/ClangFormat.cpp
@@ -92,7 +92,7 @@ static cl::opt AssumeFileName(
  "  Objective-C: .m .mm\n"
  "  Proto: .proto .protodevel\n"
  "  TableGen: .td\n"
- "  TextProto: .textpb .pb.txt .textproto .asciipb\n"
+ "  TextProto: .txtpb .textpb .pb.txt .textproto .asciipb\n"
  "  Verilog: .sv .svh .v .vh"),
 cl::init(""), cl::cat(ClangFormatCategory));
 

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Add txtpb to the list of supported TextProto extensions (PR #88355)

2024-04-11 Thread Jing Wang via cfe-commits

jingw wrote:

Thank you! Are you able to merge this? I don't think I have access.

https://github.com/llvm/llvm-project/pull/88355
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits