From b83f412f324159dac5fb7c3b2581e3357115f30d Mon Sep 17 00:00:00 2001 From: Julian Waller Date: Tue, 23 Jan 2024 21:19:26 +0000 Subject: [PATCH] chore: update changelog --- CHANGELOG.md | 128 +++++++++++++++++++++++++++++++-- tools/list_changed_modules.mjs | 70 ++++++++++++++++++ 2 files changed, 194 insertions(+), 4 deletions(-) create mode 100644 tools/list_changed_modules.mjs diff --git a/CHANGELOG.md b/CHANGELOG.md index 588092c128..b36dd3d3f5 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,8 +2,6 @@ ## Companion v3.2.0 - Release Notes (unreleased) -Up to 2a83fa2c2a0b3b5efd5f3d85f25e4120c947d118 - ### 📣 CORE FEATURES AND IMPROVEMENTS - Button grid can be resized to be smaller or larger than the default 8x4 @@ -32,7 +30,6 @@ Up to 2a83fa2c2a0b3b5efd5f3d85f25e4120c947d118 - Add variables about surfaces and surface groups - Add variables for connection statuses - Add seperate press/release if condition actions -- ### 🐞 BUG FIXES @@ -40,10 +37,133 @@ Up to 2a83fa2c2a0b3b5efd5f3d85f25e4120c947d118 - Preserve sort order when importing connections - Restore `app_exit` action - Connections sometimes getting stuck and unable to start -- ### 🧩 NEW & UPDATED MODULES +- agf-characterworks +- audiostrom-liveprofessor +- avmediatools-protimer +- avocet-landscape +- avstumpfl-pixera +- aximmetry-composer +- barco-clickshare +- barco-eventmaster +- behringer-x32 +- birddog-central +- birddog-cloud +- birddog-ptz +- bmd-atem +- bmd-hyperdeck +- bmd-ultimatte +- bmd-videohub +- bmd-webpresenter +- canon-ptz +- christie-spyder +- colorlight-grandshow +- colorlight-processor +- dan-dugan-automixer +- dataton-watchout +- denon-recorder +- depili-clock-8001 +- emotimo-st4 +- etc-eos +- etc-paradigm +- etcaudiovisuel-onlyview +- extron-smp351 +- figure53-go-button +- figure53-qlab-advance +- gdsys-muxkvmswitch +- generic-bridge +- generic-dataentry +- generic-mqtt +- generic-pjlink +- generic-speedtest +- generic-stopwatch +- generic-swp02 +- generic-tcp-serial +- getontime-ontime +- glensound-minferno +- globalcache-itac-cc +- google-sheets +- grassvalley-amp +- h2r-graphics +- iccms-sib +- iiyama-prolite +- imimot-mitti +- ipl-ocp +- kenku-fm +- leolabs-ableset +- lofas-ndistudioclock +- logos-proclaim +- luminex-gigacore +- luminex-luminode +- magewell-director +- malighting-grandma2 +- malighting-grandma3 +- malighting-msc +- massimo-callegari-qlcplus +- microsoft-vscode +- middlethings-middlecontrol +- mixtech-theatremix +- modulopi-moduloplayer +- mt-viki-matrix +- mvr-helios +- newtek-tricaster +- novastar-controller +- novastar-mediaserver +- novastar-switcher +- ntp-technology-dot +- obs-studio +- openweather-rest +- panasonic-kairos +- panasonic-projector +- panasonic-ptz +- pixelhue-mediaserver +- pixelhue-switcher +- planningcenter-serviceslive +- presentationtools-aps +- ptzoptics-visca +- qsys-remote-control +- riedel-mediornet +- rogueamoeba-farrago +- roku-tv +- roland-v60hd +- shelly-ws +- shure-mxcw +- shure-scm820 +- shure-wireless +- simedia-yesapi +- singularlive-studio +- smodetech-smodelive +- snapav-wattbox +- softron-movierecorder +- softron-multicamlogger +- sonos-speakers +- soundcraft-ui +- spx-graphics-controller +- stagetimerio-api +- studiocoast-vmix +- tascam-cd +- tascam-cd400u +- tascam-da-6400 +- techministry-midirelay +- tellyo-streamstudio +- teradek-prism +- theatrixx-xpresscue +- timemachines-clock +- tow-mixeffect +- ubiquiti-unifi +- vbaudio-voicemeeter +- vdo-ninja +- videolan-vlc +- vistream-online +- voicemod-api +- wled-websocket +- yamaha-rcp +- youtube-live +- zenvideo-ndirouter +- zinc-oscpoint + ## Companion v3.1.2 - Release Notes ### 🐞 BUG FIXES diff --git a/tools/list_changed_modules.mjs b/tools/list_changed_modules.mjs new file mode 100644 index 0000000000..11293eac93 --- /dev/null +++ b/tools/list_changed_modules.mjs @@ -0,0 +1,70 @@ +#!/usr/bin/env zx + +import { Octokit, App } from 'octokit' +import dotenv from 'dotenv' +dotenv.config() + +$.verbose = false + +if (argv._.length < 3) { + console.log('Needs two refs to compare') + process.exit(1) +} + +const oldRev = argv._[1] +const newRev = argv._[2] + +const octokit = new Octokit({ auth: process.env.GITHUB_TOKEN }) + +const { + data: { login }, +} = await octokit.rest.users.getAuthenticated() +console.log('Hello, %s', login) + +const newList = await octokit.rest.repos.getContent({ + owner: 'bitfocus', + repo: 'companion-bundled-modules', + path: '', + ref: newRev, +}) + +const changedDirs = [] +for (const item of newList.data) { + if (item.path === '.github') continue + + if (item.type === 'dir') { + const [oldInfo, newInfo] = await Promise.all([ + octokit.rest.repos.listCommits({ + owner: 'bitfocus', + repo: 'companion-bundled-modules', + path: item.path, + per_page: 1, + page: 1, + sha: oldRev, + }), + // + octokit.rest.repos.listCommits({ + owner: 'bitfocus', + repo: 'companion-bundled-modules', + path: item.path, + per_page: 1, + page: 1, + sha: newRev, + }), + ]) + + const oldSha = oldInfo.data[0]?.commit?.tree?.sha + const newSha = newInfo.data[0]?.commit?.tree?.sha + console.log(item.path, oldSha, newSha) + + if (oldSha !== newSha) { + changedDirs.push(item.path) + } + } +} + +changedDirs.sort() + +console.log('=================') +console.log('changed modules') +console.log(changedDirs.join('\n'))