Preparing report...

Report for github.com/emersion/neutron

D    Needs lots of improvement    Found 76 issues across 76 files

Tweet

gofmt22%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo92%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

    • neutron/backend/messages.go
    • Line 236: warning: cyclomatic complexity 23 of function (*MessageUpdate).Apply() is high (> 15) (gocyclo)
    • Line 119: warning: cyclomatic complexity 16 of function addCountToTotal() is high (> 15) (gocyclo)
    • neutron/router/api/messages.go
    • Line 45: warning: cyclomatic complexity 16 of function (*Api).populateMessage() is high (> 15) (gocyclo)
    • Line 452: warning: cyclomatic complexity 16 of function (*Api).SendMessage() is high (> 15) (gocyclo)
    • neutron/backend/imap/messages.go
    • Line 389: warning: cyclomatic complexity 31 of function (*Messages).UpdateMessage() is high (> 15) (gocyclo)
    • Line 147: warning: cyclomatic complexity 19 of function (*Messages).ListMessages() is high (> 15) (gocyclo)

golint5%

Golint is a linter for Go source code.

    • neutron/backend/events/contacts.go
    • Line 7: warning: exported type Contacts should have comment or be unexported (golint)
    • Line 12: warning: exported method Contacts.InsertContact should have comment or be unexported (golint)
    • Line 23: warning: exported method Contacts.UpdateContact should have comment or be unexported (golint)
    • Line 34: warning: exported method Contacts.DeleteContact should have comment or be unexported (golint)
    • Line 45: warning: exported function NewContacts should have comment or be unexported (golint)
    • neutron/backend/events/messages.go
    • Line 7: warning: exported type Messages should have comment or be unexported (golint)
    • Line 12: warning: exported method Messages.InsertMessage should have comment or be unexported (golint)
    • Line 25: warning: exported method Messages.UpdateMessage should have comment or be unexported (golint)
    • Line 36: warning: exported method Messages.DeleteMessage should have comment or be unexported (golint)
    • Line 49: warning: exported function NewMessages should have comment or be unexported (golint)
    • neutron/config/config.go
    • Line 1: warning: package comment should be of the form "Package config ..." (golint)
    • Line 10: warning: comment on exported type Config should be of the form "Config ..." (with optional leading article) (golint)
    • Line 26: warning: exported type BackendConfig should have comment or be unexported (golint)
    • Line 30: warning: exported type MemoryConfig should have comment or be unexported (golint)
    • Line 36: warning: exported type ImapConfig should have comment or be unexported (golint)
    • Line 41: warning: exported type SmtpConfig should have comment or be unexported (golint)
    • Line 46: warning: exported type DiskConfig should have comment or be unexported (golint)
    • neutron/backend/memory/contacts.go
    • Line 10: warning: exported type Contacts should have comment or be unexported (golint)
    • Line 14: warning: exported method Contacts.ListContacts should have comment or be unexported (golint)
    • Line 19: warning: exported method Contacts.InsertContact should have comment or be unexported (golint)
    • Line 35: warning: exported method Contacts.UpdateContact should have comment or be unexported (golint)
    • Line 46: warning: exported method Contacts.DeleteContact should have comment or be unexported (golint)
    • Line 58: warning: exported method Contacts.DeleteAllContacts should have comment or be unexported (golint)
    • Line 63: warning: exported function NewContacts should have comment or be unexported (golint)
    • neutron/backend/util/textproto/message.go
    • Line 1: warning: package comment should be of the form "Package textproto ..." (golint)
    • Line 19: warning: exported function ParseMessageHeader should have comment or be unexported (golint)
    • Line 113: warning: exported function FormatMessage should have comment or be unexported (golint)
    • Line 119: warning: exported function FormatOutgoingMessage should have comment or be unexported (golint)
    • neutron/router/api/labels.go
    • Line 11: warning: exported type LabelsResp should have comment or be unexported (golint)
    • Line 16: warning: exported method Api.GetLabels should have comment or be unexported (golint)
    • Line 35: warning: exported type LabelReq should have comment or be unexported (golint)
    • Line 39: warning: exported type LabelResp should have comment or be unexported (golint)
    • Line 44: warning: exported method Api.CreateLabel should have comment or be unexported (golint)
    • Line 63: warning: exported method Api.UpdateLabel should have comment or be unexported (golint)
    • Line 85: warning: exported type LabelsOrderReq should have comment or be unexported (golint)
    • Line 89: warning: exported method Api.UpdateLabelsOrder should have comment or be unexported (golint)
    • Line 119: warning: exported method Api.DeleteLabel should have comment or be unexported (golint)
    • neutron/router/api/settings.go
    • Line 9: warning: exported type UpdateUserPasswordReq should have comment or be unexported (golint)
    • Line 15: warning: exported type UpdateUserSettingsReq should have comment or be unexported (golint)
    • Line 21: warning: exported method Api.UpdateUserPassword should have comment or be unexported (golint)
    • Line 49: warning: exported method Api.UpdateUserDisplayName should have comment or be unexported (golint)
    • Line 53: warning: exported method Api.UpdateUserSignature should have comment or be unexported (golint)
    • Line 57: warning: exported method Api.UpdateUserAutoSaveContacts should have comment or be unexported (golint)
    • Line 61: warning: exported method Api.UpdateUserShowImages should have comment or be unexported (golint)
    • Line 65: warning: exported method Api.UpdateUserComposerMode should have comment or be unexported (golint)
    • Line 69: warning: exported method Api.UpdateUserViewLayout should have comment or be unexported (golint)
    • Line 73: warning: exported method Api.UpdateUserMessageButtons should have comment or be unexported (golint)
    • Line 77: warning: exported method Api.UpdateUserTheme should have comment or be unexported (golint)
    • neutron/backend/labels.go
    • Line 3: warning: comment on exported type LabelsBackend should be of the form "LabelsBackend ..." (with optional leading article) (golint)
    • Line 15: warning: exported type LabelType should have comment or be unexported (golint)
    • Line 18: warning: exported const LabelMessage should have comment (or a comment on this block) or be unexported (golint)
    • Line 22: warning: comment on exported type Label should be of the form "Label ..." (with optional leading article) (golint)
    • Line 44: warning: comment on exported type LabelUpdate should be of the form "LabelUpdate ..." (with optional leading article) (golint)
    • neutron/backend/send.go
    • Line 3: warning: comment on exported type SendBackend should be of the form "SendBackend ..." (with optional leading article) (golint)
    • Line 9: warning: comment on exported type OutgoingMessage should be of the form "OutgoingMessage ..." (with optional leading article) (golint)
    • Line 21: warning: comment on exported type OutgoingAttachment should be of the form "OutgoingAttachment ..." (with optional leading article) (golint)
    • neutron/backend/smtp/send.go
    • Line 13: warning: exported type SendBackend should have comment or be unexported (golint)
    • Line 19: warning: exported method SendBackend.SendMessage should have comment or be unexported (golint)
    • Line 95: warning: exported function New should have comment or be unexported (golint)
    • neutron/backend/imap/messages.go
    • Line 22: warning: exported type Messages should have comment or be unexported (golint)
    • Line 27: warning: exported method Messages.GetMessage should have comment or be unexported (golint)
    • Line 147: warning: exported method Messages.ListMessages should have comment or be unexported (golint)
    • Line 147: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 259: warning: exported method Messages.CountMessages should have comment or be unexported (golint)
    • Line 259: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 287: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 310: warning: exported method Messages.InsertMessage should have comment or be unexported (golint)
    • Line 310: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 326: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 342: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 358: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 379: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 389: warning: exported method Messages.UpdateMessage should have comment or be unexported (golint)
    • Line 389: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • Line 533: warning: exported method Messages.DeleteMessage should have comment or be unexported (golint)
    • Line 533: warning: receiver name b should be consistent with previous receiver name be for Messages (golint)
    • neutron/backend/events/labels.go
    • Line 7: warning: exported type Labels should have comment or be unexported (golint)
    • Line 12: warning: exported method Labels.InsertLabel should have comment or be unexported (golint)
    • Line 23: warning: exported method Labels.UpdateLabel should have comment or be unexported (golint)
    • Line 34: warning: exported method Labels.DeleteLabel should have comment or be unexported (golint)
    • Line 45: warning: exported function NewLabels should have comment or be unexported (golint)
    • neutron/backend/memory/users.go
    • Line 10: warning: exported type Users should have comment or be unexported (golint)
    • Line 19: warning: exported method Users.IsUsernameAvailable should have comment or be unexported (golint)
    • Line 37: warning: exported method Users.GetUser should have comment or be unexported (golint)
    • Line 47: warning: exported method Users.Auth should have comment or be unexported (golint)
    • Line 58: warning: exported method Users.InsertUser should have comment or be unexported (golint)
    • Line 79: warning: exported method Users.UpdateUser should have comment or be unexported (golint)
    • Line 97: warning: exported method Users.UpdateUserPassword should have comment or be unexported (golint)
    • Line 112: warning: exported function NewUsers should have comment or be unexported (golint)
    • neutron/backend/util/send.go
    • Line 9: warning: comment on exported type NoopSend should be of the form "NoopSend ..." (with optional leading article) (golint)
    • Line 12: warning: exported method NoopSend.SendMessage should have comment or be unexported (golint)
    • Line 16: warning: exported function NewNoopSend should have comment or be unexported (golint)
    • Line 21: warning: comment on exported type EchoSend should be of the form "EchoSend ..." (with optional leading article) (golint)
    • Line 26: warning: exported method EchoSend.SendMessage should have comment or be unexported (golint)
    • Line 40: warning: exported function NewEchoSend should have comment or be unexported (golint)
    • neutron/router/api/events.go
    • Line 9: warning: exported type EventResp should have comment or be unexported (golint)
    • Line 14: warning: exported method Api.GetEvent should have comment or be unexported (golint)
    • neutron/router/api/sessions.go
    • Line 9: warning: exported const SessionTimeout should have comment or be unexported (golint)
    • Line 11: warning: exported type Session should have comment or be unexported (golint)
    • Line 18: warning: exported function NewSession should have comment or be unexported (golint)
    • neutron/backend/memory/events.go
    • Line 11: warning: exported type Events should have comment or be unexported (golint)
    • Line 62: warning: exported method Events.InsertEvent should have comment or be unexported (golint)
    • Line 119: warning: exported method Events.GetLastEvent should have comment or be unexported (golint)
    • Line 136: warning: exported method Events.GetEventsAfter should have comment or be unexported (golint)
    • Line 200: warning: exported method Events.DeleteAllEvents should have comment or be unexported (golint)
    • Line 212: warning: exported function NewEvents should have comment or be unexported (golint)
    • neutron/backend/memory/messages.go
    • Line 10: warning: exported type Messages should have comment or be unexported (golint)
    • Line 26: warning: exported method Messages.GetMessage should have comment or be unexported (golint)
    • Line 42: warning: exported method Messages.ListMessages should have comment or be unexported (golint)
    • Line 87: warning: exported method Messages.CountMessages should have comment or be unexported (golint)
    • Line 111: warning: exported method Messages.InsertMessage should have comment or be unexported (golint)
    • Line 119: warning: exported method Messages.UpdateMessage should have comment or be unexported (golint)
    • Line 130: warning: exported method Messages.DeleteMessage should have comment or be unexported (golint)
    • Line 142: warning: exported function NewMessages should have comment or be unexported (golint)
    • neutron/router/api/contacts.go
    • Line 9: warning: exported type ContactsResp should have comment or be unexported (golint)
    • Line 14: warning: exported type CreateContactsReq should have comment or be unexported (golint)
    • Line 18: warning: exported type ContactResp should have comment or be unexported (golint)
    • Line 23: warning: exported type UpdateContactReq should have comment or be unexported (golint)
    • Line 30: warning: exported method Api.GetContacts should have comment or be unexported (golint)
    • Line 49: warning: exported method Api.CreateContacts should have comment or be unexported (golint)
    • Line 78: warning: exported method Api.UpdateContact should have comment or be unexported (golint)
    • Line 101: warning: exported method Api.DeleteContacts should have comment or be unexported (golint)
    • Line 127: warning: exported method Api.DeleteAllContacts should have comment or be unexported (golint)
    • neutron/router/api/users.go
    • Line 12: warning: exported type UserResp should have comment or be unexported (golint)
    • Line 17: warning: exported type CreateUserReq should have comment or be unexported (golint)
    • Line 29: warning: exported type DirectUserResp should have comment or be unexported (golint)
    • Line 34: warning: exported type UsernameAvailableResp should have comment or be unexported (golint)
    • Line 98: warning: exported method Api.GetCurrentUser should have comment or be unexported (golint)
    • Line 115: warning: exported method Api.CreateUser should have comment or be unexported (golint)
    • Line 170: warning: exported method Api.GetDirectUser should have comment or be unexported (golint)
    • Line 177: warning: exported method Api.GetUsernameAvailable should have comment or be unexported (golint)
    • Line 197: warning: exported method Api.GetPublicKeys should have comment or be unexported (golint)
    • neutron/backend/memory/attachments.go
    • Line 15: warning: exported type Attachments should have comment or be unexported (golint)
    • Line 28: warning: exported method Attachments.ListAttachments should have comment or be unexported (golint)
    • Line 37: warning: exported method Attachments.ReadAttachment should have comment or be unexported (golint)
    • Line 47: warning: exported method Attachments.InsertAttachment should have comment or be unexported (golint)
    • Line 57: warning: exported method Attachments.DeleteAttachment should have comment or be unexported (golint)
    • Line 67: warning: comment on exported method Attachments.UpdateAttachmentMessage should be of the form "UpdateAttachmentMessage ..." (golint)
    • Line 78: warning: exported function NewAttachments should have comment or be unexported (golint)
    • neutron/backend/backend.go
    • Line 1: warning: package comment should be of the form "Package backend ..." (golint)
    • Line 4: warning: comment on exported type Backend should be of the form "Backend ..." (with optional leading article) (golint)
    • Line 54: warning: exported function New should have comment or be unexported (golint)
    • neutron/backend/disk/contacts.go
    • Line 14: warning: exported type Contacts should have comment or be unexported (golint)
    • Line 50: warning: exported method Contacts.ListContacts should have comment or be unexported (golint)
    • Line 54: warning: exported method Contacts.InsertContact should have comment or be unexported (golint)
    • Line 81: warning: exported method Contacts.UpdateContact should have comment or be unexported (golint)
    • Line 103: warning: exported method Contacts.DeleteContact should have comment or be unexported (golint)
    • Line 124: warning: exported method Contacts.DeleteAllContacts should have comment or be unexported (golint)
    • Line 129: warning: exported function NewContacts should have comment or be unexported (golint)
    • Line 135: warning: exported function UseContacts should have comment or be unexported (golint)
    • neutron/router/api/auth.go
    • Line 11: warning: exported type TokenType should have comment or be unexported (golint)
    • Line 14: warning: exported const TokenBearer should have comment (or a comment on this block) or be unexported (golint)
    • Line 17: warning: exported type AuthReq should have comment or be unexported (golint)
    • Line 26: warning: exported type AuthResp should have comment or be unexported (golint)
    • Line 40: warning: exported type AuthCookiesReq should have comment or be unexported (golint)
    • Line 48: warning: exported type AuthCookiesResp should have comment or be unexported (golint)
    • Line 53: warning: exported type AuthCookie should have comment or be unexported (golint)
    • Line 58: warning: exported type AuthInfoReq should have comment or be unexported (golint)
    • Line 65: warning: exported type AuthInfoResp should have comment or be unexported (golint)
    • Line 75: warning: exported method Api.Auth should have comment or be unexported (golint)
    • Line 144: warning: exported method Api.AuthInfo should have comment or be unexported (golint)
    • Line 150: warning: exported method Api.AuthCookies should have comment or be unexported (golint)
    • Line 215: warning: exported method Api.DeleteAuth should have comment or be unexported (golint)
    • neutron/router/api/keys.go
    • Line 9: warning: exported type CreatePrivateKeyReq should have comment or be unexported (golint)
    • Line 14: warning: exported method Api.CreatePrivateKey should have comment or be unexported (golint)
    • Line 38: warning: exported type UpdateAllPrivateKeysReq should have comment or be unexported (golint)
    • Line 43: warning: exported method Api.UpdateAllPrivateKeys should have comment or be unexported (golint)
    • neutron/backend/events/conversations.go
    • Line 7: warning: exported type Conversations should have comment or be unexported (golint)
    • Line 13: warning: exported method Conversations.InsertMessage should have comment or be unexported (golint)
    • Line 36: warning: exported method Conversations.UpdateMessage should have comment or be unexported (golint)
    • Line 50: warning: exported method Conversations.DeleteMessage should have comment or be unexported (golint)
    • Line 72: warning: exported function NewConversations should have comment or be unexported (golint)
    • neutron/backend/memory/conversations.go
    • Line 10: warning: exported type Conversations should have comment or be unexported (golint)
    • Line 66: warning: exported method Conversations.ListConversationMessages should have comment or be unexported (golint)
    • Line 96: warning: exported method Conversations.ListConversations should have comment or be unexported (golint)
    • Line 144: warning: exported method Conversations.CountConversations should have comment or be unexported (golint)
    • Line 173: warning: exported method Conversations.GetConversation should have comment or be unexported (golint)
    • Line 190: warning: exported method Conversations.InsertMessage should have comment or be unexported (golint)
    • Line 198: warning: exported method Conversations.DeleteConversation should have comment or be unexported (golint)
    • Line 215: warning: exported function NewConversations should have comment or be unexported (golint)
    • neutron/backend/memory/labels.go
    • Line 10: warning: exported type Labels should have comment or be unexported (golint)
    • Line 23: warning: exported method Labels.ListLabels should have comment or be unexported (golint)
    • Line 28: warning: exported method Labels.InsertLabel should have comment or be unexported (golint)
    • Line 35: warning: exported method Labels.UpdateLabel should have comment or be unexported (golint)
    • Line 46: warning: exported method Labels.DeleteLabel should have comment or be unexported (golint)
    • Line 58: warning: exported function NewLabels should have comment or be unexported (golint)
    • neutron/backend/addresses.go
    • Line 3: warning: exported type AddressesBackend should have comment or be unexported (golint)
    • Line 16: warning: comment on exported type Address should be of the form "Address ..." (with optional leading article) (golint)
    • Line 34: warning: comment on exported method Address.GetEmail should be of the form "GetEmail ..." (golint)
    • Line 42: warning: exported type AddressUpdate should have comment or be unexported (golint)
    • Line 50: warning: exported method AddressUpdate.Apply should have comment or be unexported (golint)
    • neutron/router/api/conversations.go
    • Line 9: warning: exported type ConversationsListResp should have comment or be unexported (golint)
    • Line 15: warning: exported method Api.ListConversations should have comment or be unexported (golint)
    • Line 32: warning: exported method Api.GetConversationsCount should have comment or be unexported (golint)
    • Line 47: warning: exported type ConversationResp should have comment or be unexported (golint)
    • Line 53: warning: exported method Api.GetConversation should have comment or be unexported (golint)
    • Line 119: warning: exported method Api.UpdateConversationsRead should have comment or be unexported (golint)
    • Line 123: warning: exported method Api.UpdateConversationsStar should have comment or be unexported (golint)
    • Line 127: warning: exported method Api.UpdateConversationsSystemLabel should have comment or be unexported (golint)
    • Line 131: warning: exported type UpdateConversationsLabelReq should have comment or be unexported (golint)
    • Line 136: warning: exported method Api.UpdateConversationsLabel should have comment or be unexported (golint)
    • Line 140: warning: exported method Api.DeleteConversations should have comment or be unexported (golint)
    • neutron/backend/util/conversations.go
    • Line 7: warning: comment on exported type DummyConversations should be of the form "DummyConversations ..." (with optional leading article) (golint)
    • Line 12: warning: exported method DummyConversations.ListConversationMessages should have comment or be unexported (golint)
    • Line 46: warning: exported method DummyConversations.GetConversation should have comment or be unexported (golint)
    • Line 54: warning: exported method DummyConversations.ListConversations should have comment or be unexported (golint)
    • Line 68: warning: exported method DummyConversations.CountConversations should have comment or be unexported (golint)
    • Line 72: warning: exported method DummyConversations.DeleteConversation should have comment or be unexported (golint)
    • Line 76: warning: exported method DummyConversations.GetMessage should have comment or be unexported (golint)
    • Line 86: warning: exported method DummyConversations.ListMessages should have comment or be unexported (golint)
    • Line 98: warning: exported method DummyConversations.InsertMessage should have comment or be unexported (golint)
    • Line 108: warning: exported method DummyConversations.UpdateMessage should have comment or be unexported (golint)
    • Line 118: warning: exported function NewDummyConversations should have comment or be unexported (golint)
    • neutron/router/api/domains.go
    • Line 8: warning: exported type AvailableDomainsResp should have comment or be unexported (golint)
    • Line 13: warning: exported method Api.GetAvailableDomains should have comment or be unexported (golint)
    • Line 36: warning: exported type DomainResp should have comment or be unexported (golint)
    • Line 41: warning: exported method Api.GetDomain should have comment or be unexported (golint)
    • Line 58: warning: exported type DomainsResp should have comment or be unexported (golint)
    • Line 63: warning: exported method Api.GetUserDomains should have comment or be unexported (golint)
    • neutron/backend/domains.go
    • Line 3: warning: comment on exported type DomainsBackend should be of the form "DomainsBackend ..." (with optional leading article) (golint)
    • Line 15: warning: comment on exported type Domain should be of the form "Domain ..." (with optional leading article) (golint)
    • neutron/backend/events.go
    • Line 3: warning: comment on exported type EventsBackend should be of the form "EventsBackend ..." (with optional leading article) (golint)
    • Line 15: warning: exported type Event should have comment or be unexported (golint)
    • Line 39: warning: exported type EventAction should have comment or be unexported (golint)
    • Line 42: warning: exported const EventDelete should have comment (or a comment on this block) or be unexported (golint)
    • Line 47: warning: exported type EventDelta should have comment or be unexported (golint)
    • Line 52: warning: exported type EventMessageDelta should have comment or be unexported (golint)
    • Line 57: warning: exported function NewMessageDeltaEvent should have comment or be unexported (golint)
    • Line 68: warning: exported type EventConversationDelta should have comment or be unexported (golint)
    • Line 73: warning: exported function NewConversationDeltaEvent should have comment or be unexported (golint)
    • Line 84: warning: exported type EventLabelDelta should have comment or be unexported (golint)
    • Line 89: warning: exported function NewLabelDeltaEvent should have comment or be unexported (golint)
    • Line 100: warning: exported type EventContactDelta should have comment or be unexported (golint)
    • Line 105: warning: exported function NewContactDeltaEvent should have comment or be unexported (golint)
    • Line 116: warning: exported function NewUserEvent should have comment or be unexported (golint)
    • neutron/router/api/members.go
    • Line 8: warning: exported type Member should have comment or be unexported (golint)
    • Line 16: warning: exported type MembersResp should have comment or be unexported (golint)
    • Line 21: warning: exported method Api.GetMembers should have comment or be unexported (golint)
    • neutron/backend/memory/domains.go
    • Line 10: warning: exported type Domains should have comment or be unexported (golint)
    • Line 14: warning: exported method Domains.ListDomains should have comment or be unexported (golint)
    • Line 19: warning: exported method Domains.GetDomain should have comment or be unexported (golint)
    • Line 28: warning: exported method Domains.GetDomainByName should have comment or be unexported (golint)
    • Line 37: warning: exported method Domains.InsertDomain should have comment or be unexported (golint)
    • Line 43: warning: exported function NewDomains should have comment or be unexported (golint)
    • neutron/backend/contacts.go
    • Line 3: warning: comment on exported type ContactsBackend should be of the form "ContactsBackend ..." (with optional leading article) (golint)
    • Line 17: warning: comment on exported type Contact should be of the form "Contact ..." (with optional leading article) (golint)
    • Line 24: warning: comment on exported type ContactUpdate should be of the form "ContactUpdate ..." (with optional leading article) (golint)
    • neutron/backend/disk/users.go
    • Line 12: warning: exported type UsersSettings should have comment or be unexported (golint)
    • Line 79: warning: exported method UsersSettings.GetUser should have comment or be unexported (golint)
    • Line 89: warning: exported method UsersSettings.Auth should have comment or be unexported (golint)
    • Line 99: warning: exported method UsersSettings.InsertUser should have comment or be unexported (golint)
    • Line 114: warning: exported method UsersSettings.UpdateUser should have comment or be unexported (golint)
    • Line 128: warning: exported method UsersSettings.DeleteUser should have comment or be unexported (golint)
    • Line 132: warning: exported function NewUsersSettings should have comment or be unexported (golint)
    • Line 139: warning: exported function UseUsersSettings should have comment or be unexported (golint)
    • neutron/backend/imap/labels.go
    • Line 60: warning: exported type Labels should have comment or be unexported (golint)
    • Line 64: warning: exported method Labels.ListLabels should have comment or be unexported (golint)
    • Line 94: warning: exported method Labels.InsertLabel should have comment or be unexported (golint)
    • Line 123: warning: exported method Labels.UpdateLabel should have comment or be unexported (golint)
    • Line 147: warning: exported method Labels.DeleteLabel should have comment or be unexported (golint)
    • neutron/backend/imap/users.go
    • Line 10: warning: comment on exported type Users should be of the form "Users ..." (with optional leading article) (golint)
    • Line 47: warning: exported method Users.GetUser should have comment or be unexported (golint)
    • Line 55: warning: exported method Users.Auth should have comment or be unexported (golint)
    • Line 96: warning: comment on exported method Users.IsUsernameAvailable should be of the form "IsUsernameAvailable ..." (golint)
    • Line 101: warning: exported method Users.InsertUser should have comment or be unexported (golint)
    • Line 105: warning: exported method Users.UpdateUser should have comment or be unexported (golint)
    • Line 109: warning: exported method Users.UpdateUserPassword should have comment or be unexported (golint)
    • neutron/router/api/addresses.go
    • Line 19: warning: exported type CreateAddressReq should have comment or be unexported (golint)
    • Line 26: warning: exported type AddressResp should have comment or be unexported (golint)
    • Line 31: warning: exported method Api.CreateAddress should have comment or be unexported (golint)
    • Line 64: warning: exported method Api.ToggleAddress should have comment or be unexported (golint)
    • Line 92: warning: exported method Api.DeleteAddress should have comment or be unexported (golint)
    • neutron/backend/util/util.go
    • Line 1: warning: package comment should be of the form "Package util ..." (golint)
    • Line 11: warning: comment on exported function GenerateId should be of the form "GenerateId ..." (golint)
    • neutron/backend/users.go
    • Line 3: warning: exported type UsersBackend should have comment or be unexported (golint)
    • Line 20: warning: comment on exported type User should be of the form "User ..." (with optional leading article) (golint)
    • Line 63: warning: exported method User.GetMainAddress should have comment or be unexported (golint)
    • Line 73: warning: exported const RoleFreeUser should have comment (or a comment on this block) or be unexported (golint)
    • Line 78: warning: comment on exported type UserUpdate should be of the form "UserUpdate ..." (with optional leading article) (golint)
    • neutron/backend/imap/backend.go
    • Line 1: warning: package comment should be of the form "Package imap ..." (golint)
    • Line 12: warning: exported type Config should have comment or be unexported (golint)
    • Line 19: warning: exported method Config.Host should have comment or be unexported (golint)
    • Line 32: warning: exported function Use should have comment or be unexported (golint)
    • neutron/router/api/api.go
    • Line 12: warning: exported type RespCode should have comment or be unexported (golint)
    • Line 15: warning: exported const Ok should have comment (or a comment on this block) or be unexported (golint)
    • Line 25: warning: exported type Req should have comment or be unexported (golint)
    • Line 27: warning: exported type Resp should have comment or be unexported (golint)
    • Line 31: warning: exported type ErrorResp should have comment or be unexported (golint)
    • Line 45: warning: exported type BatchReq should have comment or be unexported (golint)
    • Line 50: warning: exported type BatchResp should have comment or be unexported (golint)
    • Line 62: warning: exported type BatchRespItem should have comment or be unexported (golint)
    • Line 67: warning: exported type Api should have comment or be unexported (golint)
    • Line 124: warning: exported function New should have comment or be unexported (golint)
    • neutron/router/api/payments.go
    • Line 7: warning: exported type PlansResp should have comment or be unexported (golint)
    • Line 12: warning: exported type Plan should have comment or be unexported (golint)
    • Line 26: warning: exported type SubscriptionResp should have comment or be unexported (golint)
    • Line 31: warning: exported type Subscription should have comment or be unexported (golint)
    • Line 43: warning: exported method Api.GetPlans should have comment or be unexported (golint)
    • Line 50: warning: exported method Api.GetSubscription should have comment or be unexported (golint)
    • Line 61: warning: exported type PaymentMethodsResp should have comment or be unexported (golint)
    • Line 66: warning: exported method Api.GetPaymentMethods should have comment or be unexported (golint)
    • neutron/backend/memory/addresses.go
    • Line 10: warning: exported type Addresses should have comment or be unexported (golint)
    • Line 26: warning: exported method Addresses.GetAddress should have comment or be unexported (golint)
    • Line 36: warning: exported method Addresses.ListAddresses should have comment or be unexported (golint)
    • Line 41: warning: exported method Addresses.InsertAddress should have comment or be unexported (golint)
    • Line 47: warning: exported method Addresses.UpdateAddress should have comment or be unexported (golint)
    • Line 58: warning: exported method Addresses.DeleteAddress should have comment or be unexported (golint)
    • Line 69: warning: exported function NewAddresses should have comment or be unexported (golint)
    • neutron/backend/memory/keys.go
    • Line 9: warning: exported type Keys should have comment or be unexported (golint)
    • Line 21: warning: exported method Keys.GetPublicKey should have comment or be unexported (golint)
    • Line 29: warning: exported method Keys.GetKeypair should have comment or be unexported (golint)
    • Line 37: warning: exported method Keys.InsertKeypair should have comment or be unexported (golint)
    • Line 44: warning: exported method Keys.UpdateKeypair should have comment or be unexported (golint)
    • Line 55: warning: exported function NewKeys should have comment or be unexported (golint)
    • neutron/backend/messages.go
    • Line 3: warning: comment on exported type MessagesBackend should be of the form "MessagesBackend ..." (with optional leading article) (golint)
    • Line 19: warning: comment on exported type Message should be of the form "Message ..." (with optional leading article) (golint)
    • Line 52: warning: comment on exported type Email should be of the form "Email ..." (with optional leading article) (golint)
    • Line 88: warning: exported type MessagePackage should have comment or be unexported (golint)
    • Line 95: warning: comment on exported type MessagesCount should be of the form "MessagesCount ..." (with optional leading article) (golint)
    • Line 102: warning: comment on exported type MessagesTotal should be of the form "MessagesTotal ..." (with optional leading article) (golint)
    • Line 109: warning: exported type LocationTotal should have comment or be unexported (golint)
    • Line 114: warning: exported type LabelTotal should have comment or be unexported (golint)
    • Line 180: warning: exported function MessagesTotalFromCounts should have comment or be unexported (golint)
    • Line 192: warning: comment on exported type MessagesFilter should be of the form "MessagesFilter ..." (with optional leading article) (golint)
    • Line 208: warning: comment on exported type MessageUpdate should be of the form "MessageUpdate ..." (with optional leading article) (golint)
    • Line 225: warning: comment on exported type LabelsOperation should be of the form "LabelsOperation ..." (with optional leading article) (golint)
    • Line 229: warning: exported const KeepLabels should have comment (or a comment on this block) or be unexported (golint)
    • neutron/backend/disk/addresses.go
    • Line 14: warning: exported type Addresses should have comment or be unexported (golint)
    • Line 50: warning: exported method Addresses.ListAddresses should have comment or be unexported (golint)
    • Line 64: warning: exported method Addresses.GetAddress should have comment or be unexported (golint)
    • Line 78: warning: exported method Addresses.InsertAddress should have comment or be unexported (golint)
    • Line 95: warning: exported method Addresses.UpdateAddress should have comment or be unexported (golint)
    • Line 117: warning: exported method Addresses.DeleteAddress should have comment or be unexported (golint)
    • Line 138: warning: exported function NewAddresses should have comment or be unexported (golint)
    • Line 144: warning: exported function UseAddresses should have comment or be unexported (golint)
    • neutron/backend/smtp/backend.go
    • Line 1: warning: package comment should be of the form "Package smtp ..." (golint)
    • Line 10: warning: exported type PasswordsBackend should have comment or be unexported (golint)
    • Line 14: warning: exported type Config should have comment or be unexported (golint)
    • Line 22: warning: exported method Config.Host should have comment or be unexported (golint)
    • Line 35: warning: exported function Use should have comment or be unexported (golint)
    • neutron/backend/imap/events.go
    • Line 10: warning: exported type Events should have comment or be unexported (golint)
    • Line 16: warning: exported method Events.DeleteAllEvents should have comment or be unexported (golint)
    • neutron/backend/attachments.go
    • Line 13: warning: comment on exported type AttachmentsBackend should be of the form "AttachmentsBackend ..." (with optional leading article) (golint)
    • Line 25: warning: comment on exported type Attachment should be of the form "Attachment ..." (with optional leading article) (golint)
    • Line 37: warning: exported type AttachmentKey should have comment or be unexported (golint)
    • neutron/backend/conversations.go
    • Line 3: warning: comment on exported type ConversationsBackend should be of the form "ConversationsBackend ..." (with optional leading article) (golint)
    • Line 20: warning: comment on exported type Conversation should be of the form "Conversation ..." (with optional leading article) (golint)
    • Line 37: warning: comment on exported type ConversationLabel should be of the form "ConversationLabel ..." (with optional leading article) (golint)
    • neutron/backend/keys.go
    • Line 13: warning: exported type KeysBackend should have comment or be unexported (golint)
    • Line 27: warning: exported const PgpMessageType should have comment or be unexported (golint)
    • Line 29: warning: comment on exported function ArmorMessage should be of the form "ArmorMessage ..." (golint)
    • Line 34: warning: comment on exported type Keypair should be of the form "Keypair ..." (with optional leading article) (golint)
    • Line 107: warning: comment on exported function NewKeypair should be of the form "NewKeypair ..." (golint)
    • Line 124: warning: comment on exported function IsEncrypted should be of the form "IsEncrypted ..." (golint)
    • neutron/router/api/bugs.go
    • Line 10: warning: exported type ClientType should have comment or be unexported (golint)
    • Line 13: warning: exported const ClientEmail should have comment (or a comment on this block) or be unexported (golint)
    • Line 17: warning: exported type CrashReq should have comment or be unexported (golint)
    • Line 29: warning: exported method Api.Crash should have comment or be unexported (golint)
    • neutron/router/api/messages.go
    • Line 97: warning: exported type MessageReq should have comment or be unexported (golint)
    • Line 117: warning: exported type MessageResp should have comment or be unexported (golint)
    • Line 122: warning: exported method Api.GetMessage should have comment or be unexported (golint)
    • Line 140: warning: exported type MessagesListResp should have comment or be unexported (golint)
    • Line 146: warning: exported method Api.ListMessages should have comment or be unexported (golint)
    • Line 171: warning: exported type MessagesCountResp should have comment or be unexported (golint)
    • Line 176: warning: exported method Api.GetMessagesCount should have comment or be unexported (golint)
    • Line 191: warning: exported type MessagesTotalResp should have comment or be unexported (golint)
    • Line 196: warning: exported method Api.GetMessagesTotal should have comment or be unexported (golint)
    • Line 261: warning: exported method Api.UpdateMessagesRead should have comment or be unexported (golint)
    • Line 283: warning: exported method Api.UpdateMessagesStar should have comment or be unexported (golint)
    • Line 296: warning: exported method Api.UpdateMessagesSystemLabel should have comment or be unexported (golint)
    • Line 300: warning: exported type UpdateLabelReq should have comment or be unexported (golint)
    • Line 306: warning: exported type UpdateMessagesLabelReq should have comment or be unexported (golint)
    • Line 328: warning: exported method Api.UpdateMessagesLabel should have comment or be unexported (golint)
    • Line 332: warning: exported method Api.DeleteAllMessages should have comment or be unexported (golint)
    • Line 358: warning: exported method Api.CreateDraft should have comment or be unexported (golint)
    • Line 407: warning: exported method Api.UpdateDraft should have comment or be unexported (golint)
    • Line 439: warning: exported type SendMessageReq should have comment or be unexported (golint)
    • Line 447: warning: exported type SendMessageResp should have comment or be unexported (golint)
    • Line 452: warning: exported method Api.SendMessage should have comment or be unexported (golint)
    • Line 556: warning: exported method Api.DeleteMessages should have comment or be unexported (golint)
    • neutron/backend/events/addresses.go
    • Line 7: warning: exported type Addresses should have comment or be unexported (golint)
    • Line 12: warning: exported method Addresses.InsertAddress should have comment or be unexported (golint)
    • Line 23: warning: exported method Addresses.UpdateAddress should have comment or be unexported (golint)
    • Line 34: warning: exported method Addresses.DeleteAddress should have comment or be unexported (golint)
    • Line 45: warning: exported function NewAddresses should have comment or be unexported (golint)
    • neutron/backend/disk/keys.go
    • Line 11: warning: comment on exported type Keys should be of the form "Keys ..." (with optional leading article) (golint)
    • Line 50: warning: exported method Keys.GetPublicKey should have comment or be unexported (golint)
    • Line 58: warning: exported method Keys.GetKeypair should have comment or be unexported (golint)
    • Line 79: warning: exported method Keys.InsertKeypair should have comment or be unexported (golint)
    • Line 83: warning: exported method Keys.UpdateKeypair should have comment or be unexported (golint)
    • Line 113: warning: exported function NewKeys should have comment or be unexported (golint)
    • Line 120: warning: exported function UseKeys should have comment or be unexported (golint)
    • neutron/router/api/attachments.go
    • Line 12: warning: exported method Api.GetAttachment should have comment or be unexported (golint)
    • Line 35: warning: comment on exported type UploadAttachmentReq should be of the form "UploadAttachmentReq ..." (with optional leading article) (golint)
    • Line 46: warning: exported type UploadAttachmentResp should have comment or be unexported (golint)
    • Line 52: warning: exported method Api.UploadAttachment should have comment or be unexported (golint)
    • Line 97: warning: exported method Api.DeleteAttachment should have comment or be unexported (golint)
    • neutron/backend/imap/attachments.go
    • Line 11: warning: exported method Messages.ListAttachments should have comment or be unexported (golint)
    • Line 15: warning: exported method Messages.ReadAttachment should have comment or be unexported (golint)
    • Line 67: warning: exported method Messages.InsertAttachment should have comment or be unexported (golint)
    • Line 71: warning: exported method Messages.DeleteAttachment should have comment or be unexported (golint)
    • neutron/router/api/organizations.go
    • Line 7: warning: exported type Organization should have comment or be unexported (golint)
    • Line 15: warning: exported type OrganizationResp should have comment or be unexported (golint)
    • Line 20: warning: exported method Api.GetUserOrganization should have comment or be unexported (golint)
    • neutron/backend/disk/backend.go
    • Line 1: warning: package comment should be of the form "Package disk ..." (golint)
    • Line 8: warning: exported type Config should have comment or be unexported (golint)
    • Line 12: warning: exported function Use should have comment or be unexported (golint)
    • neutron/backend/util/textproto/header.go
    • Line 10: warning: exported function GetMessageHeader should have comment or be unexported (golint)
    • Line 33: warning: exported function GetOutgoingMessageHeader should have comment or be unexported (golint)
    • Line 46: warning: exported function FormatHeader should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign40%

