nodecg

Create broadcast graphics using Node.js and a browser

MIT License

Downloads
1.1K
Stars
1.1K
Committers
40

Bot releases are hidden (Show)

nodecg - Stable Release v1.1.1

Published by anarcho-loneliness over 6 years ago

1.1.1 (2018-07-19)

Bug Fixes

  • dashboard: fix missing background color on graphics collapse toggle button (9e6bc4d)
  • package: include schemas folder in zeit pkg builds (c38e463)
nodecg - Stable Release v1.1.0

Published by anarcho-loneliness over 6 years ago

1.1.0 (2018-07-19)

Features

  • api: add nodecg.bundleGit object (#418) (dfe0b95)
  • api: add nodecg.bundleVersion to api (#459) (170142b)
  • api: introduce bundles replicant (#421) (94d0b1d)
  • dashboard: implement dark theme (#425) (0dafe4e)
  • dashboard: implement redesigned graphics tab with refresh buttons (#420) (215f489)
nodecg - Stable Release v1.0.0

Published by anarcho-loneliness over 6 years ago

1.0.0 (2018-07-11)

Bug Fixes

  • remove undocumented and non-functional panelClick event (1c20d58)
  • remove undocumented dialog-confirm and dialog-dismiss attribute click handlers (cab06b6)
  • assets: fix "can't set headers..." error (#411) (518cf21)
  • dashboard: remove useless and busted-looking "info" dialog from panels (22499bd)
  • login: use the New Twitch API (#413) (6696231)
  • mounts: put mount routes behind an auth check (c99fa85)
  • sounds: remove undocumented customCues system (efe877e)

Features

  • api: add support for intra-context messaging (#410) (3a3acf7)
  • api: support multiple listenFor handlers (#403) (f19c79b), closes #298
  • bundle-manager: blacklisted bundle directory names (#357) (68e7add)

BREAKING CHANGES

  • dashboard: The undocumented [dialog-confirm] and [dialog-dismiss] attribute click handlers have been removed.
  • dashboard: The undocumented (and broken) panelClick event has been removed.
  • api: sendMessage can now trigger listenFor handlers in the same context (extension, webpage, etc).
  • login: The format of Twitch auth scopes has changed. Please see https://dev.twitch.tv/docs/authentication/#scopes for documentation on this new format.
  • login: Twitch auth now uses the "New Twitch API", instead of the deprecated "v5" API.
  • api: A given context (server, client) can now declare multiple listenFor handlers for a given message. Handlers are called in the order they were registered.

However, a server-side listenFor handler must be careful to only call an acknowledgement once. Attempting to call an acknowledgement more than once will throw an error.

Your server-side code can check if an acknowledgement has already been called/handled by checking its .handled property.

Example:

nodecg.listenFor('example', (data, ack) => {
	if (ack && !ack.handled) {
		ack();
	}
});
  • sounds: The undocumented customCues system has been removed.
nodecg - Beta Release v0.9.12

Published by anarcho-loneliness over 6 years ago

0.9.12 (2018-07-05)

Bug Fixes

  • bundles: avoid throwing exception on Unicode BOM (#401) (84a4555)
  • package: use npm audit to fix a lot of vulnerability warnings (1b9dc96)

Features

  • api: add NodeCG.waitForReplicants method (b8d3ed1)
  • auth: add basic local authentication (#390) (54bbcf6)
nodecg - Beta Release v0.9.11

Published by anarcho-loneliness over 6 years ago

0.9.11 (2018-05-03)

Bug Fixes

  • dashboard: always send 'dialog-dismissed' when clicking outside the dialog (#385) (da30fe1)
  • dashboard: support the nodecg-dialog attribute within shadow roots (#384) (fc62adf)
  • logger: improve formatting of errors reported to Sentry via the .error method (cb6426e)
  • package: fix Steam auth not working (59627a9)
  • package: update make-fetch-happen to version 4.0.1 (#389) (7a44ca1), closes #382
  • server: prevent 'can't set headers after they are sent' error spam (#387) (58357bf)
nodecg - Beta Release v0.9.10

Published by anarcho-loneliness over 6 years ago

0.9.10 (2018-03-08)

Bug Fixes

  • package: synchronize package-lock.json (82a6e0b)
  • package: update SoundJS to v1.0.0 (ba26fc8), closes #371
  • replicants: bind methods on objects when returning them via the proxy (1987ce4)

Features

  • bundles: avoid crash when a bundle becomes invalid after a change (#374) (4d42335)
nodecg - Beta Release v0.9.9

Published by anarcho-loneliness almost 7 years ago

0.9.9 (2018-01-18)

Bug Fixes

  • extensions: improve logging when an extension fails to mount (e7f2a90)
  • login: Redirect to /login after destroying session (#355) (30aa4ba)
  • package: update fs-extra to version 5.0.0 (#352) (629cc45)
  • replicator: don't crash when a an error occurs while updating the persisted value of a replicant (54baa0e)
  • replicator: use mkdirp when ensuring that the db/replicants folder exists (7b952f4)

Features

  • add mounting feature (07210b0)
  • bundles: support loading assets from node_modules (#358) (74915d7)
  • config: always create cfg dir if it does not exist (49a9255)
  • package: add "bin" prop to package.json (0c8d0b6)
  • package: add nsp compliance (1b0da9b)
  • add support for zeit pkg builds (#362) (acb168c)
nodecg - Beta Release v0.9.8

Published by anarcho-loneliness about 7 years ago

0.9.8 (2017-10-19)

Bug Fixes

  • bundle-manager: don't attempt watch *.lock files for changes (269f3d0)
  • package: update JSDoc (a1a81c5)
  • package: update nyc (13256a8)
  • replicants: support schemas with internal $refs (ee1c394)
nodecg - Beta Release v0.9.7

Published by anarcho-loneliness about 7 years ago

0.9.7 (2017-09-12)

Bug Fixes

  • api: detect and throw when an object is assigned to multiple Replicants (2fbaee3)
  • dashboard: remove extra margins that could appear in bundle dialogs (7bb2f9f)
nodecg - Beta Release v0.9.6

Published by anarcho-loneliness about 7 years ago

0.9.6 (2017-09-07)

Bug Fixes

  • remove debug print (22e957b)
  • sentry: fix git information not being updated during runtime (1d34d4b)
nodecg - Beta Release v0.9.5

Published by anarcho-loneliness about 7 years ago

Change Log

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.9.5 (2017-09-07)

Bug Fixes

  • dashboard: fix Sign Out button being visible when login security is disabled (aa12c54)

Features

  • sentry: include git information about all loaded bundles when reporting errors to sentry (431274b)
nodecg - Beta Release v0.9.1

Published by anarcho-loneliness about 7 years ago

0.9.1 (2017-08-28)

Bug Fixes

  • bundle-manager: fix case where changes to a bundle's manifest could get ignored (882f406)
  • bundle-manager: remove debug print (91546e2)
  • replicants: improve how revision mismatch errors are logged to console on the client (e99dcbc)
  • package: fix version number in package.json (this prevented most bundles from loading - whoops!)
nodecg - Beta Release v0.9.0

Published by anarcho-loneliness about 7 years ago

0.9.0 (2017-08-27)

Bug Fixes

  • api: print more useful error message when a replicant fails schema validation due to having additional properties (037709a)
  • assets: improve appearance of dialogs. refactor back and frontend code to allow for potential future features. (7025d51), closes #309
  • config: default host to 0.0.0.0 instead of localhost (7a3276d)
  • config: default baseURL to localhost when host is 0.0.0.0 (3a4496b)
  • dashboard: add raised attribute to KILL button on single-instance graphics (1e116db)
  • dashboard: close drawer when viewport increases to a wide layout (20bafef), closes #282
  • replicants: fixed a case where re-assigning a nested object could result in a broken replicant (9e72b86)
  • replicants: harden logging of validation errors (250b3fe)
  • replicants: prevent .once('change') listeners from potentially being called twice (78a11c8), closes #296
  • replicants: properly load schemas when schemaPath is absolute (4201906)
  • replicants: set status to "declared" before emitting the post-declare change event (a62d25d)
  • soundCues: fix case where valid soundCues could fail schema validation (f0c17ba)

Code Refactoring

  • tests: rewrote tests to use ava instead of mocha

Features

  • api: add nodecg.unlisten method (ea45b3f)
  • api: expose Logger class (5882dc4)
  • api: if an acknowledgement is called with an error as the first callback, serialize that error (#300) (1c05f81)
  • api: make client-side sendMessage return a Promise (#301) (fe93c73), closes #297
  • config: add support for whitelisted loading of bundles (31533a8)
  • config: added --bundlesEnabled and --bundlesDisabled command-line arguments to specify a comma-separated list of bundle names to either whitelist or blacklist for loading on startup. Very useful when combined with things such as Run Configurations in your IDE of choosing.
  • dashboard: add "open in standalone window" button to panel headers (ba077c0)
  • dashboard: add default body background color style to panels (3433529)
  • dashboard: add support for "fullbleed" workspaces, which have one single panel that takes up the entire dashboard
  • dashboard: add support for multiple tabs of panels, called "workspaces". See the Manifest tutorial (specifically the nodecg.dashboardPanels section) for more info.
  • dashboard: compatability with browsers other than Chrome has been greatly improved
  • dashboard: re-design dashboard with tabbed navigation (8214b43)
  • dashboard: show a much shorter and easier to read URL for each graphic on the Graphics page (5b91af1)
  • replicants: add .validationErrors property (59f3c82)
  • replicants: log a warning when attempting to access .value before the Replicant has finished declaring (#274) (293acf5), closes #265
  • replicants: support external $refs in schemas (3c34450)
  • add convenience 'shared' directory (#295) (63a1119)
  • add Sentry integration for error tracking (#305) (92cd540)
  • adopt new routing style (/bundles/:bundleName/*) (1663670)
  • log unhandled promise rejections if Sentry is not enabled (59dc75e)

Performance Improvements

BREAKING CHANGES

For detailed instructions on how to migrate your v0.8 bundles to v0.9, check out the tutorial on NodeCG.com

  • NodeCG no longer automatically installs the npm and bower dependencies of installed bundles. Users must do this manually.
  • replicants: Replicants now set their state to declared before they emit their post-declare change event. This is unlikely to break any existing code, but it is technically a breaking change.
  • The Rollbar integration for error tracking has been removed, and has been replaced with a Sentry integration.
  • api: If the first argument you provide to a message acknowledgement is an Error, it will be serialized instead of being sent as an empty object.
  • dashboard: Removed most of the helper styles and classes, such as nodecg-configure, which were being injected into panels. Most of it would not work in Polymer 2 without extra effort.
  • Old /panel and /graphics routes no longer work. You must update all routes to the new /bundles/:bundleName/* format.
nodecg - Beta Release v0.8.9

Published by anarcho-loneliness over 7 years ago

0.8.9 (2017-03-08)

Bug Fixes

  • login: fix case where an invalid socketToken cookie would prevent a user from ever being able to log in (7392249)
nodecg - Beta Release v0.8.8

Published by anarcho-loneliness over 7 years ago

0.8.8 (2017-03-03)

Bug Fixes

  • auth: fix case where token auth via cookies would fail when host was set to 0.0.0.0 (#255) (cb89d25)
    • This mostly affected Docker deployments of NodeCG, which often have to bind to 0.0.0.0 due to the way that Docker's networking functions.
  • sounds: persist the soundCues replicant to disk (#258) (775c158)
    • Somehow, nobody ever noticed that these weren't persistent. Whoops!

Features

  • add NODECG_ROOT environment variable (#257) (ec0fcb1)
    • This controls where NodeCG looks for the assets, bundles, cfg, and db directories. NodeCG uses this to set up a clean folder for running tests, but you may be able to find other uses for it, such as switching between multiple sets of files while still using a single installation of NodeCG.
nodecg - Beta Release v0.8.7

Published by anarcho-loneliness over 7 years ago

0.8.7 (2017-03-02)

Bug Fixes

  • api: throw an error instead of just logging a warning when adding a duplicate listenFor handler (187b601)
  • dashboard: fix panels all being moved to top left corner when window is resized while a non-Dashboard tab is selected (89812f4), closes #217
  • ensure NodeCG binds to the host and port provided in cfg/nodecg.json (thanks @vibhavp!) (fa5b57e)

Features

  • sound: add support for user-defined sound cues (#254) (05878eb)
    • This is an advanced and currently undocumented feature. It requires much additional code within a bundle to be useful. We do not recommend trying to use it at this time.
nodecg - Beta Release v0.8.6

Published by anarcho-loneliness over 7 years ago

0.8.6 (2017-01-29)

Bug Fixes

  • api: call encodeURIComponent on "namespace" and "name" when autogenerating schemaPath (0fd2a19)
  • assets: avoid thrashing asset replicants on startup (1250dd4)
  • dashboard: fix dialog-dismiss and dialog-confirm buttons sometimes not working (5f06166)
  • replicant: fix potential case where a proxied Array with custom methods wouldn't behave as expected (d772f05)
  • replicants: fix case where Replicants with a value of undefined would not emit change events after declaration (a218dbe), closes #228
  • fix favicon not being served (3dcdc83)
  • rollbar: add reporting of unhandled promise rejections (c1a33b4)
  • rollbar: fix browser-side Rollbar not receiving the correct access token from the config (2b810fd)
  • single_instance: fix "Kill" buttons always being visible, even if no instance was open (6f4bc77)

Features

  • add ability to disable bundles via config (#248) (58480bd)
  • auth: secure /graphics routes (#249) (975c17f)
  • config: add "exitOnUncaught" config param (a77bccf)
  • rollbar: automatically report errors logged with nodecg.log.error to Rollbar, if Rollbar is enabled (7b19eaa)
nodecg - Beta Release v0.8.5

Published by anarcho-loneliness about 8 years ago

0.8.5 (2016-10-12)

Bug Fixes

  • dashboard: fix "copy url" button sometimes wrapping to two lines and looking bad (6047a52)
  • dashboard: hide "Settings" menu button if there are no settings to manage in the current configuration (4f304eb)
  • replicants: fix case where an unproxied object could be leaked via the change event after reconnecting to Socket.IO (9e39d45)

Features

  • replicants: add result property to operations (5f6e86f)
  • replicants: provide better error messages when a replicant fails schema validation (daddf64)
  • sounds: add optional channels param (f33a165)
nodecg - Beta Release v0.8.4

Published by anarcho-loneliness about 8 years ago

0.8.4 (2016-09-29)

Bug Fixes

  • dashboard: replace usage of cn-jsurl bower lib with new URLSearchParams API (ea39f50)
  • docker: remove VOLUME statement for db folder (2b8ecfe)
  • server: catch and re-throw otherwise uncaught socket.io errors (1fc9a18)
  • server: fix debug message logging string as number (eac7f63)
  • server: improve rollbar catching of socket.io errors (e8a3443)
  • sounds: fix error when soundFiles is null during option generation for Mixer panel (19226b2)
  • sounds: fixed sounds category not showing in assets when there are no other asset categories defined. (#220) (b744fda), closes #208

Features

nodecg - Beta Release v0.8.3

Published by anarcho-loneliness over 8 years ago

0.8.3 (2016-06-23)

Bug Fixes

  • docker: use abs path for db volume (8480a58)
  • replicants: fixed unexpected behavior after modifying the index of an object inside an array replicant (2127dc4)

Features

  • login: add forceHttpsReturn config param (d952c95)