Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
a891e3b
NewWebUI: Update jQuery from 2.1.3 to 3.6.3 (latest upstream release)
kripton Feb 6, 2023
510da16
NewWebUI: Update dependencies angular and angular-route to v1.8.3 (la…
kripton Feb 6, 2023
2d5f25a
NewWebUI: Add workaround to work with latest angular. Fixes #1782
kripton Feb 6, 2023
825b72e
NewWebUI: Commit latest built app. Fixes #1782
kripton Feb 6, 2023
591b9d5
Merge pull request #1813 from kripton/0.10-UpdateNewWebUI
kripton Feb 10, 2023
c7057dc
Update some copyright years
peternewman Feb 14, 2023
266cf9e
A bit more NEWS
peternewman Feb 14, 2023
839d401
More NEWS
peternewman Feb 15, 2023
ccddc84
Even more NEWS
peternewman Feb 15, 2023
0328b63
Remove some statements that won't be true until another PR has been m…
peternewman Feb 16, 2023
1012f74
initial lint gh actions
DaAwesomeP Feb 10, 2023
836567f
gh actions lint attempt cpplint fix/troubleshoot
DaAwesomeP Feb 17, 2023
337a4b4
cpplint fix indents for goto targets in protoc/StrUtil.cpp
DaAwesomeP Feb 17, 2023
ba7d9e3
change wording in count_generic_nolints.sh (@peternewman)
DaAwesomeP Feb 17, 2023
bcff274
lint switch to GITHUB_ACTIONS env var
DaAwesomeP Feb 17, 2023
2fd1d98
add note from where to install cpplint
DaAwesomeP Feb 17, 2023
de4b59c
speed up gh actions lint artifacts
DaAwesomeP Feb 17, 2023
9008033
speed up gh actions lint artifacts switch from xz to gz
DaAwesomeP Feb 17, 2023
db6d295
attempt gh actions lint problem matcher for check-licences, intention…
DaAwesomeP Feb 17, 2023
47a6dee
gh actions lint fix path to check-licences problem matcher
DaAwesomeP Feb 17, 2023
1c8eef2
attempt fix check-licence problem matcher, fix flake8 for check-licence
DaAwesomeP Feb 17, 2023
f007ee5
check-licence problem matcher works, revert force-fail files
DaAwesomeP Feb 17, 2023
1e94a76
attempt gh actions lint problem matcher for generic-nolints, intentio…
DaAwesomeP Feb 17, 2023
bf337f6
generic-nolints problem matcher works, revert force-fail files
DaAwesomeP Feb 17, 2023
5242ccc
attempt gh actions lint problem matcher for cpplint, intentionally fa…
DaAwesomeP Feb 17, 2023
fd60a4b
gh actions cpplint problem matcher again with debug
DaAwesomeP Feb 17, 2023
18e11cf
gh actions cpplint problem matcher again with debug 2
DaAwesomeP Feb 18, 2023
2a4978c
fix cpplint and flake8 problem matcher annotations file matching
DaAwesomeP Feb 18, 2023
d090920
gh actions lint cpplint matcher show error code in message text, remo…
DaAwesomeP Feb 18, 2023
a9d0f62
gh actions cpplint problem matcher annotations work with file matchin…
DaAwesomeP Feb 18, 2023
d06f590
gh actions lint problem matcher change info to notice to match proble…
DaAwesomeP Feb 18, 2023
6be6c78
gh actions lint licences problem matcher does not find dirs, problem …
DaAwesomeP Feb 18, 2023
573a83e
remove old flake8 gh actions workflow that does not build first
DaAwesomeP Feb 18, 2023
cbe7dc4
add gh actions note to AUTHORS
DaAwesomeP Feb 18, 2023
652603f
revert license check to be non-specific to python3
DaAwesomeP Feb 20, 2023
05ab75a
add back Python 2 flake8 checking
DaAwesomeP Feb 20, 2023
4b4b6b6
all lint tasks depend on build
DaAwesomeP Feb 20, 2023
718c89f
gh actions lint fix 80 character line limit comment
DaAwesomeP Feb 20, 2023
4ee032a
gh actions lint fix python for check licences
DaAwesomeP Feb 20, 2023
b639fef
gh actions lint check-licences use python-is-python3
DaAwesomeP Feb 20, 2023
9ceee09
gh actions lint remove cpplint repository flag
DaAwesomeP Feb 20, 2023
02252de
specify which cpplint in error
DaAwesomeP Feb 20, 2023
f28976a
fix english comma errors for check licences
DaAwesomeP Feb 20, 2023
0ea3b73
licence check remove relative dir ./ style
DaAwesomeP Feb 20, 2023
2bbc5c5
Merge pull request #1816 from peternewman/0.10-clang-latest
peternewman Feb 20, 2023
c1594fb
gh actions lint add touch before tar note
DaAwesomeP Feb 20, 2023
5434a7a
gh actions remove additional python3 flake8
DaAwesomeP Feb 20, 2023
91c7988
gh actions lint enable dir listing only for debug logging
DaAwesomeP Feb 20, 2023
5428e8f
gh actions lint build job step clarify which build make task
DaAwesomeP Feb 20, 2023
cee6919
Merge remote-tracking branch 'upstream/0.10' into DaAwesomeP-GitHubAc…
DaAwesomeP Feb 20, 2023
171b4b0
Merge pull request #1817 from DaAwesomeP/DaAwesomeP-GitHubActionsLint
peternewman Feb 20, 2023
5e233a5
Merge branch '0.10' of https://github.com/openlightingproject/ola int…
peternewman Feb 20, 2023
86f34f4
Update compiled new web application
kripton Feb 21, 2023
8a56175
Merge pull request #41 from kripton/master-resync
peternewman Feb 21, 2023
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
16 changes: 16 additions & 0 deletions .github/problem-matcher-lint-check-licences.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"problemMatcher": [
{
"owner": "lint-check-licences",
"pattern": [
{
"regexp": "^(notice|error)(:(file|dir):([^:]+)(:lines? (\\d+)(-(\\d+))?)?)?: (.+)$",
"severity": 1,
"file": 4,
"line": 6,
"message": 9
}
]
}
]
}
17 changes: 17 additions & 0 deletions .github/problem-matcher-lint-cpplint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"problemMatcher": [
{
"owner": "lint-cpplint",
"severity": "error",
"pattern": [
{
"regexp": "^(.+):(\\d+):\\s+((.+)\\s+\\[(.*)\\]\\s\\[(.*)\\])$",
"file": 1,
"line": 2,
"message": 3,
"code": 5
}
]
}
]
}
16 changes: 16 additions & 0 deletions .github/problem-matcher-lint-generic-nolints.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"problemMatcher": [
{
"owner": "lint-generic-nolints",
"pattern": [
{
"regexp": "^(notice|error)(:(file|dir):([^:]+)(:lines? (\\d+)(-(\\d+))?)?)?: (.+)$",
"severity": 1,
"file": 4,
"line": 6,
"message": 9
}
]
}
]
}
10 changes: 0 additions & 10 deletions .github/workflows/annotation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,3 @@ jobs:
- name: Flake8 with annotations - Python 2
# Using the flake8 options in the .flake8 file
uses: TrueBrain/actions-flake8@main
flake8-annotation-python3:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Flake8 with annotations - Python 3
# Using the flake8 options in the .flake8 file
uses: TrueBrain/actions-flake8@main
196 changes: 196 additions & 0 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
name: lint
on: [push, pull_request]
jobs:
build:
name: Build for Lint Tasks
runs-on: ubuntu-latest
container: debian:stable
steps:
- name: Update package database
run: apt-get update -y
# See comments beginning at
# https://github.com/actions/runner/issues/763#issuecomment-1435474884
# Without Git, actions/checkout@v3 will resort to REST and will not
# create a .git folder or .git.config. The Problem Matcher looks for
# .git/config to find where the root of the repo is, so it must be
# present.
- name: Install Git
run: apt-get -y install git
- uses: actions/checkout@v3
- name: Install build tools
shell: bash
run: |
apt-get -y install pkg-config libtool autoconf \
automake g++ bison flex make bash-completion dh-autoreconf \
debhelper devscripts wget python3-pip
- name: Install Python lint tools
run: python3 -m pip install --no-input cpplint flake8
- name: Install build dependencies
shell: bash
run: |
apt-get -y install libcppunit-dev uuid-dev libncurses5-dev \
libmicrohttpd-dev protobuf-compiler python3-protobuf \
libprotobuf-dev libprotoc-dev zlib1g-dev libftdi-dev \
libusb-1.0-0-dev liblo-dev libavahi-client-dev python3-numpy
- name: Autoreconf
run: autoreconf -i
- name: Configure
run: ./configure --enable-rdm-tests --enable-ja-rule --enable-e133
- name: Build builtfiles
run: make builtfiles VERBOSE=1
- name: Display structure of the built files
if: env.ACTIONS_STEP_DEBUG == 'true'
run: ls -alR
- name: Archive artifacts to speed up slow GH Actions upload/download
shell: bash
# If the file does not exist when tar excludes it, then it will not
# actually exclude it, so it must first be touched
run: |
touch ola-debian-stable-built-source-tree.tar.gz
tar --exclude=ola-debian-stable-built-source-tree.tar.gz -cvzf ola-debian-stable-built-source-tree.tar.gz .
- name: SHA256 artifact archive
run: sha256sum ola-debian-stable-built-source-tree.tar.gz
- uses: actions/upload-artifact@v3
with:
name: ola-debian-stable-built-source-tree
path: ola-debian-stable-built-source-tree.tar.gz
check-licences:
name: Check Licences
runs-on: ubuntu-latest
container: debian:stable
needs: build
steps:
- name: Download built source tree archive
uses: actions/download-artifact@v3
with:
name: ola-debian-stable-built-source-tree
path: .
- name: SHA256 artifact archive
run: sha256sum ola-debian-stable-built-source-tree.tar.gz
- name: Unarchive artifacts and delete archive
shell: bash
run: |
tar -xvzf ola-debian-stable-built-source-tree.tar.gz .
rm ola-debian-stable-built-source-tree.tar.gz
- name: Display structure of extracted files
if: env.ACTIONS_STEP_DEBUG == 'true'
run: ls -alR
- name: Update package database
run: apt-get update -y
- name: Install Python
run: apt-get -y install python3 python-is-python3
- name: Enable Problem Matcher for GitHub annotations
run: echo "::add-matcher::.github/problem-matcher-lint-check-licences.json"
- name: Check licenses
shell: bash
run: ./scripts/enforce_licence.py
generic-nolints:
name: Count generic NOLINTs
runs-on: ubuntu-latest
container: debian:stable
needs: build
steps:
- name: Download built source tree archive
uses: actions/download-artifact@v3
with:
name: ola-debian-stable-built-source-tree
path: .
- name: SHA256 artifact archive
run: sha256sum ola-debian-stable-built-source-tree.tar.gz
- name: Unarchive artifacts and delete archive
shell: bash
run: |
tar -xvzf ola-debian-stable-built-source-tree.tar.gz .
rm ola-debian-stable-built-source-tree.tar.gz
- name: Display structure of extracted files
if: env.ACTIONS_STEP_DEBUG == 'true'
run: ls -alR
- name: Enable Problem Matcher for GitHub annotations
run: echo "::add-matcher::.github/problem-matcher-lint-generic-nolints.json"
- name: Count the number of generic NOLINTs
shell: bash
run: ./scripts/count_generic_nolints.sh
cpplint:
name: cpplint
runs-on: ubuntu-latest
container: debian:stable
needs: build
steps:
- name: Download built source tree archive
uses: actions/download-artifact@v3
with:
name: ola-debian-stable-built-source-tree
path: .
- name: SHA256 artifact archive
run: sha256sum ola-debian-stable-built-source-tree.tar.gz
- name: Unarchive artifacts and delete archive
shell: bash
run: |
tar -xvzf ola-debian-stable-built-source-tree.tar.gz .
rm ola-debian-stable-built-source-tree.tar.gz
- name: Display structure of extracted files
if: env.ACTIONS_STEP_DEBUG == 'true'
run: ls -alR
- name: Update package database
run: apt-get update -y
- name: Install build tools
shell: bash
run: |
apt-get -y install pkg-config libtool autoconf \
automake g++ bison flex make bash-completion dh-autoreconf \
debhelper devscripts wget python3-pip
- name: Install Python lint tools
run: python3 -m pip install --no-input cpplint flake8
- name: Install build dependencies
shell: bash
run: |
apt-get -y install libcppunit-dev uuid-dev libncurses5-dev \
libmicrohttpd-dev protobuf-compiler python3-protobuf \
libprotobuf-dev libprotoc-dev zlib1g-dev libftdi-dev \
libusb-1.0-0-dev liblo-dev libavahi-client-dev python3-numpy
- name: Enable Problem Matcher for GitHub annotations
run: echo "::add-matcher::.github/problem-matcher-lint-cpplint.json"
- name: cpplint
run: make cpplint VERBOSE=1
flake8:
name: flake8
runs-on: ubuntu-latest
container: debian:stable
needs: build
steps:
- name: Download built source tree archive
uses: actions/download-artifact@v3
with:
name: ola-debian-stable-built-source-tree
path: .
- name: SHA256 artifact archive
run: sha256sum ola-debian-stable-built-source-tree.tar.gz
- name: Unarchive artifacts and delete archive
shell: bash
run: |
tar -xvzf ola-debian-stable-built-source-tree.tar.gz .
rm ola-debian-stable-built-source-tree.tar.gz
- name: Display structure of extracted files
if: env.ACTIONS_STEP_DEBUG == 'true'
run: ls -alR
- name: Update package database
run: apt-get update -y
- name: Install build tools
shell: bash
run: |
apt-get -y install pkg-config libtool autoconf \
automake g++ bison flex make bash-completion dh-autoreconf \
debhelper devscripts wget python3-pip
- name: Install Python lint tools
run: python3 -m pip install --no-input cpplint flake8
- name: Setup flake8 annotations
uses: rbialon/flake8-annotations@v1
- name: Install build dependencies
shell: bash
run: |
apt-get -y install libcppunit-dev uuid-dev libncurses5-dev \
libmicrohttpd-dev protobuf-compiler python3-protobuf \
libprotobuf-dev libprotoc-dev zlib1g-dev libftdi-dev \
libusb-1.0-0-dev liblo-dev libavahi-client-dev python3-numpy
- name: flake8
run: make flake8 VERBOSE=1
2 changes: 1 addition & 1 deletion AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Contributors:
Nicolas, for the win32 port of libartnet
Nicolas Bertrand, added ShowJockey DMX-U1 support
Nils Van Zuijlen, typos and python lib small update
Perry Naseck, EPoll delay fix
Perry Naseck, EPoll delay fix, various GitHub Actions CI workflows
Peter Newman, MilInst Plugin, Scanlime Fadecandy support and numerous fixes
Ravindra Nath Kakarla, RDM Test Server (Google Summer of Code 2012)
Rowan Maclachlan (hippy) for various changes
Expand Down
16 changes: 4 additions & 12 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -241,13 +241,12 @@ lint: flake8 cpplint
.PHONY : flake8
flake8: Makefile.am
if FOUND_FLAKE8
flake8
flake8 --statistics --count
else
$(error flake8 not found. Install flake8 and re-run configure.)
endif

