Skip to content

Commit d828ee0

Browse files
committed
Fix linter issues for v2.0.0 release
Fixed 6 linter issues found in CI: 1. errcheck (2 issues): - internal/reader/reader.go:58 - Added proper Close() error handling with defer - internal/reader/reader.go:174 - Added proper Close() error handling with defer 2. gocritic (2 issues): - internal/reader/element.go:56 - Replaced single-case switch with if statement - internal/reader/reconstruct.go:1306 - Replaced single-case switch with if statement 3. staticcheck (1 issue): - internal/core/image.go:141 - Simplified with unconditional strings.TrimPrefix 4. unparam (1 issue): - internal/reader/reconstruct.go:414 - Changed hydrateRun() to return only error (domain.Run return value was never used) All tests pass, 0 linter warnings. Ready for production release v2.0.0.
1 parent 4298aba commit d828ee0

File tree

4 files changed

+24
-25
lines changed

4 files changed

+24
-25
lines changed

internal/core/image.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,10 +137,7 @@ func NewImageFromPackage(target string, data []byte, contentType string) (domain
137137
normalized = strings.TrimPrefix(normalized, "../")
138138
}
139139

140-
relative := normalized
141-
if strings.HasPrefix(relative, "word/") {
142-
relative = strings.TrimPrefix(relative, "word/")
143-
}
140+
relative := strings.TrimPrefix(normalized, "word/")
144141

145142
base := filepath.Base(relative)
146143
if base == "" {

internal/reader/element.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,7 @@ func parseXMLTree(data []byte) (*Element, error) {
5353
if err != nil {
5454
return nil, err
5555
}
56-
switch start := tok.(type) {
57-
case xml.StartElement:
56+
if start, ok := tok.(xml.StartElement); ok {
5857
return parseElement(dec, start)
5958
}
6059
}

internal/reader/reader.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@ func LoadPackageFromPath(path string) (*Package, error) {
5555
if err != nil {
5656
return nil, errors.WrapWithCode(err, errors.ErrCodeIO, opLoadFromPath)
5757
}
58-
defer file.Close()
58+
defer func() {
59+
_ = file.Close() // Best effort close
60+
}()
5961

6062
info, err := file.Stat()
6163
if err != nil {
@@ -171,7 +173,9 @@ func readZipFile(file *zip.File) ([]byte, error) {
171173
if err != nil {
172174
return nil, err
173175
}
174-
defer rc.Close()
176+
defer func() {
177+
_ = rc.Close() // Best effort close
178+
}()
175179

176180
data, err := io.ReadAll(rc)
177181
if err != nil {

internal/reader/reconstruct.go

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ func populateParagraph(para domain.Paragraph, elem *Element, ctx *reconstructCon
176176

177177
switch child.Name.Local {
178178
case "r":
179-
if _, err := hydrateRun(para, child, ctx, state, nil); err != nil {
179+
if err := hydrateRun(para, child, ctx, state, nil); err != nil {
180180
return err
181181
}
182182
case "hyperlink":
@@ -411,9 +411,9 @@ func applyParagraphNumbering(para domain.Paragraph, props *Element) error {
411411
return nil
412412
}
413413

414-
func hydrateRun(para domain.Paragraph, elem *Element, ctx *reconstructContext, state *fieldState, extraFields []domain.Field) (domain.Run, error) {
414+
func hydrateRun(para domain.Paragraph, elem *Element, ctx *reconstructContext, state *fieldState, extraFields []domain.Field) error {
415415
if para == nil || elem == nil {
416-
return nil, nil
416+
return nil
417417
}
418418

419419
var (
@@ -438,7 +438,7 @@ func hydrateRun(para domain.Paragraph, elem *Element, ctx *reconstructContext, s
438438
case "fldChar":
439439
if state != nil {
440440
if err := state.handleFieldChar(child); err != nil {
441-
return nil, err
441+
return err
442442
}
443443
}
444444
case "instrText":
@@ -458,35 +458,35 @@ func hydrateRun(para domain.Paragraph, elem *Element, ctx *reconstructContext, s
458458
}
459459

460460
if !createRun {
461-
return nil, nil
461+
return nil
462462
}
463463

464464
run, err := para.AddRun()
465465
if err != nil {
466-
return nil, errors.Wrap(err, opHydrateRun)
466+
return errors.Wrap(err, opHydrateRun)
467467
}
468468

469469
if textBuilder.Len() > 0 {
470470
if err := run.SetText(textBuilder.String()); err != nil {
471-
return nil, errors.Wrap(err, opHydrateRun)
471+
return errors.Wrap(err, opHydrateRun)
472472
}
473473
}
474474

475475
if props != nil {
476476
if err := applyRunProperties(run, props); err != nil {
477-
return nil, err
477+
return err
478478
}
479479
}
480480

481481
for _, br := range breaks {
482482
if err := run.AddBreak(br); err != nil {
483-
return nil, errors.Wrap(err, opHydrateRun)
483+
return errors.Wrap(err, opHydrateRun)
484484
}
485485
}
486486

487487
if state != nil {
488488
if err := state.attachToRun(run); err != nil {
489-
return nil, err
489+
return err
490490
}
491491
}
492492

@@ -501,19 +501,19 @@ func hydrateRun(para domain.Paragraph, elem *Element, ctx *reconstructContext, s
501501
accessor.SetProperty("display", run.Text())
502502
}
503503
if err := run.AddField(field); err != nil {
504-
return nil, errors.Wrap(err, opHydrateRun)
504+
return errors.Wrap(err, opHydrateRun)
505505
}
506506
}
507507

508508
if len(drawings) > 0 {
509509
for _, drawing := range drawings {
510510
if err := hydrateDrawing(para, run, drawing, ctx); err != nil {
511-
return nil, err
511+
return err
512512
}
513513
}
514514
}
515515

516-
return run, nil
516+
return nil
517517
}
518518

519519
func applyRunProperties(run domain.Run, props *Element) error {
@@ -681,7 +681,7 @@ func hydrateHyperlink(para domain.Paragraph, elem *Element, ctx *reconstructCont
681681
extraFields = []domain.Field{field}
682682
}
683683

684-
if _, err := hydrateRun(para, child, ctx, state, extraFields); err != nil {
684+
if err := hydrateRun(para, child, ctx, state, extraFields); err != nil {
685685
return errors.Wrap(err, opHydrateHyperlink)
686686
}
687687
}
@@ -720,7 +720,7 @@ func hydrateSimpleField(para domain.Paragraph, elem *Element, ctx *reconstructCo
720720
}
721721
}
722722

723-
if _, err := hydrateRun(para, child, ctx, state, extra); err != nil {
723+
if err := hydrateRun(para, child, ctx, state, extra); err != nil {
724724
return errors.Wrap(err, opHydrateSimpleField)
725725
}
726726
}
@@ -1303,8 +1303,7 @@ func extractQuotedStrings(input string) []string {
13031303
start := 0
13041304

13051305
for i, r := range input {
1306-
switch r {
1307-
case '"':
1306+
if r == '"' {
13081307
if inQuote {
13091308
results = append(results, input[start:i])
13101309
inQuote = false

0 commit comments

Comments
 (0)