You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Paul Magrath (JIRA)" <ji...@apache.org> on 2015/03/06 15:24:38 UTC

[jira] [Created] (THRIFT-3027) Go compiler does not ensure common initialisms have consistent case

Paul Magrath created THRIFT-3027:
------------------------------------

             Summary: Go compiler does not ensure common initialisms have consistent case
                 Key: THRIFT-3027
                 URL: https://issues.apache.org/jira/browse/THRIFT-3027
             Project: Thrift
          Issue Type: Improvement
          Components: Go - Compiler
    Affects Versions: 0.9.2
            Reporter: Paul Magrath
            Priority: Minor


In Go, as per https://github.com/golang/go/wiki/CodeReviewComments#initialisms, words in names that are initialisms or acronyms should have a consistent case. 

For example, if you have a struct like:

[code]
struct InitialismsTest {
    1: string user_id,
    2: string server_url,
}
[/code]

One would expect it to compile to:

[code]
type InitialismsTest struct {
	UserID    string `thrift:"user_id,1" json:"user_id"`
	ServerURL string `thrift:"server_url,2" json:"server_url"`
}
[/code]

Rather than:-

[code]
type InitialismsTest struct {
	UserId    string `thrift:"user_id,1" json:"user_id"`
	ServerUrl string `thrift:"server_url,2" json:"server_url"`
}
[/code]

It would be pretty difficult to handle all cases of initialisms in the Go compiler of course, but there is a set of common initialisms that have been identified by the authors of Golint and could be handled relatively easily:- https://github.com/golang/lint/blob/master/lint.go#L692 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)