ably-js icon indicating copy to clipboard operation
ably-js copied to clipboard

[ECO-4122] Draft 2.0.0 changelog

Open VeskeR opened this issue 11 months ago • 1 comments

Changelog is based on changes between 64caf8e52152a1ed7b0c1ca32689e2e45369dca8...2462e9bfa412284a3c3975ad83a8ea4da9d9e7f4 (latest main and integration/v2 as of end of February 29).

PRs that need to be added to the changelog when finished/reviewed and merged:

  • [ ] https://github.com/ably/ably-js/pull/1613 - breaking API change
  • [ ] https://github.com/ably/ably-js/pull/1602 - breaking typings change
  • [ ] https://github.com/ably/ably-js/pull/1633 - platform compatibility PR
  • [ ] https://github.com/ably/ably-js/pull/1640 - API change
  • [ ] https://github.com/ably/ably-js/pull/1645 - breaking API change, removes xhr_streaming Transport
  • [ ] https://ably.atlassian.net/browse/ECO-4115 - breaking API change, splits usePresence hook into two.
  • [ ] https://github.com/ably/ably-js/issues/1637 - breaking API change
  • [ ] https://github.com/ably/ably-js/pull/1663 - breaking API change

Please note that this is not an exhaustive list of tasks that need to be completed before the v2 release. This list contains only the user-facing PRs/tasks that must be added to the changelog.

Pull requests not included in this changelog (I considered them as Miscellaneous / Extras, non-user facing):

  • ci: don't check formatting in react workflow #1653
  • Improve logs for react package test in test:package #1639
  • Refactor nodejs http util class #1627
  • Fix missing ably/react export from ably package on v2 branch #1625
  • Fix ably import in react hooks #1624
  • Convert HTTP code to use promises #1603
  • Add better error handling for incorrect PLAYWRIGHT_BROWSER in runPlaywrightTests script #1595
  • Document that queryTime auth option requires Rest module #1593
  • Make modulereport print gzipped size too #1586
  • Add try/catch to _multiple_send to allow fast fail in case of errors #1585
  • Fix mocha web server process keeps running after failed playwright tests #1584
  • Fix multiple_send_binary_2_200 is failing intermittently in browser on v2 branch #1583
  • Improve IPlatformConfig #1563
  • build: use Ably as UMD lib name #1558
  • Remove callbacks part 1 #1541
  • Strip logging from modular variant of the SDK #1536
  • Correct tsc module settings for test:package #1521
  • Add stats to list of functionality gated off by Rest module #1517
  • Add some regression testing for bundle size and included files #1507
  • Exclude PresenceMessage from BaseRealtime bundle #1505
  • Remove static stuff from *Message classes #1503
  • Add documentation for modular variant of library #1502
  • Add typings for the tree-shakable version of the library #1498
  • Remove remaining REST code from BaseRealtime #1496
  • Don’t populate DeviceDetails.toRequestBody by assignment #1494
  • Do e013cc0’s typescript-eslint version bumps in package.json #1490
  • Add a basic test of NPM package #1476
  • Make MessageFilter subscription filtering tree-shakable#1473
  • Make HTTP request implementations tree-shakable #1438
  • Make realtime transports tree-shakable #1432
  • Remove PresenceMessage-related static things in tree-shakable library #1429
  • Make realtime presence functionality tree-shakable #1428
  • Create tree-shakable MsgPack module #1425
  • Create tree-shakable Crypto module #1419
  • Add tree-shakable Base* and Rest exports #1417
  • refactor: convert web comet transports to typescript #1379
  • build: use esbuild for web bundles #1369
  • Update the tests to use the Promise-based API #1349
  • Make ErrorInfo.fromValues’s signature correspond to its expectations #1322
  • Fix TypeScript 4.9.5 upgrade mistakes #1267
  • Upgrade TypeScript to 4.9.5 #1258
  • Update docstrings for Rest.request version param #1255
  • Convert platform crypto.js files to TypeScript #1246
  • Remove the DeprecatedClientOptions type #1221
  • Upgrade webpack to version 5 #1201

Resolves #1604