# cpplint linter
CPP_LINT_URL = "https://raw.githubusercontent.com/google/styleguide/gh-pages/cpplint/cpplint.py"
CPP_LINT_FILTER = "-legal/copyright,-readability/streams,-runtime/arrays"
CPP_LINT_FILES = $(shell find . \( -name "*.h" -or -name "*.cpp" \) -and ! \( \
-wholename "./common/protocol/Ola.pb.*" -or \
Expand All @@ -259,16 +258,9 @@ CPP_LINT_FILES = $(shell find . \( -name "*.h" -or -name "*.cpp" \) -and ! \( \
-wholename "./tools/ola_trigger/config.tab.*" -or \
-wholename "./tools/ola_trigger/lex.yy.cpp" \) | xargs)
.PHONY : cpplint
if FOUND_CPPLINT
cpplint: Makefile.am
cpplint.py --filter=$(CPP_LINT_FILTER) $(CPP_LINT_FILES)
if FOUND_CPPLINT
cpplint --filter=$(CPP_LINT_FILTER) $(CPP_LINT_FILES)
else
cpplint: Makefile.am cpplint.py
./cpplint.py --filter=$(CPP_LINT_FILTER) $(CPP_LINT_FILES)
endif

if !FOUND_CPPLINT
cpplint.py:
wget -O cpplint.py $(CPP_LINT_URL)
chmod u+x cpplint.py
$(error cpplint not found. Install forked cpplint (e.g. via pip for the latest version) and re-run configure.)
endif
29 changes: 25 additions & 4 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,22 +1,43 @@
x/y/2022 ola-0.10.9
x/y/2023 ola-0.10.9
Features:
*
* Further improvements on Python 3 compatibility #1506
* Support for the JMS USB2DMX PRO V2.1 device via the FTDI plugin #1728

API:
* Python: Add a fetch current DMX example.

RDM Tests:
*
* Fix a longstanding bug in the GetMaxPacketSize RDM test around timeouts

Bugs:
* Fix some tests not working on Big Endian machines because our RPC is encoded
with native format and those tests used sample data from a Little Endian
machine
* Renamed EndpointNoticationEvent(sic) to EndpointNotificationEvent in the
E1.33 EndpointManager code
* Check if librt exists and add it to the build if required
* Ensure we can build on later Protobuf and C++ and silence deprecation
messages where required
* Fix the NetBSD build
* Clarify the usage of some of the various Enttec Open DMX USB plugins
* Relax the timing on the ClientWrapperTest so it doesn't fail occasionally
#1714
* Correct the documentation of some existing limits in the E1.31 plugin
* Fix some undefined behaviour in TimeoutManager::ExecuteTimeouts #1726
* Fix UARTs on Debian Bullseye #1749
* Fix Python version detection for versions > 3.9 #1755, #1780
* Update Angular and Angular-Route versions used by the new web UI and add
workaround to be compatible #1782 Debian #1016447
* Significantly reduce the delay when using StreamingClient with EPoll and
multiple universes #1793

Internal:
*
* Add more debugging so we can tell why setting the baud rate failed
* Replace "currentThread" with "current_thread" in Python since the former has
been deprecated
* Fix lots more internal typos and grammar
* Add unit tests for more of the Python RDM Test classes
* Sort the Python imports with isort

22/11/2020 ola-0.10.8
Features:
Expand Down
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -961,7 +961,7 @@ fi
# Linters
AC_CHECK_PROG([flake8],[flake8],[yes],[no])
AM_CONDITIONAL([FOUND_FLAKE8], [test "x$flake8" = xyes])
AC_CHECK_PROG([cpplint],[cpplint.py],[yes],[no])
AC_CHECK_PROG([cpplint],[cpplint],[yes],[no])
AM_CONDITIONAL([FOUND_CPPLINT], [test "x$cpplint" = xyes])

# Output
Expand Down
8 changes: 4 additions & 4 deletions javascript/new-src/bower.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
"license": "GPL",
"private": true,
"dependencies": {
"angular": "~1.3.14",
"angular": "~1.8.3",
"angular-marked": "~1.2.2",
"angular-route": "~1.8.3",
"bootstrap": "~3.3.1",
"angular-route": "~1.3.14",
"marked": "~0.3.6",
"angular-marked": "~1.2.2"
"marked": "~0.3.6"
},
"exportsOverride": {
"angular": {
Expand Down
2 changes: 1 addition & 1 deletion javascript/new-src/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"grunt-contrib-watch": "^0.6.1",
"grunt-jscs": "^1.8.0",
"grunt-stylelint": "^0.16.0",
"olp-javascript-style": "git://github.com/OpenLightingProject/javascript-style",
"olp-javascript-style": "OpenLightingProject/javascript-style",
"stylelint": "^13.8.0",
"stylelint-config-recommended": "^5.0.0"
}
Expand Down
Loading