Skip to content

Handling of UTF8 command argument files regressed in v26.1 breaking Grpc.Tools #17036

Closed
@tonydnewell

Description

What version of protobuf and what language are you using?
Version: v26.1
Language: C# (but any will see problem)

What operating system (Linux, Windows, ...) and version?
Windows - any version

What did you do?
This is causing the Grpc.Tools issue grpc/grpc#36518
Grpc.Tools is broken by the protocol buffers change.

Handling of non-ASCII characters in UTF-8 command line argument files is broken. It was working in v25.1 and is not working in V26.1. I suspect the cause of the issue to be the "fix" in #14197

Grpc.Tools V2.62.0 ships with protoc version 25.1
Grpc.Tools V2.63.0 ships with protoc version 26.1

Steps to reproduce:

  • Create a directory on Windows containing a non-ASCII character in its name
  • Use that directory in the a command line file (an @ file)

Example of @ file - test.rps

--plugin=protoc-gen-grpc=E:\work\grpc\protoctest\test-Dré\tools\grpc_csharp_plugin.exe
--grpc_out=E:\work\grpc\protoctest\test-Dré\grpc_out
--proto_path=E:\work\grpc\protoctest\test-Dré
hélloworld.proto
  • example command line on Windows:
E:\work\grpc\protoctest\test-Dré>v1.63.0\protoc.exe @..\test-Dré\test.rsp

What did you expect to see
No errors

What did you see instead?

E:\work\grpc\protoctest\test-Dré>v1.63.0\protoc.exe @..\test-Dré\test.rsp
Failed to open argument file: ..\test-Dr�\test.rsp

** Results with older version (working):**

E:\work\grpc\protoctest\test-Dré>v1.62.0\protoc.exe @..\test-Dré\test.rsp


Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions