gerdur 2.10.0 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/dist/package.json +2 -2
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +4 -2
- package/dist/src/lib/download-track.js +1 -3
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.11.0 - 2026-08-31
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- **`--enrich`** now picks the right release. It was calling the Cover Art
|
|
8
|
+
Archive on a recording's *first* MusicBrainz release, which for many tracks is
|
|
9
|
+
a promo comp / bootleg with no art — so it silently fell back to Deezer's
|
|
10
|
+
cover. `gerdur-core@2.13.0`'s `getCoverArtByISRC` walks the release-groups
|
|
11
|
+
canonical-first (Official → Album → earliest) and returns the first real
|
|
12
|
+
cover (verified: 216 KB CAA cover vs Deezer's ~35 KB).
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- Re-export `getCoverArtByISRC` / `getRecordingCoverArt`.
|
|
17
|
+
|
|
3
18
|
## 2.10.0 - 2026-08-31
|
|
4
19
|
|
|
5
20
|
### Added
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gerdur",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"description": "The crucial streaming module for dabox systems.",
|
|
5
5
|
"author": "Christian",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"adm-zip": "^0.5.16",
|
|
49
49
|
"chalk": "^4.1.2",
|
|
50
50
|
"commander": "^9.5.0",
|
|
51
|
-
"gerdur-core": "^2.
|
|
51
|
+
"gerdur-core": "^2.13.0",
|
|
52
52
|
"dot-prop": "^6.0.1",
|
|
53
53
|
"got": "^11.8.6",
|
|
54
54
|
"gradient-string": "^2.0.2",
|
package/dist/src/index.d.ts
CHANGED
|
@@ -58,7 +58,7 @@ export { createSession, Session } from './lib/session';
|
|
|
58
58
|
export type { SessionOptions, DownloadTracksOptions, SearchType } from './lib/session';
|
|
59
59
|
export { createSession as createCoreSession, Session as CoreSession, defaultSession } from 'gerdur-core';
|
|
60
60
|
export type { SessionUserData, SearchFacets } from 'gerdur-core';
|
|
61
|
-
export { configureMusicBrainz, lookupRecordingByISRC, getMusicBrainzRecording, getMusicBrainzRelease, getCoverArt, getBestCoverArtUrl, PoliteJsonClient, } from 'gerdur-core';
|
|
61
|
+
export { configureMusicBrainz, lookupRecordingByISRC, getMusicBrainzRecording, getMusicBrainzRelease, getCoverArt, getBestCoverArtUrl, getRecordingCoverArt, getCoverArtByISRC, PoliteJsonClient, } from 'gerdur-core';
|
|
62
62
|
export type { MBRecording, MBRelease, MBArtistCredit, CoverArt, CoverArtImage } from 'gerdur-core';
|
|
63
63
|
export { getTrackBuffer, getTaggedTrack, downloadTrackToFile } from './lib/api-download';
|
|
64
64
|
export type { Quality, GetTrackBufferOptions, DownloadTrackOptions, DownloadResult } from './lib/api-download';
|
package/dist/src/index.js
CHANGED
|
@@ -33,8 +33,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
33
33
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
34
34
|
};
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
37
|
-
exports.DeezerError = exports.GeoBlocked = exports.toLrc = exports.normalizeContributors = exports.getRichAlbum = exports.addTrackTags = exports.getStream = exports.createDecryptStream = exports.downloadTrackBuffer = exports.streamTrackDownload = exports.resolveDownloadUrls = exports.getTrackDownloadUrl = exports.getLyrics = exports.getDiscography = exports.getArtistInfo = exports.getPlaylistTracks = exports.getPlaylistInfo = exports.getAlbumTracks = exports.getAlbumInfo = exports.getTrackInfo = exports.getUser = exports.DEEZER_FORMATS = exports.toFormat = exports.formatName = exports.downloadPreview = exports.getTrackPreview = exports.getAlbumByUPC = exports.getTrackByISRC = exports.refreshTrackTokens = exports.getShowEpisodes = exports.getEpisode = exports.getRadioGenres = exports.getRadioTracks = exports.getRadios = exports.getUserChartTracks = exports.getUserRadios = void 0;
|
|
36
|
+
exports.getUserFavoriteAlbums = exports.getUserFavoriteTracks = exports.getUserFlow = exports.getArtistRadioTracks = exports.getArtistPlaylists = exports.getArtistAlbums = exports.getRelatedArtists = exports.getArtistTopTracks = exports.getEditorialCharts = exports.getEditorialSelection = exports.getEditorialReleases = exports.getEditorialList = exports.getGenreArtists = exports.getChartTracks = exports.getChart = exports.getGenres = exports.suggest = exports.buildAdvancedQuery = exports.searchPlaylists = exports.searchArtists = exports.searchAlbums = exports.searchTracks = exports.searchPublicApi = exports.searchFacets = exports.searchMusic = exports.parseInfo = exports.initDeezerApi = exports.resolveConfigFile = exports.globalConfigPath = exports.Config = exports.downloadTrackToFile = exports.getTaggedTrack = exports.getTrackBuffer = exports.PoliteJsonClient = exports.getCoverArtByISRC = exports.getRecordingCoverArt = exports.getBestCoverArtUrl = exports.getCoverArt = exports.getMusicBrainzRelease = exports.getMusicBrainzRecording = exports.lookupRecordingByISRC = exports.configureMusicBrainz = exports.defaultSession = exports.CoreSession = exports.createCoreSession = exports.Session = exports.createSession = exports.getArl = exports.LoginError = exports.loginWithEmail = void 0;
|
|
37
|
+
exports.DeezerError = exports.GeoBlocked = exports.toLrc = exports.normalizeContributors = exports.getRichAlbum = exports.addTrackTags = exports.getStream = exports.createDecryptStream = exports.downloadTrackBuffer = exports.streamTrackDownload = exports.resolveDownloadUrls = exports.getTrackDownloadUrl = exports.getLyrics = exports.getDiscography = exports.getArtistInfo = exports.getPlaylistTracks = exports.getPlaylistInfo = exports.getAlbumTracks = exports.getAlbumInfo = exports.getTrackInfo = exports.getUser = exports.DEEZER_FORMATS = exports.toFormat = exports.formatName = exports.downloadPreview = exports.getTrackPreview = exports.getAlbumByUPC = exports.getTrackByISRC = exports.refreshTrackTokens = exports.getShowEpisodes = exports.getEpisode = exports.getRadioGenres = exports.getRadioTracks = exports.getRadios = exports.getUserChartTracks = exports.getUserRadios = exports.getUserPlaylists = exports.getUserFavoriteArtists = void 0;
|
|
38
38
|
// ─── Authentication ────────────────────────────────────────────────────────
|
|
39
39
|
const email_login_1 = require("./lib/email-login");
|
|
40
40
|
Object.defineProperty(exports, "loginWithEmail", { enumerable: true, get: function () { return email_login_1.loginWithEmail; } });
|
|
@@ -88,6 +88,8 @@ Object.defineProperty(exports, "getMusicBrainzRecording", { enumerable: true, ge
|
|
|
88
88
|
Object.defineProperty(exports, "getMusicBrainzRelease", { enumerable: true, get: function () { return gerdur_core_2.getMusicBrainzRelease; } });
|
|
89
89
|
Object.defineProperty(exports, "getCoverArt", { enumerable: true, get: function () { return gerdur_core_2.getCoverArt; } });
|
|
90
90
|
Object.defineProperty(exports, "getBestCoverArtUrl", { enumerable: true, get: function () { return gerdur_core_2.getBestCoverArtUrl; } });
|
|
91
|
+
Object.defineProperty(exports, "getRecordingCoverArt", { enumerable: true, get: function () { return gerdur_core_2.getRecordingCoverArt; } });
|
|
92
|
+
Object.defineProperty(exports, "getCoverArtByISRC", { enumerable: true, get: function () { return gerdur_core_2.getCoverArtByISRC; } });
|
|
91
93
|
Object.defineProperty(exports, "PoliteJsonClient", { enumerable: true, get: function () { return gerdur_core_2.PoliteJsonClient; } });
|
|
92
94
|
// ─── Download primitives ─────────────────────────────────────────────────────
|
|
93
95
|
var api_download_1 = require("./lib/api-download");
|
|
@@ -156,9 +156,7 @@ const downloadTrack = async ({ track, quality, info, coverSizes, path, totalTrac
|
|
|
156
156
|
let enrichedCover;
|
|
157
157
|
if (enrich && track.ISRC && !simulate) {
|
|
158
158
|
try {
|
|
159
|
-
const
|
|
160
|
-
const rgid = rec?.releases.find((r) => r.releaseGroupMbid)?.releaseGroupMbid;
|
|
161
|
-
const coverUrl = rgid ? await (0, gerdur_core_1.getBestCoverArtUrl)(rgid, { minSize: 1200 }) : null;
|
|
159
|
+
const coverUrl = await (0, gerdur_core_1.getCoverArtByISRC)(track.ISRC, { minSize: 1200 });
|
|
162
160
|
if (coverUrl) {
|
|
163
161
|
enrichedCover = await (0, gerdur_core_1.getBuffer)(coverUrl);
|
|
164
162
|
(0, log_update_1.default)(signale_1.default.note(`Using a higher-res cover from the Cover Art Archive for ${track.SNG_TITLE}`));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gerdur",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"description": "The crucial streaming module for dabox systems.",
|
|
5
5
|
"author": "Christian",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"adm-zip": "^0.5.16",
|
|
49
49
|
"chalk": "^4.1.2",
|
|
50
50
|
"commander": "^9.5.0",
|
|
51
|
-
"gerdur-core": "^2.
|
|
51
|
+
"gerdur-core": "^2.13.0",
|
|
52
52
|
"dot-prop": "^6.0.1",
|
|
53
53
|
"got": "^11.8.6",
|
|
54
54
|
"gradient-string": "^2.0.2",
|