Releases: derbyjs/derby
v3.0.0
Derby is now in Typescript!
Although converted, there are some remaining changes needed before full types can be published along side the javascript code.
Breaking changes
Sub-path import changes
This only affects you if you were requiring modules from sub-paths inside Derby, e.g. require('derby/lib/App')
.
If you are exclusively using the top-level package, i.e. require('derby')
, you should be unaffected.
Code is now compiled to dist/
, and we now are using exports
in package.json
to declare exported code. Previously where consumers would have something like const App = require('derby/lib/App')
, App
is now exported from derby/App
using named exports e.g.
import { App } form 'derby/App'
2-parameter PageForServer#render() parameter swap
The 2-param form of pageForServer.render()
has had its parameters swapped, so the view name comes first and the status second.
The 1-param form is unchanged, with the view name being the first and only parameter.
Before:
pageForServer.render('some:namespace:my-page');
pageForServer.render(404, 'some:namespace:404');
After:
pageForServer.render('some:namespace:my-page'); // Unchanged
pageForServer.render('some:namespace:404', 404); // View name first, status second
v3.0.0-beta.9
v3.0.0-beta.8
- Re-export util 2299fc5
v3.0.0-beta.7
- Re-type Dom listeners f3bed84
v3.0.0-beta.6
- Use const require for Racer due to not actually having types aa592a4
- Use RootModel and ChildModel over Model 620dcee
- Additional typing and method signatures for Dom event listener methods 5342135
- Delay as optional arg ec4f389
- Refine Dom target types c7a9902
- Addition typing for view prop and type debounce fns fefb0e4
- Export type PageBase, PageParams bf7e91f
- Convert Dom to typescript 8e3414e
- Rename Dom.js f26df28
- Export route types and add method types for Page 0ad4d1f
- Add no-op render to satisfy need to have method on PageBase 321cab8
- Create constructor type for singletone components that do not use context (singleton compontnts do not call super) 069d240
- Use Model generic 8f5eb5a
- BREAKING: change arg order for render so method signatures can be aligned e2928f9
- Extract routes setup 4ef80f6
- Add generic to Controller for model data bddf1b7
- Export run function 15fecf1
- Fix issue of App being untyped in consuming code due to dynamic export 4b5434f
- Remove DerbyForServer in favor of server 6bff0de
- Rename src/index.js c141692
v3.0.0-beta.5
- Remove exports of ./lib/* as majro version and exports changes require consumer updates anyway 1ede576
v3.0.0-beta.4
- Add test-utils/index.js to exports 3136502
- Merge branch 'ts-conversion-1' of github.com:derbyjs/derby into ts-conversion-1 2150df6
- Include test-utils in published output 67d60fb
- Code review cleanups 211bb7b
- Remove generic from Controller c537804
- Make args optional on parseViews 9eec95c
- Merge branch 'master' of github.com:derbyjs/derby into ts-conversion-1 3f60401
- 2.3.0 7f08caf
- Merge pull request #622 from derbyjs/script-hash-env-var 33a4d7f
- Use env vars to set version strings 86006f6
v3.0.0-beta.3
v3.0.0-beta.2
- Ensure MarkupHooks have valid module attribute 840f68c
- Use named import over require 54db640
- Revert "Remove abstract from MarkupHook class" 44a0092
- Remove abstract from MarkupHook class 17ee8bb
- Extract finishInit to local arrow-function fb8bb60
- Convert callbacks to arrow-functions 6ae6209
- Use arrow-function 42698f8
- Split derby server + client requries 796c3d4
- Ensure app Page class is being used appropriately 543442a
- Lift onRoute to AppBase 7e8a4e6
- Map App export and lib/App (for derby-webpack) fd8076a
- Map exports for templates and AppForServer a3e4c0b
- Use package exports to map derby/parsing 382c97f
- Lift Component to base class 02544aa
- Initialize _pendingComponentMap in base class c369c86
- Move methods to base class 8d81f7e
- Call _init in AppForServer d1402e1
- Lift use and serverUse to base class 0ae26b2
- Handle DerbyForServer non-default export 9e469d4
- Convert DerbyStandalone to typescript bd2b226
- Rename DerbyStandalone.js b44037e
- Use DerbyBase class as base for Derby and DerbyForServer 5bd5169
- Rename DerbyForServer.js 2fa7887
- Fix DerbyForDerver, and Racer require 10ab08b
v3.0.0-beta.1
- Add return types 0889e37
- Supress error until correct types for bindings can be sorted out 8a24820
- Disable prefer-spread for function apply e0afaff
- Remove unnecessary regex escape 79903c5
- Syntax fix e997c25
- Remove unused guard function 25add99
- Use Model type rather than ModelData (incorrect type) 998ebbd
- Add ESTree types b9f561b
- No passing this to super in PageBase (handled by this.page assignment) 7329903
- Conversion + typing for App, Controller, Page, components 496cc41
- Create local Hook class for markerHooks 22c81b9
- Dont alias DependencyOptions 2a127a5
- Handle diffrences between Page/Component in expressions 32b734e
- Make Context generic and eslint-ignore this-alias 08eba28
- Convert components to typescript 5033e46
- Convert Page and PageFroServer to typescript cd67337
- Add markerNode property to Controller as used by Hook 18c5b43
- Convert App and AppForServer to typescript eaa3253
- Rename PageForServer.js f7d8608
- Make DependencyOptions options... optional bfe897d
- Rename Page.js 2ce439d
- More types for parsing d4fa7cf
- Type parsing/index methods 0d6d68e
- Merge branch 'ts-conversion-1' of github.com:derbyjs/derby into ts-conversion-1 a16e370
- Fix App import in DerbyStandalone 6802dbd
- Convert Derby.js to typescript d825091
- Rename Derby.js a2612e8
- Lint fixes 583512d
- Fix semicolons 1e7c7b2
- Use export syntax 9dd6407
- Convert App, AppFoprServer, Controller to typescript b9418df
- Rename AppForServer.js 7cf9159
- Rename App.js f201e68
- Convert Controller to typescript e7483ca
- Rename Controller.js 9be00ad
- Switch typescript to tilde versioning, since TS major releases increment by 0.1 instead of using semver 83bd54c
- Resolve unused-var linting errors 2d53114
- Remove unused dependency through a569d9c
- Disable eslint no-unused-vars to prevent duplicate errors with typescript-eslint rule covering same 54cbbe4
- Remove unused functions 6108f39
- Use Obejct.prototype.hasOwnProperty a3b0ab8
- Sort imports d09d22f
- Add eslint prettier, and import sort; Demote usage of any to warning temporarily 96a93b2
- Formatted dfbcda6
- Ignore error w DynamicAttribute until generic added to resolve b97278c
- Merge branch 'ts-conversion-1' of github.com:derbyjs/derby into ts-conversion-1 aa78ae3
- Convert parsing/index to typescript 846720d
- Remove extraneous isSpreadElement check c26c943
- Add types for much of templates.ts 43b0cfc
- Rename parsing/index.js 5e8cfb6
- Convert parsing/markup to typescript a893153
- Use type for checking type guards 76d1371
- Remove console.log 024ae75
- Raname parsing/markup.js cbafddd
- Convert createPathExpression to typescript b0956ab
- Convert index to typescript 9b65766
- Rename tempaltes/index.js 8d89588
- Eslint: ignore unused args prefixed with underscore da43484
- Typescript fixes for createPathExpression a6eb717
- Lint fix expressions.ts 79ac1d0
- Rename createPathExpression.js 77434e5
- Type dependency options; more tempalte class method typings c4518bb
- Placeholder for BlockType 93c3907
- Return type Segments c0ef475
- Placeholder type for value 91e60a1
- Placeholder type for value 965fc07
- Use method syntax 6f3be73
- Remove extraneous return types b8d8997
- ExpressionMeta type literals 2982a97
- Type Segments 8976ac1
- Skip unimplemented test cdeaaa0
- Expression method typings 7687caf
- Type render functions c241d81
- Sort imports 4d6321a
- Fix DynamicElement tests by moving shared Element behavior to BaseElement, add some additional types to methods 6e4e9b3
- More typing; 2 DynamicElement test failures d8dc21c
- Adding types to context and templates 8470cb4
- Fix test for parsing error to pass on node v20 (v20 changed error message) 8381520
- Remove node 14, add node 20 to test matrix 12952f1
- Change to @ts-expect-error or resolve @ts-error d83d26d
- Lint fixes c90c713
- Automated eslint --fix c891717
- Add initial typescript linting setup 2eb792f
- Fix misnamed method 6b27008
- Convert tempaltes to typescript (19 tests fail) ecdb38c
- Fix misnamed functions 3108a6e
- Add dom to tsconfig lib 5ff3626
- No console log in test e9ee6ad
- Use import for serialize-object e7e6067
- Rename templates.js 9d99006
- Convert expressions to typescript dbd2f96
- Rename expressions.js 774a441
- Convert operatorFns to typescript a57b9f8
- Convert context to typescript dbc5f10
- Rename contexts.js bdcf8c7
- Convert dependencyOptions to typescript 25ba3cf
- Rename dependencyOptions.js 24f3fc3
- Use export f9f27b2
- Rename util.js d52e56c
- Fix eslint paths c8b1cc4
- Build from src/ to dist/ and adjust test require paths to test built output 18b187b
- Move files from lib/ to src/ 81a9fe4
- Use internal refs to lib 1237529
- Add setup for building with typescript c01794a