Browse Source

Miscellaneous improvements to internal/reader/subscription/finder.go

- Surface `localizedError` in FindSubscriptionsFromWellKnownURLs via slog
- Use an inline declaration for new subscriptions, like done elsewhere in the
  file, if only for consistency's sake
- Preallocate the `subscriptions` slice when using an RSS-bridge,
  it's a good practise, and it might even marginally improve
  performances when adding __a lot__ of feeds via an rss-bridge instance, wooo!
jvoisin 2 years ago
parent
commit
5b2558bf92
1 changed files with 7 additions and 6 deletions
  1. 7 6
      internal/reader/subscription/finder.go

+ 7 - 6
internal/reader/subscription/finder.go

@@ -235,14 +235,15 @@ func (f *SubscriptionFinder) FindSubscriptionsFromWellKnownURLs(websiteURL strin
 			defer responseHandler.Close()
 
 			if localizedError := responseHandler.LocalizedError(); localizedError != nil {
+				slog.Debug("Unable to subscribe", slog.String("fullURL", fullURL), slog.Any("error", localizedError.Error()))
 				continue
 			}
 
-			subscription := new(Subscription)
-			subscription.Type = kind
-			subscription.Title = fullURL
-			subscription.URL = fullURL
-			subscriptions = append(subscriptions, subscription)
+			subscriptions = append(subscriptions, &Subscription{
+				Type:  kind,
+				Title: fullURL,
+				URL:   fullURL,
+			})
 		}
 	}
 
@@ -270,7 +271,7 @@ func (f *SubscriptionFinder) FindSubscriptionsFromRSSBridge(websiteURL, rssBridg
 		return nil, nil
 	}
 
-	var subscriptions Subscriptions
+	subscriptions := make(Subscriptions, 0, len(bridges))
 	for _, bridge := range bridges {
 		subscriptions = append(subscriptions, &Subscription{
 			Title: bridge.BridgeMeta.Name,