IneffAssign detects ineffectual assignments in Go code.

    • neutron/backend/util/conversations.go
    • Line 4: warning: cannot find package "." in: (ineffassign)
    • Line 4: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 69: warning: b.CountMessages undefined (type *DummyConversations has no field or method CountMessages) (ineffassign)
    • Line 73: warning: b.DeleteMessage undefined (type *DummyConversations has no field or method DeleteMessage) (ineffassign)
    • neutron/backend/imap/util.go
    • Line 62: warning: undeclared name: imap (ineffassign)
    • Line 81: warning: undeclared name: imap (ineffassign)
    • Line 111: warning: undeclared name: imap (ineffassign)
    • Line 111: warning: undeclared name: imap (ineffassign)
    • Line 131: warning: undeclared name: imap (ineffassign)
    • Line 158: warning: undeclared name: imap (ineffassign)
    • Line 165: warning: undeclared name: imap (ineffassign)
    • Line 173: warning: undeclared name: imap (ineffassign)
    • Line 68: warning: undeclared name: imap (ineffassign)
    • Line 70: warning: undeclared name: imap (ineffassign)
    • Line 72: warning: undeclared name: imap (ineffassign)
    • Line 75: warning: undeclared name: imap (ineffassign)
    • Line 15: warning: "github.com/emersion/go-imap" imported but not used (ineffassign)
    • neutron/router/api/addresses.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import gopkg.in/macaron.v1 (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 31: warning: undeclared name: macaron (ineffassign)
    • Line 64: warning: undeclared name: macaron (ineffassign)
    • Line 92: warning: undeclared name: macaron (ineffassign)
    • Line 6: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/router/api/settings.go
    • Line 21: warning: undeclared name: macaron (ineffassign)
    • Line 34: warning: undeclared name: macaron (ineffassign)
    • Line 49: warning: undeclared name: macaron (ineffassign)
    • Line 53: warning: undeclared name: macaron (ineffassign)
    • Line 57: warning: undeclared name: macaron (ineffassign)
    • Line 61: warning: undeclared name: macaron (ineffassign)
    • Line 65: warning: undeclared name: macaron (ineffassign)
    • Line 69: warning: undeclared name: macaron (ineffassign)
    • Line 73: warning: undeclared name: macaron (ineffassign)
    • Line 77: warning: undeclared name: macaron (ineffassign)
    • Line 4: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/router/api/auth.go
    • Line 75: warning: undeclared name: macaron (ineffassign)
    • Line 144: warning: undeclared name: macaron (ineffassign)
    • Line 150: warning: undeclared name: macaron (ineffassign)
    • Line 215: warning: undeclared name: macaron (ineffassign)
    • Line 8: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/backend/disk/addresses.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/emersion/neutron/backend/events (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/emersion/neutron/backend/util (invalid package name: "") (ineffassign)
    • neutron/backend/imap/backend.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/emersion/neutron/backend/util (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/emersion/neutron/backend/events (invalid package name: "") (ineffassign)
    • neutron/backend/imap/users.go
    • Line 25: warning: c.SupportQuota undefined (type *conn has no field or method SupportQuota) (ineffassign)
    • Line 31: warning: c.GetQuotaRoot undefined (type *conn has no field or method GetQuotaRoot) (ineffassign)
    • Line 38: warning: undeclared name: quota (ineffassign)
    • Line 7: warning: "github.com/emersion/go-imap-quota" imported but not used (ineffassign)
    • neutron/backend/util/textproto/message.go
    • Line 16: warning: cannot find package "." in: (ineffassign)
    • Line 16: warning: could not import github.com/emersion/neutron/backend/util/textproto/chunksplit (invalid package name: "") (ineffassign)
    • Line 29: warning: addr declared but not used (ineffassign)
    • Line 36: warning: addr declared but not used (ineffassign)
    • Line 43: warning: addr declared but not used (ineffassign)
    • neutron/backend/util/textproto/encoding.go
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: could not import golang.org/x/text/encoding (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import golang.org/x/text/encoding/charmap (invalid package name: "") (ineffassign)
    • neutron/backend/memory/attachments.go
    • Line 21: warning: att.ID undefined (type *attachment has no field or method ID) (ineffassign)
    • Line 30: warning: att.MessageID undefined (type *attachment has no field or method MessageID) (ineffassign)
    • Line 74: warning: b.attachments[user][i].MessageID undefined (type *attachment has no field or method MessageID) (ineffassign)
    • neutron/backend/imap/events.go
    • Line 39: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 40: warning: undeclared name: imap (ineffassign)
    • Line 43: warning: undeclared name: imap (ineffassign)
    • Line 44: warning: c.Fetch undefined (type *conn has no field or method Fetch) (ineffassign)
    • Line 44: warning: undeclared name: imap (ineffassign)
    • Line 44: warning: undeclared name: imap (ineffassign)
    • Line 62: warning: b.InsertEvent undefined (type *Events has no field or method InsertEvent) (ineffassign)
    • Line 7: warning: "github.com/emersion/go-imap" imported but not used (ineffassign)
    • neutron/backend/smtp/send.go
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: could not import github.com/emersion/neutron/backend/util/textproto (invalid package name: "") (ineffassign)
    • neutron/neutron.go
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 14: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 13: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 15: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import gopkg.in/macaron.v1 (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/emersion/neutron/config (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/emersion/neutron/backend/memory (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/emersion/neutron/backend/imap (invalid package name: "") (ineffassign)
    • Line 13: warning: could not import github.com/emersion/neutron/backend/smtp (invalid package name: "") (ineffassign)
    • Line 14: warning: could not import github.com/emersion/neutron/backend/disk (invalid package name: "") (ineffassign)
    • Line 15: warning: could not import github.com/emersion/neutron/router/api (invalid package name: "") (ineffassign)
    • Line 73: warning: undeclared name: macaron (ineffassign)
    • Line 74: warning: undeclared name: macaron (ineffassign)
    • Line 75: warning: undeclared name: macaron (ineffassign)
    • Line 76: warning: undeclared name: macaron (ineffassign)
    • Line 84: warning: undeclared name: macaron (ineffassign)
    • Line 84: warning: undeclared name: macaron (ineffassign)
    • Line 90: warning: undeclared name: macaron (ineffassign)
    • Line 7: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/backend/imap/messages.go
    • Line 13: warning: cannot find package "." in: (ineffassign)
    • Line 14: warning: cannot find package "." in: (ineffassign)
    • Line 13: warning: could not import github.com/emersion/neutron/backend/memory (invalid package name: "") (ineffassign)
    • Line 14: warning: could not import github.com/emersion/neutron/backend/util/textproto (invalid package name: "") (ineffassign)
    • Line 326: warning: undeclared name: imap (ineffassign)
    • Line 326: warning: undeclared name: imap (ineffassign)
    • Line 342: warning: undeclared name: imap (ineffassign)
    • Line 358: warning: undeclared name: imap (ineffassign)
    • Line 379: warning: undeclared name: imap (ineffassign)
    • Line 44: warning: undeclared name: imap (ineffassign)
    • Line 47: warning: undeclared name: imap (ineffassign)
    • Line 47: warning: undeclared name: imap (ineffassign)
    • Line 47: warning: undeclared name: imap (ineffassign)
    • Line 47: warning: undeclared name: imap (ineffassign)
    • Line 47: warning: undeclared name: imap (ineffassign)
    • Line 51: warning: undeclared name: imap (ineffassign)
    • Line 52: warning: c.UidFetch undefined (type *conn has no field or method UidFetch) (ineffassign)
    • Line 64: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 72: warning: undeclared name: imap (ineffassign)
    • Line 73: warning: undeclared name: imap (ineffassign)
    • Line 73: warning: undeclared name: imap (ineffassign)
    • Line 88: warning: undeclared name: imap (ineffassign)
    • Line 89: warning: c.UidFetch undefined (type *conn has no field or method UidFetch) (ineffassign)
    • Line 89: warning: undeclared name: imap (ineffassign)
    • Line 89: warning: undeclared name: imap (ineffassign)
    • Line 99: warning: undeclared name: imap (ineffassign)
    • Line 99: warning: undeclared name: imap (ineffassign)
    • Line 132: warning: be.tmpAtts.ListAttachments undefined (type updatableAttachments has no field or method ListAttachments) (ineffassign)
    • Line 132: warning: tmpAtts declared but not used (ineffassign)
    • Line 164: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 167: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 171: warning: undeclared name: imap (ineffassign)
    • Line 176: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 177: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 177: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 186: warning: undeclared name: imap (ineffassign)
    • Line 215: warning: c.UidSearch undefined (type *conn has no field or method UidSearch) (ineffassign)
    • Line 223: warning: undeclared name: imap (ineffassign)
    • Line 228: warning: undeclared name: imap (ineffassign)
    • Line 228: warning: undeclared name: imap (ineffassign)
    • Line 228: warning: undeclared name: imap (ineffassign)
    • Line 228: warning: undeclared name: imap (ineffassign)
    • Line 228: warning: undeclared name: imap (ineffassign)
    • Line 230: warning: undeclared name: imap (ineffassign)
    • Line 234: warning: c.UidFetch undefined (type *conn has no field or method UidFetch) (ineffassign)
    • Line 236: warning: c.Fetch undefined (type *conn has no field or method Fetch) (ineffassign)
    • Line 242: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 243: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 272: warning: c.Status undefined (type *conn has no field or method Status) (ineffassign)
    • Line 272: warning: undeclared name: imap (ineffassign)
    • Line 272: warning: undeclared name: imap (ineffassign)
    • Line 272: warning: undeclared name: imap (ineffassign)
    • Line 296: warning: c.Append undefined (type *conn has no field or method Append) (ineffassign)
    • Line 333: warning: undeclared name: imap (ineffassign)
    • Line 335: warning: undeclared name: imap (ineffassign)
    • Line 338: warning: undeclared name: imap (ineffassign)
    • Line 339: warning: c.UidStore undefined (type *conn has no field or method UidStore) (ineffassign)
    • Line 339: warning: undeclared name: imap (ineffassign)
    • Line 349: warning: undeclared name: imap (ineffassign)
    • Line 350: warning: c.UidStore undefined (type *conn has no field or method UidStore) (ineffassign)
    • Line 350: warning: undeclared name: imap (ineffassign)
    • Line 354: warning: c.Expunge undefined (type *conn has no field or method Expunge) (ineffassign)
    • Line 365: warning: c.UidCopy undefined (type *conn has no field or method UidCopy) (ineffassign)
    • Line 401: warning: undeclared name: imap (ineffassign)
    • Line 413: warning: undeclared name: imap (ineffassign)
    • Line 420: warning: undeclared name: imap (ineffassign)
    • Line 427: warning: undeclared name: imap (ineffassign)
    • Line 437: warning: b.tmpAtts.ListAttachments undefined (type updatableAttachments has no field or method ListAttachments) (ineffassign)
    • Line 447: warning: b.tmpAtts.ReadAttachment undefined (type updatableAttachments has no field or method ReadAttachment) (ineffassign)
    • Line 461: warning: undeclared name: imap (ineffassign)
    • Line 474: warning: b.tmpAtts.DeleteAttachment undefined (type updatableAttachments has no field or method DeleteAttachment) (ineffassign)
    • Line 496: warning: b.tmpAtts.ListAttachments undefined (type updatableAttachments has no field or method ListAttachments) (ineffassign)
    • Line 524: warning: b.tmpAtts.ListAttachments undefined (type updatableAttachments has no field or method ListAttachments) (ineffassign)
    • Line 446: warning: d declared but not used (ineffassign)
    • Line 544: warning: undeclared name: imap (ineffassign)
    • Line 10: warning: "github.com/emersion/go-imap" imported but not used (ineffassign)
    • neutron/router/api/messages.go
    • Line 28: warning: undeclared name: macaron (ineffassign)
    • Line 122: warning: undeclared name: macaron (ineffassign)
    • Line 146: warning: undeclared name: macaron (ineffassign)
    • Line 176: warning: undeclared name: macaron (ineffassign)
    • Line 196: warning: undeclared name: macaron (ineffassign)
    • Line 222: warning: undeclared name: macaron (ineffassign)
    • Line 247: warning: undeclared name: macaron (ineffassign)
    • Line 261: warning: undeclared name: macaron (ineffassign)
    • Line 265: warning: undeclared name: macaron (ineffassign)
    • Line 283: warning: undeclared name: macaron (ineffassign)
    • Line 287: warning: undeclared name: macaron (ineffassign)
    • Line 296: warning: undeclared name: macaron (ineffassign)
    • Line 311: warning: undeclared name: macaron (ineffassign)
    • Line 328: warning: undeclared name: macaron (ineffassign)
    • Line 332: warning: undeclared name: macaron (ineffassign)
    • Line 358: warning: undeclared name: macaron (ineffassign)
    • Line 407: warning: undeclared name: macaron (ineffassign)
    • Line 452: warning: undeclared name: macaron (ineffassign)
    • Line 556: warning: undeclared name: macaron (ineffassign)
    • Line 7: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/router/api/users.go
    • Line 54: warning: undeclared name: macaron (ineffassign)
    • Line 98: warning: undeclared name: macaron (ineffassign)
    • Line 115: warning: undeclared name: macaron (ineffassign)
    • Line 170: warning: undeclared name: macaron (ineffassign)
    • Line 177: warning: undeclared name: macaron (ineffassign)
    • Line 197: warning: undeclared name: macaron (ineffassign)
    • Line 7: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/backend/events/conversations.go
    • Line 24: warning: b.GetConversation undefined (type *Conversations has no field or method GetConversation) (ineffassign)
    • Line 40: warning: b.GetConversation undefined (type *Conversations has no field or method GetConversation) (ineffassign)
    • Line 51: warning: b.GetMessage undefined (type *Conversations has no field or method GetMessage) (ineffassign)
    • Line 56: warning: b.GetConversation undefined (type *Conversations has no field or method GetConversation) (ineffassign)
    • neutron/backend/memory/addresses.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/emersion/neutron/backend/util (invalid package name: "") (ineffassign)
    • neutron/backend/keys.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import golang.org/x/crypto/openpgp (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import golang.org/x/crypto/openpgp/armor (invalid package name: "") (ineffassign)
    • neutron/backend/imap/attachments.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/emersion/go-imap (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/emersion/neutron/backend (invalid package name: "") (ineffassign)
    • Line 17: warning: b.tmpAtts.ReadAttachment undefined (type updatableAttachments has no field or method ReadAttachment) (ineffassign)
    • Line 40: warning: undeclared name: imap (ineffassign)
    • Line 43: warning: undeclared name: imap (ineffassign)
    • Line 43: warning: undeclared name: imap (ineffassign)
    • Line 45: warning: undeclared name: imap (ineffassign)
    • Line 46: warning: c.UidFetch undefined (type *conn has no field or method UidFetch) (ineffassign)
    • Line 56: warning: undeclared name: imap (ineffassign)
    • Line 57: warning: undeclared name: imap (ineffassign)
    • Line 57: warning: undeclared name: imap (ineffassign)
    • Line 68: warning: b.tmpAtts.InsertAttachment undefined (type updatableAttachments has no field or method InsertAttachment) (ineffassign)
    • Line 72: warning: b.tmpAtts.DeleteAttachment undefined (type updatableAttachments has no field or method DeleteAttachment) (ineffassign)
    • Line 7: warning: "github.com/emersion/go-imap" imported but not used (ineffassign)
    • neutron/backend/imap/labels.go
    • Line 107: warning: c.Create undefined (type *conn has no field or method Create) (ineffassign)
    • Line 136: warning: c.Rename undefined (type *conn has no field or method Rename) (ineffassign)
    • Line 158: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 162: warning: c.Delete undefined (type *conn has no field or method Delete) (ineffassign)
    • neutron/router/api/contacts.go
    • Line 30: warning: undeclared name: macaron (ineffassign)
    • Line 49: warning: undeclared name: macaron (ineffassign)
    • Line 78: warning: undeclared name: macaron (ineffassign)
    • Line 101: warning: undeclared name: macaron (ineffassign)
    • Line 127: warning: undeclared name: macaron (ineffassign)
    • Line 4: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/config/config.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 5: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 5: warning: could not import github.com/emersion/neutron/backend/imap (invalid package name: "") (ineffassign)
    • Line 6: warning: could not import github.com/emersion/neutron/backend/smtp (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/emersion/neutron/backend/disk (invalid package name: "") (ineffassign)
    • neutron/backend/imap/conn.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import github.com/emersion/go-imap-idle (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/emersion/go-imap-quota (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/emersion/go-imap/client (invalid package name: "") (ineffassign)
    • Line 30: warning: undeclared name: imap (ineffassign)
    • Line 242: warning: undeclared name: imap (ineffassign)
    • Line 87: warning: c.Close undefined (type *conn has no field or method Close) (ineffassign)
    • Line 105: warning: c.State undefined (type *conn has no field or method State) (ineffassign)
    • Line 105: warning: undeclared name: imap (ineffassign)
    • Line 154: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 154: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 155: warning: c.Select undefined (type *conn has no field or method Select) (ineffassign)
    • Line 165: warning: c.Idle undefined (type *conn has no field or method Idle) (ineffassign)
    • Line 173: warning: c.Updates undefined (type *conn has no field or method Updates) (ineffassign)
    • Line 179: warning: undeclared name: imap (ineffassign)
    • Line 256: warning: undeclared name: imap (ineffassign)
    • Line 259: warning: c.List undefined (type *conn has no field or method List) (ineffassign)
    • Line 294: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 294: warning: c.Mailbox undefined (type *conn has no field or method Mailbox) (ineffassign)
    • Line 295: warning: c.Select undefined (type *conn has no field or method Select) (ineffassign)
    • Line 8: warning: "github.com/emersion/go-imap" imported but not used (ineffassign)
    • neutron/router/api/api.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/go-macaron/binding (invalid package name: "") (ineffassign)
    • Line 72: warning: undeclared name: macaron (ineffassign)
    • Line 81: warning: undeclared name: macaron (ineffassign)
    • Line 90: warning: undeclared name: macaron (ineffassign)
    • Line 106: warning: undeclared name: macaron (ineffassign)
    • Line 115: warning: undeclared name: macaron (ineffassign)
    • Line 124: warning: undeclared name: macaron (ineffassign)
    • Line 130: warning: undeclared name: macaron (ineffassign)
    • Line 271: warning: undeclared name: macaron (ineffassign)
    • Line 6: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/router/api/conversations.go
    • Line 15: warning: undeclared name: macaron (ineffassign)
    • Line 32: warning: undeclared name: macaron (ineffassign)
    • Line 53: warning: undeclared name: macaron (ineffassign)
    • Line 79: warning: undeclared name: macaron (ineffassign)
    • Line 119: warning: undeclared name: macaron (ineffassign)
    • Line 123: warning: undeclared name: macaron (ineffassign)
    • Line 127: warning: undeclared name: macaron (ineffassign)
    • Line 136: warning: undeclared name: macaron (ineffassign)
    • Line 140: warning: undeclared name: macaron (ineffassign)
    • Line 4: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)
    • neutron/router/api/labels.go
    • Line 16: warning: undeclared name: macaron (ineffassign)
    • Line 44: warning: undeclared name: macaron (ineffassign)
    • Line 63: warning: undeclared name: macaron (ineffassign)
    • Line 89: warning: undeclared name: macaron (ineffassign)
    • Line 119: warning: undeclared name: macaron (ineffassign)
    • Line 48: warning: req.Name undefined (type LabelReq has no field or method Name) (ineffassign)
    • Line 49: warning: req.Display undefined (type LabelReq has no field or method Display) (ineffassign)
    • Line 50: warning: req.Color undefined (type LabelReq has no field or method Color) (ineffassign)
    • Line 6: warning: "gopkg.in/macaron.v1" imported but not used (ineffassign)

misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!