Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: React 18.3.1, bootstrap 5.3.3, @rjsf/core 5.23.1 #2

Draft
wants to merge 45 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
41cb574
chore: update typescript etc
tkurki Nov 26, 2024
6f0a958
fix: add missing parameter type
tkurki Nov 26, 2024
3d942bf
chore: update type per eslint
tkurki Nov 26, 2024
aebf41e
chore: update signalk-schema typing
tkurki Nov 26, 2024
db7ed35
chore: use node:os module
tkurki Nov 26, 2024
6661d69
chore: fix StreamBundle type
tkurki Nov 26, 2024
d7aca71
update test for valid destination point (#1840)
panaaj Dec 2, 2024
c90a9e0
fix: use path.join to construct package.json path
tkurki Nov 26, 2024
fc7e57c
chore: fix no-require-import lint errors
tkurki Nov 26, 2024
d79df6d
chore: fix no-unused-vars lint errors
tkurki Nov 26, 2024
753c0ad
chore: simplify syntax
tkurki Nov 26, 2024
27ad435
fix: check string length properly in setNumber
tkurki Nov 26, 2024
c55bd44
chore: remove fmfr, use rimraf in all tests
tkurki Nov 26, 2024
221cd60
chore: drop node 16 support
tkurki Nov 27, 2024
3ba34a6
chore: use root .eslintrc.js
tkurki Nov 27, 2024
202ae1b
chore: fix no-unused-vars lint errors
tkurki Nov 27, 2024
e5df925
chore: replace no-unused-vars comment with underscore naming
tkurki Dec 8, 2024
0bb173e
Merge pull request #1836 from SignalK/update-typescript
tkurki Dec 8, 2024
8c80e65
Revert "fix: communication.callsignVhf not set properly in baseDeltas…
tkurki Dec 8, 2024
434bc01
fix: make serialport module optional (#1841)
tkurki Dec 9, 2024
e92ccaf
Use the improved position validity test to determine when to clear n…
panaaj Dec 10, 2024
57c100a
fix emitter name
gabor-toth Dec 11, 2024
4d438aa
avoid global namespace pollution
gabor-toth Dec 11, 2024
f9c778d
avoid startup error message
gabor-toth Dec 11, 2024
91c54a1
ignore IntelliJ IDEA project file
gabor-toth Dec 11, 2024
8102ec5
apply code formatting
gabor-toth Dec 14, 2024
6d541de
fix: upgraded action and environment usage
KEGustafsson Mar 13, 2024
8fdae2c
feature: V2 Autopilot API (#1596)
panaaj Dec 15, 2024
6c38520
Feature: Add zoom query parameter to Resources OpenAPI definition (#1…
panaaj Dec 23, 2024
c7339a3
chore: [email protected], [email protected], [email protected], streams@…
tkurki Dec 28, 2024
f888e5a
chore: remove leftover Docker build branch
tkurki Dec 28, 2024
f9e9731
2.13.0-beta.0
tkurki Dec 28, 2024
5d53671
chore: remove admin-ui prepublish clean
tkurki Dec 28, 2024
b700cbf
chore: bump server-admin-ui version
tkurki Dec 28, 2024
a4a59b4
2.13.0-beta.1
tkurki Dec 28, 2024
6c0781b
chore: docker release image versions with full, major, major.minor an…
KEGustafsson Dec 29, 2024
d7b068e
chore: ubuntu 24.04 base image for test build purposes (#1854)
KEGustafsson Dec 29, 2024
c5505c9
2.13.0-beta.2
tkurki Dec 29, 2024
33239a2
fix: tag variable name corrected (#1860)
KEGustafsson Dec 30, 2024
b7521b1
fix: python3-pip added for node-gyp (#1858)
KEGustafsson Jan 5, 2025
436da77
2.13.0-beta.3
tkurki Jan 5, 2025
f5c59b1
revert: fly_io tag argument (#1863)
KEGustafsson Jan 6, 2025
70e5e71
fix: Seatalk1 gpiod breaks if default value of GPIO pin isn't changed
astuder Jan 15, 2025
f38b2e1
feature: introduce optional canbus Mfg code, fixing canbus provider U…
mrstas Jan 19, 2025
dfcc14e
2.13.0
tkurki Jan 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,23 @@ module.exports = {
'plugin:@typescript-eslint/recommended',
'prettier'
],
rules: {
'@typescript-eslint/no-unused-vars': [
'error',
{
argsIgnorePattern: '^_',
varsIgnorePattern: '^_',
caughtErrorsIgnorePattern: '^_'
}
],
'@typescript-eslint/no-unused-expressions': [
'error',
{
allowShortCircuit: true,
allowTernary: true
}
]
},
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint']
}
Expand Down
66 changes: 66 additions & 0 deletions .github/workflows/build-base-image-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Build Docker base test image

on:
schedule:
- cron: "0 0 * * 1"
workflow_dispatch:

jobs:
build_docker_base_images:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: signalkci
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Login to ghcr.io
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GHCR_PAT }} # Personal access tokens (classic) with a scope of "write:packages" is needed to release ghcr.io package registry.

- name: Build baseimages and push with test tag
uses: docker/build-push-action@v5
with:
file: ./docker/Dockerfile_base_test
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: true
tags: |
signalk/signalk-server-base:test_
ghcr.io/signalk/signalk-server-base:test_

- name: Modify Dockerfile_rel for testing
run: |
sed -i 's/:latest/:test_/g' ./docker/Dockerfile_rel

- name: Build Signal K test dockers
uses: docker/build-push-action@v5
with:
context: .
file: ./docker/Dockerfile_rel
platforms: linux/amd64,linux/arm/v7,linux/arm64
build-args: |
TAG=latest

- name: Push baseimages to registries with latest tag
uses: docker/build-push-action@v5
with:
context: .
file: ./docker/Dockerfile_base_test
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: true
tags: |
signalk/signalk-server-base:testing
ghcr.io/signalk/signalk-server-base:testing
1 change: 0 additions & 1 deletion .github/workflows/build-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ on:
branches:
- master
- "build-docker"
- metadata-editing
tags:
- '*'
- '!v*'
Expand Down
17 changes: 11 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,12 +112,12 @@ jobs:
registry-url: 'https://registry.npmjs.org'
- name: Set tag variable
id: vars
run: echo ::set-output name=tag::$(echo ${GITHUB_REF#refs/*/})
run: echo "tag=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
- name: Install, build & publish
run: |
npm install --package-lock-only
npm ci && npm cache clean --force
if [[ "${{ steps.vars.outputs.tag }}" == *beta* ]];
if [[ "$tag" == *beta* ]];
then
npm publish --tag beta
else
Expand All @@ -134,11 +134,11 @@ jobs:
steps:
- name: Build Changelog
id: github_release
uses: mikepenz/release-changelog-builder-action@v1
uses: mikepenz/release-changelog-builder-action@v4
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PAT }}

- name: Create Release
- name: Create Release (archived, need to be updated to use the new action)
uses: actions/create-release@v1
with:
tag_name: ${{ github.ref }}
Expand All @@ -160,6 +160,11 @@ jobs:
images: |
signalk/signalk-server
ghcr.io/signalk/signalk-server
tags: |
type=semver,pattern={{raw}}
type=semver,pattern=v{{major}},enable=${{ !contains(github.ref, 'beta') }}
type=semver,pattern=v{{major}}.{{minor}},enable=${{ !contains(github.ref, 'beta') }}
type=raw,value=latest,enable=${{ !contains(github.ref, 'beta') }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
Expand All @@ -177,7 +182,7 @@ jobs:
password: ${{ secrets.GHCR_PAT }} # Personal access tokens (classic) with a scope of "write:packages" is needed to release ghcr.io package registry.
- name: Set TAG for build-args
id: vars
run: echo ::set-output name=tag::$(echo ${GITHUB_REF#refs/*/})
run: echo "tag=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
- name: Build and push
uses: docker/build-push-action@v5
with:
Expand All @@ -198,7 +203,7 @@ jobs:
uses: superfly/flyctl-actions/setup-flyctl@master
- name: Set TAG for build-arg
id: vars
run: echo ::set-output name=tag::$(echo ${GITHUB_REF#refs/*/})
run: echo "tag=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
- name: Deploy demo.signalk.org at fly.io
working-directory: ./fly_io/demo_signalk_org
run: flyctl deploy --remote-only --build-arg SK_VERSION=${{ steps.vars.outputs.tag }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:

strategy:
matrix:
node-version: [16.x, 18.x, 20.x]
node-version: [18.x, 20.x]

steps:
- uses: actions/checkout@v4
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ logs/*
bower_components
settings/ssl-key.pem
settings/ssl-cert.pem
/*.iml

*.tgz
work/
Expand Down
28 changes: 28 additions & 0 deletions docker/Dockerfile_base_test
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
FROM ubuntu:24.04

RUN userdel -r ubuntu
RUN groupadd --gid 1000 node \
&& useradd --uid 1000 --gid node --shell /bin/bash --create-home node

RUN DEBIAN_FRONTEND=noninteractive apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y install git python3 python3-venv python3-pip build-essential avahi-daemon avahi-discover avahi-utils libnss-mdns mdns-scan libavahi-compat-libdnssd-dev sysstat procps nano curl libcap2-bin sudo dbus bluez\
&& groupadd -r docker -g 991 && groupadd -r i2c -g 990 && groupadd -r spi -g 989 && usermod -a -G dialout,i2c,spi,netdev,docker node

# RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
&& DEBIAN_FRONTEND=noninteractive apt-get -y install nodejs \
&& npm config rm proxy \
&& npm config rm https-proxy \
&& npm config set fetch-retries 5 \
&& npm config set fetch-retry-mintimeout 60000 \
&& npm config set fetch-retry-maxtimeout 120000 \
&& npm cache clean -f \
&& npm install npm@latest -g \
&& sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)

COPY docker/avahi/avahi-dbus.conf /etc/dbus-1/system.d/avahi-dbus.conf
COPY docker/bluez/bluezuser.conf /etc/dbus-1/system.d/bluezuser.conf
RUN mkdir -p /var/run/dbus/ \
&& chmod -R 777 /var/run/dbus/ \
&& mkdir -p /var/run/avahi-daemon/ \
&& chmod -R 777 /var/run/avahi-daemon/ \
&& chown -R avahi:avahi /var/run/avahi-daemon/
Loading