VeskeR avatar Mar 01 '24 05:03 VeskeR

I do think, if this is gonna be what ends up as the description in the github release we should be a bit more 'product marketing' about how we present the changes at first, and maybe even start off with a short paragraph rather than going straight into bullet points. It doesn't look too exciting if the first thing someone sees is that we've dropped support for platforms, whereas if we start by saying stuff like "We've added a new way to remove bloat from your ably-js client and we're adding first class support to promises" that sounds better IMO.

Updated intro.

I placed the platform support deprecations first, thinking it might be useful to immediately see what would break if you switch to this new version. Upon a second look, however, I do agree that it looks underwhelming, so it has been changed now.

VeskeR avatar Mar 01 '24 21:03 VeskeR

I think this needs to be reviewed as a single thing alongside the migration guide, the writing of which is assigned to me. I’m going to branch from this and write the migration guide, then we can review the two together.

lawrence-forooghian avatar Mar 07 '24 14:03 lawrence-forooghian

Started working on migration guide in https://github.com/ably/ably-js/pull/1670.

lawrence-forooghian avatar Mar 07 '24 18:03 lawrence-forooghian

Added changelog for new changes since last update in this PR: https://github.com/ably/ably-js/compare/2462e9bfa412284a3c3975ad83a8ea4da9d9e7f4...85b54ea50cf040f061e1c6ff41445911741a522e :

  • https://github.com/ably/ably-js/pull/1676
  • https://github.com/ably/ably-js/pull/1658
  • https://github.com/ably/ably-js/pull/1654
  • https://github.com/ably/ably-js/pull/1641
  • https://github.com/ably/ably-js/pull/1640
  • https://github.com/ably/ably-js/pull/1633
  • https://github.com/ably/ably-js/pull/1613

Non-user facing (were not added to changelog doc):

  • https://github.com/ably/ably-js/pull/1664
  • https://github.com/ably/ably-js/pull/1663
  • https://github.com/ably/ably-js/pull/1643
  • https://github.com/ably/ably-js/pull/1634

Also moved [SDK-3938] Remove the existing plugins mechanism to non-user facing, since it got reverted by [ECO-4658 Restore ClientOptions.plugins mechanism and use it for modular variant](https://github.com/ably/ably-js/pull/1663)

VeskeR avatar Mar 11 '24 18:03 VeskeR

Updated PR to be based on latest changes in integration/v2: 85b54ea50cf040f061e1c6ff41445911741a522e...a29e83ff980f46206339d6001d6b77e74ee02009. Nothing to add to the changelog, only merged PRs from main

VeskeR avatar Mar 11 '24 18:03 VeskeR

Added changelog for new changes since last update in this PR: https://github.com/ably/ably-js/compare/a29e83ff980f46206339d6001d6b77e74ee02009...779516bf11aa6f312b2f01a0b0ed5154d718e9a1:

  • https://github.com/ably/ably-js/pull/1674

Not public API related (were not added to changelog doc):

  • https://github.com/ably/ably-js/pull/1697
  • https://github.com/ably/ably-js/pull/1696
  • https://github.com/ably/ably-js/pull/1675
  • https://github.com/ably/ably-js/pull/1652

VeskeR avatar Mar 18 '24 22:03 VeskeR

Added changelog for new changes since last update in this PR: https://github.com/ably/ably-js/compare/779516bf11aa6f312b2f01a0b0ed5154d718e9a1...2e124597417204ff6b548502b756adf490f19c17:

  • https://github.com/ably/ably-js/pull/1645

Not public API related (were not added to changelog doc):

  • https://github.com/ably/ably-js/pull/1705
  • https://github.com/ably/ably-js/pull/1702
  • https://github.com/ably/ably-js/pull/1701
  • https://github.com/ably/ably-js/pull/1691

VeskeR avatar Mar 20 '24 20:03 VeskeR

Updated for latest changes https://github.com/ably/ably-js/compare/2e124597417204ff6b548502b756adf490f19c17...c02ec568b51be10f0e4c70805f36a01514b8fcac:

no user-facing changes

VeskeR avatar Mar 21 '24 15:03 VeskeR