sqrl-lang / sqrl

A safe, stateful rules language for event streams
Apache License 2.0
113 stars 11 forks source link

Misc updates #23

Closed meyer closed 1 year ago

meyer commented 1 year ago

Problem

  1. tslint has been deprecated and is no longer supported or updated.
  2. TypeScript packages are not built with consideration for packages that depend on other packages.
  3. We’ve got a ton of duplicate dev dependencies (TypeScript, jest, prettier, @types packages).
  4. jest deps are out of date.
  5. We’re not using npm workspaces. It’s a much more elegant solution than file: URLs.
  6. website and websqrl aren’t included in lerna’s package array (now the workspace array in package.json).

Solution

  1. Remove tslint and all tslint configs.
  2. Make use of TypeScript’s composite project functionality. There’s now a tsbuildinfo file that gets written to each built module’s lib directory—I’m preventing it from being published with a more specific files array in each module’s package.json.
  3. Move all common dev deps to top level.
  4. I updated jest to latest. Snapshot formats have changed slightly and name has changed to displayName in the child jest configs.
  5. Add a new workspaces key to the root package.json file.
  6. Add website and websqrl to workspaces.

Assorted thoughts

coveralls commented 1 year ago

Pull Request Test Coverage Report for Build 3626144730


Changes Missing Coverage Covered Lines Changed/Added Lines %
packages/sqrl/src/util/Logger.ts 0 1 0.0%
<!-- Total: 0 1 0.0% -->
Files with Coverage Reduction New Missed Lines %
packages/sqrl/lib/util/Logger.js 4 76.47%
<!-- Total: 4 -->
Totals Coverage Status
Change from base Build 3625813838: -0.002%
Covered Lines: 15431
Relevant Lines: 23733

💛 - Coveralls
meyer commented 1 year ago

There’s now a tsbuildinfo file that gets written to each built module’s lib directory—I’m preventing it from being published with a more specific files array in each module’s package.json.

Update: I forgot you can negate files matches with !, i’ll use that instead. Less brittle.