Skip to content

Commit 08489d6

Browse files
committed
feat!: bump LLVM minimal version to 8
* Disable nightly builds until we fix setup-node to support mirrors again * Add matrix of Ubuntu versions (18.04, 20.04) * Add matrix of llvm versions (8, 9) * Versions before 8 don't pass frame-test tests Because we're bumping llvm/lldb versions in CI, we're technically bumping the minimal LLVM version users needs to have installed. Therefore, this is a breaking change.
1 parent 279a540 commit 08489d6

File tree

2 files changed

+25
-19
lines changed

2 files changed

+25
-19
lines changed

.github/workflows/push.yml

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,38 +19,43 @@ jobs:
1919
- version: 10.x
2020
- version: 12.x
2121
- version: 14.x
22-
- version: 15.x
23-
mirror: https://nodejs.org/download/nightly
24-
- version: 15.x
25-
mirror: https://nodejs.org/download/v8-canary
22+
# TODO(mmarchini): re-enable once mirror is supported on setup-node
23+
# - version: 15.x
24+
# mirror: https://nodejs.org/download/nightly
25+
# - version: 15.x
26+
# mirror: https://nodejs.org/download/v8-canary
2627
# os: [ubuntu-latest, macos-latest]
2728
# Temporarily disable MacOS until
2829
# https://github.com/nodejs/node/issues/32981 is fixed
29-
os: [ubuntu-latest]
30+
# TODO(mmarchini): test on 20.04 (need different lldb version)
31+
os: [ubuntu-18.04, ubuntu-20.04]
32+
llvm: [ 8, 9 ]
3033
steps:
3134
- uses: actions/checkout@v1
3235
- name: Use Node.js ${{ matrix.node.version }} ${{ matrix.node.mirror }}
33-
uses: mmarchini/setup-node@mirror
36+
uses: actions/setup-node@v2
3437
with:
3538
node-version: ${{ matrix.node.version }}
36-
node-mirror: ${{ matrix.node.mirror }}
39+
# TODO(mmarchini): re-enable once mirror is supported on setup-node
40+
# node-mirror: ${{ matrix.node.mirror }}
3741
- name: install dependencies Linux
38-
if: matrix.os == 'ubuntu-latest'
42+
if: startsWith(matrix.os, 'ubuntu-')
3943
run: |
4044
sudo apt-get -qq update
41-
sudo apt-get install lldb-3.9 liblldb-3.9-dev lcov gdb -y
45+
sudo apt-get install lldb-${{ matrix.llvm }} liblldb-${{ matrix.llvm }}-dev lcov gdb -y
46+
sudo ln -s hich lldb-${{ matrix.llvm }}) /usr/bin/lldb
4247
- name: npm install
4348
run: |
4449
npm install --llnode_build_addon=true --llnode_coverage=true
4550
- name: run tests
46-
run: TEST_LLDB_BINARY=`which lldb-3.9` npm run nyc-test-all
51+
run: TEST_LLDB_BINARY=`which lldb-${{ matrix.llvm }}` npm run nyc-test-all
4752
if: matrix.node.version != '15.x'
4853
- name: run tests (nightly)
49-
run: TEST_LLDB_BINARY=`which lldb-3.9` npm run nyc-test-all
54+
run: TEST_LLDB_BINARY=`which lldb-${{ matrix.llvm }}` npm run nyc-test-all
5055
if: matrix.node.version == '15.x'
5156
continue-on-error: true
5257
- name: prepare coverage
53-
if: matrix.os == 'ubuntu-latest' && matrix.node.version != '15.x'
58+
if: startsWith(matrix.os, 'ubuntu-') && matrix.node.version != '15.x'
5459
run: |
5560
npm run coverage
5661
cat ./coverage-js.info > ./coverage.info
@@ -70,6 +75,7 @@ jobs:
7075
- name: npm install, build, and test
7176
run: |
7277
sudo apt-get -qq update
73-
sudo apt-get install lldb-3.9 liblldb-3.9-dev lcov -y
78+
sudo apt-get install lldb-6.0 liblldb-6.0-dev lcov -y
79+
sudo ln -s $(which lldb-6.0) /usr/bin/lldb
7480
npm install
7581
npm run linter

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ npm install -g llnode
3232
llnode `which node` -c /path/to/core/dump
3333
```
3434

35-
- Never install llnode with `sudo` as it can easily lead to errors during
35+
- Never install llnode with `sudo` as it can easily lead to errors during
3636
installation and execution.
3737
- For more details on starting llnode see the [Usage](#usage) section.
3838
- To get started with the llnode commands see the [Commands](#commands) section.
@@ -46,9 +46,9 @@ channels. We recommend installing Node.js with [nvm](https://github.com/nvm-sh/n
4646
as it allows users to install global packages without `sudo` by default, and
4747
it always installs the official executables from https://nodejs.org.
4848

49-
**Do not install Node.js from the default Ubuntu/Debian apt repositories (or from
50-
the default repositories of other Linux distributions), llnode is not compatible
51-
with Node.js installed that way**. If you still want to install Node.js via
49+
**Do not install Node.js from the default Ubuntu/Debian apt repositories (or from
50+
the default repositories of other Linux distributions), llnode is not compatible
51+
with Node.js installed that way**. If you still want to install Node.js via
5252
`apt-get`, take a look at
5353
[nodesource/distributions](https://github.com/nodesource/distributions).
5454

@@ -73,10 +73,10 @@ version is LLDB 3.9 and above.
7373
- You can install the lldb package using the package manager of your
7474
distribution. You may need to install additional packages for `liblldb`
7575
as well.
76-
- For example, on Ubuntu 16.04 you can install the prerequisites with
76+
- For example, on Ubuntu 18.04 you can install the prerequisites with
7777

7878
```bash
79-
apt-get install lldb-4.0 liblldb-4.0-dev
79+
apt-get install lldb-8 liblldb-8-dev
8080
```
8181
- FreeBSD
8282

0 commit comments

Comments
 (0)