YouTube.js Versions Save

A wrapper around YouTube's internal API — reverse engineering InnerTube

v8.0.0

5 months ago

8.0.0 (2023-12-01)

⚠ BREAKING CHANGES

  • Library: Add support for the new layout and remove profile & stats info
  • Channel: YouTube removed the "Channels" tab on channels, so this pull request removes the getChannels() method and has_channels getter from the YT.Channel class, as they are no longer useful. The featured channels are now shown on the channel home tab. To get them you can use the channels getter on the home tab of the channel. Please note that some channel owners might not have added that section to their home page yet, so you won't be able to get the featured channels for those channels. The home tab is the default tab that is returned when you call InnerTube#getChannel(), you can also access that tab by calling getHome() on a YT.Channel object.

Features

Bug Fixes

  • Channel: Remove getChannels() and has_channels, as YouTube removed the tab (#542) (6a5a579)
  • Library: Add support for the new layout and remove profile & stats info (4261915)
  • StructuredDescriptionContent: Add ReelShelf to list of possible nodes (f74ed5a)
  • VideoAttributeView: Fix image and overflow_menu_on_tap props (5ae15be)

Performance Improvements

  • Use named Parser import, to allow bundlers to create direct function references (#535) (95ed602)

v7.0.0

7 months ago

7.0.0 (2023-10-28)

⚠ BREAKING CHANGES

  • music#getSearchSuggestions: Return array of SearchSuggestionsSection instead of a single node

Features

  • Kids: Add blockChannel command to easily block channels (#503) (9ab528e)
  • music#getSearchSuggestions: Return array of SearchSuggestionsSection instead of a single node (beaa28f)
  • parser: Add PlayerOverflow and PlayerControlsOverlay (a45273f)
  • UpdateViewerShipAction: Add original_view_count and unlabeled_view_count_value (#527) (bc97e07)

Bug Fixes

  • build: Inline package.json import to avoid runtime erros (#509) (4c0de19)

v6.4.1

7 months ago

6.4.1 (2023-10-02)

Bug Fixes

  • Feed: Do not throw when multiple continuations are present (8e372d5)
  • Playlist: Throw a more helpful error when parsing empty responses (987f506)

Performance Improvements

  • Cache deciphered n-params by info response (#505) (d2959b3)
  • generator: Remove duplicate checks in isMiscType (#506) (68df321)

v6.4.0

8 months ago

6.4.0 (2023-09-10)

Features

  • Add support for retrieving transcripts (#500) (f94ea6c)
  • PlaylistManager: add .setName() and .setDescription() functions for editing playlists (#498) (86fb33e)

Bug Fixes

  • BackstagePost: vote_button type mismatch (fba3fc9)

v6.3.0

9 months ago

6.3.0 (2023-08-31)

Features

  • ChannelMetadata: Add music_artist_name (#497) (91de6e5)
  • Session: Add on_behalf_of_user session option. (#494) (8bc2aaa)

Bug Fixes

  • CompactMovie: Add missing import and remove unnecessary console.log (#496) (c26972c)

v6.2.0

9 months ago

6.2.0 (2023-08-29)

Features

  • Session: Add fallback for session data retrieval (#490) (10c15bf)

Bug Fixes

  • Format: Fix is_original always being true (#492) (0412fa0)

v6.1.0

9 months ago

6.1.0 (2023-08-27)

Features

v6.0.2

9 months ago

6.0.2 (2023-08-24)

Bug Fixes

v6.0.1

9 months ago

6.0.1 (2023-08-22)

Bug Fixes

  • SearchSubMenu: Groups not being parsed due to a typo (90be877)

v6.0.0

9 months ago

6.0.0 (2023-08-18)

⚠ BREAKING CHANGES

  • replace unnecessary classes with pure functions (#468)

Features

  • MusicResponsiveListItem: Detect non music tracks properly (815e54b)
  • parser: add MusicMultiRowListItem (494ee87)
  • Session: Add IOS to ClientType enum (22a38c0)
  • VideoInfo: support iOS client (#467) (46fe18b)

Bug Fixes

  • Format: Extracting audio language from captions (#470) (31d27b1)
  • parser: Allow any property in the RawResponse interface (3bc53a8)
  • parser: Logger logging classdata as [Object object] (bf1510b)
  • Playlist: Only try extracting the subtitle for the first page (#465) (e370116)
  • toDash: Format grouping into AdaptationSets (#462) (1ff3e1a)

Performance Improvements

  • Cleanup some unnecessary uses of YTNode#key and Maybe (#463) (0dda97e)

Code Refactoring

  • replace unnecessary classes with pure functions (#468) (87ed396)