Skip to content

Releases: derbyjs/derby

v4.2.2

28 Jun 10:30
Compare
Choose a tag to compare

What's Changed

  • 74a6dce - Fix TS typings for component.create(), broken by v4.2.1
    • Resolves error TS2425: Class 'Component' defines instance member property 'create', but extended class 'MyComponent' defines it as instance member function.

Full Changelog: v4.2.1...v4.2.2

v4.2.1

28 Jun 04:34
Compare
Choose a tag to compare

What's Changed

  • Troubleshooting improvements for component errors by @ericyhwang in #642
    • In development, warn if a component's init() is improperly an async or Promise-returning function
    • If registering a singleton component that extends Component, eagerly throw an error at component registration time, instead of at render-time throwing an obscure "Uncaught TypeError: Cannot read properties of undefined (reading 'controller')"

Documentation updates

These were already deployed to https://derbyjs.github.io/derby/ upon PR merge.

Full Changelog: v4.2.0...v4.2.1

v4.2.0

05 Jun 23:43
Compare
Choose a tag to compare

What's Changed

  • Add new App event "page", emitted when a new Page instance is created by @ericyhwang in #640
    • This can be used to customize Page instances after creation.
    • The event is emitted both during server-side rendering, as well as during client-side initialization and page changes.

Doc updates

These were automatically deployed to the doc site upon merge and aren't part of the published package.

  • [docs] Fixes and style improvements for GitHub Pages doc site by @ericyhwang in #637
  • introduce a troubleshooting guide for Derby by @aconrad in #541
  • Integrate troubleshooting guide into doc site nav by @craigbeck in #639

Full Changelog: v4.1.3...v4.2.0

v4.1.3

20 May 17:03
Compare
Choose a tag to compare
  • Merge pull request #636 from akgula/fix/componentHarness ce75f1e
  • Add source as optional param to stub 1c27ca9

v4.1.2...v4.1.3

What's Changed

  • Add source as optional param to stub by @akgula in #636

New Contributors

Full Changelog: v4.1.2...v4.1.3

v4.1.2

16 May 19:07
Compare
Choose a tag to compare
  • Merge pull request #635 from derbyjs/fix-server 6c6f397
  • Import cluster as namespace to avoid transformed default import which does not work 085bf0d
  • Add Node16 compatible path mapping for derby/dist/server a1db975

v4.1.1...v4.1.2

v4.1.1

15 May 19:32
Compare
Choose a tag to compare
  • Merge pull request #633 from derbyjs/test-render-options 6c636f0
  • Additoinal typing on PageForHarness and better return types on renderHtml and renderFragment methods f8b2c78
  • Make RenderOptions optional for renderHtml and renderDom 8f9032d

v4.1.0...v4.1.1

v4.1.0

08 May 21:30
Compare
Choose a tag to compare

What's Changed

  • Add package.json exports for derby/dist/{components,parsing,templates,test-utils} by @ericyhwang in #632
    • This enables usage of those files in TypeScript with the default classic moduleResolution.
    • If using "node16" or "nodenext" moduleResolution in your tsconfig.json, then prefer the paths without dist, such as 'derby/test-utils'.

Full Changelog: v4.0.0...v4.1.0

v4.0.0

01 May 19:23
Compare
Choose a tag to compare

TypeScript *.d.ts type definition files are now bundled with both Derby and Racer!

derby@4 uses racer@2. If you have a separate dependency on Racer, be sure to update it.

Breaking changes

  • Declaring a singleton component via ComponentClass.prototype.singleton = true; is no longer supported.
    • Instead, use a static property class ComponentClass { static singleton = true; }
    • Or without class syntax, ComponentClass.singleton = true;
  • Internal class hierarchies have been changed, with new client-specific and server-specific classes inheriting from base classes.
    • This generally won't affect you, unless you had custom type definitions written for Derby's classes.
    • In most cases, the base class type is appropriate unless you are using specific client or server side methods
      • Derby base, DerbyForClient and DerbyForServer subclasses
      • Page base, PageForClient and PageForServer subclasses
      • App base, AppForClient and AppForServer subclasses

If you are upgrading straight from the pure-JS derby@2, also see the release notes for derby@3 here:
https://github.com/derbyjs/derby/releases/tag/v3.0.0

What's Changed

Full Changelog: v3.0.3...v4.0.0

v4.0.0-beta.18

29 Apr 22:42
Compare
Choose a tag to compare
v4.0.0-beta.18 Pre-release
Pre-release
  • Publish classes for client code (not type only) -- used in some testing cases 1ee854d

v4.0.0-beta.17...v4.0.0-beta.18

v4.0.0-beta.17

29 Apr 22:34
Compare
Choose a tag to compare
v4.0.0-beta.17 Pre-release
Pre-release
  • Ensure only type exports for Page and App classes at package root 2f281bb

v4.0.0-beta.16...v4.0.0-beta.17