Skip to content

Comprehensive build & test instructions #726

Open
@eoghanmurray

Description

Given the new monorepo structure, the following is my understanding:

  • you have to go into each subpackage in order to run the build commands (yarn bundle). This definitely wouldn't be obvious on first download of project
  • building the rrweb package depends on building rrweb-snapshot package, which is only a problem whenever there are changes to the latter. The relationship between these and how rrweb includes rrweb-snapshot isn't clear, see don't reference old rrweb-snapshot  #725
  • yarn typings is great, but it is not included in the regular test scripts. New devs might miss this as a requirement
  • there are multiple different target outputs that take time to build/test but may not be relevant for an individual developer

So I'm proposing that we have a set of top level scripts in the project root which accomplishes the above, and generates usable javascript output files for each.

The ones I'm interested in are:
./build-for-web.sh - compiles rrweb-snapshot and rrweb but ignores es and other outputs
(above could be split into separate record/replay scripts if that saved compilation time
./test.sh - runs tests over any packages that have changes. recompiles rrweb-snapshot if it has changed and runs rrweb tests given the dependency between them

Problem is I'm not sure how best to do it!

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions