Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GoAddTags should not add twice #1064

Closed
huygn opened this issue Sep 29, 2016 · 2 comments
Closed

GoAddTags should not add twice #1064

huygn opened this issue Sep 29, 2016 · 2 comments

Comments

@huygn
Copy link

huygn commented Sep 29, 2016

Sorry for the bad issue title, couldn't think of a better one.

    Number       string `json:"number"`
    TextAllowed  bool

Actual behavior

    Number       string `json:"number"` `json:"number"`
    TextAllowed  bool `json:"text_allowed"`

Expected behavior

    Number       string `json:"number"`
    TextAllowed  bool `json:"text_allowed"`

@fatih
Copy link
Owner

fatih commented Sep 29, 2016

Hi @gnhuy91

Thanks for the bug report. This is one of the cases where an AST based tool is needed or things get complex easily. Let's tackle this as well with the other :GoAddTags related issues.

@fatih fatih added the bug label Oct 23, 2016
fatih added a commit that referenced this issue Feb 13, 2017
* Use new `gomodifytags` tool to manipulate and modify tags
* Adds new `:GoRenameTags`
* `:GoAddTags` is able to add options
* `:GoRemoveTags` is able to remove options

Usage:

Following command add multiple tags. Does not modify if the key already
exist. If `,optionaname` is given, it adds the given option to that key.
If called without arguments, it adds by default tags with `json` key.
```
:GoAddTags
:GoAddTags json
:GoAddTags json,omitempty
:GoAddTags json hcl bson
:GoAddTags json,omitempty hcl bson
```

Following command removes multiple tags and options. If `,optionname` is
given, it removes the option belonging to that key instead of removing
the key. If called without arguments, it removes all tags belonging to a
struct.

```
:GoRemoveTags
:GoRemoveTags json
:GoRemoveTags json,omitempty
:GoRemoveTags json hcl bson
:GoRemoveTags json,omitempty hcl bson
```

Fixes following issues:

 #984
 #985
 #990
 #1064
 #1091
fatih added a commit that referenced this issue Feb 13, 2017
* Use new `gomodifytags` tool to manipulate and modify tags
* Adds new `:GoRenameTags`
* `:GoAddTags` is able to add options
* `:GoRemoveTags` is able to remove options

Usage:

Following command add multiple tags. Does not modify if the key already
exist. If `,optionaname` is given, it adds the given option to that key.
If called without arguments, it adds by default tags with `json` key.
```
:GoAddTags
:GoAddTags json
:GoAddTags json,omitempty
:GoAddTags json hcl bson
:GoAddTags json,omitempty hcl bson
```

Following command removes multiple tags and options. If `,optionname` is
given, it removes the option belonging to that key instead of removing
the key. If called without arguments, it removes all tags belonging to a
struct.

```
:GoRemoveTags
:GoRemoveTags json
:GoRemoveTags json,omitempty
:GoRemoveTags json hcl bson
:GoRemoveTags json,omitempty hcl bson
```

Fixes following issues:

 #984
 #985
 #990
 #1064
 #1091
fatih added a commit that referenced this issue Feb 13, 2017
* Use new `gomodifytags` tool to manipulate and modify tags
* `:GoAddTags` is able to add tags and options
* `:GoRemoveTags` is able to remove tags and options

Usage:

Following command add multiple tags. Does not modify if the key already
exist. If `,optionaname` is given, it adds the given option to that key.
If called without arguments, it adds by default tags with `json` key.
```
:GoAddTags
:GoAddTags json
:GoAddTags json,omitempty
:GoAddTags json hcl bson
:GoAddTags json,omitempty hcl bson
```

Following command removes multiple tags and options. If `,optionname` is
given, it removes the option belonging to that key instead of removing
the key. If called without arguments, it removes all tags belonging to a
struct.

```
:GoRemoveTags
:GoRemoveTags json
:GoRemoveTags json,omitempty
:GoRemoveTags json hcl bson
:GoRemoveTags json,omitempty hcl bson
```

Fixes following issues:

 #984
 #985
 #990
 #1064
 #1091
fatih added a commit that referenced this issue Feb 13, 2017
* Use new `gomodifytags` tool to manipulate and modify tags
* `:GoAddTags` is able to add tags and options
* `:GoRemoveTags` is able to remove tags and options

Usage:

Following command add multiple tags. Does not modify if the key already
exist. If `,optionaname` is given, it adds the given option to that key.
If called without arguments, it adds by default tags with `json` key.
```
:GoAddTags
:GoAddTags json
:GoAddTags json,omitempty
:GoAddTags json hcl bson
:GoAddTags json,omitempty hcl bson
```

Following command removes multiple tags and options. If `,optionname` is
given, it removes the option belonging to that key instead of removing
the key. If called without arguments, it removes all tags belonging to a
struct.

```
:GoRemoveTags
:GoRemoveTags json
:GoRemoveTags json,omitempty
:GoRemoveTags json hcl bson
:GoRemoveTags json,omitempty hcl bson
```

Fixes following issues:

 #984
 #985
 #990
 #1064
 #1091
@fatih
Copy link
Owner

fatih commented Feb 14, 2017

Fixed with #1204 please, feel free to test and reopen if it's not the case.

@fatih fatih closed this as completed Feb 14, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants