Around version 1.2.5200, this document is completely deprecated and kept for reference of the project startup phase.
Closed issues:
- An in-range update of jest2 is breaking the build 🚨 #58
- An in-range update of eslint is breaking the build 🚨 #55
- An in-range update of ws is breaking the build 🚨 #53
- An in-range update of hoek is breaking the build 🚨 #52
- An in-range update of pm2 is breaking the build 🚨 #50
- An in-range update of grunt is breaking the build 🚨 #37
- An in-range update of firebase-admin is breaking the build 🚨 #36
- An in-range update of @slack/client is breaking the build 🚨 #35
- An in-range update of sqreen is breaking the build 🚨 #34
- An in-range update of snyk is breaking the build 🚨 #33
- An in-range update of nano is breaking the build 🚨 #32
- An in-range update of rollbar is breaking the build 🚨 #31
Merged pull requests:
- Update firebase-admin to the latest version 🚀 #61 (greenkeeper[bot])
- Update semver to the latest version 🚀 #60 (greenkeeper[bot])
- Update ws to the latest version 🚀 #57 (greenkeeper[bot])
0.9.3862 (2019-04-09)
0.9.3843 (2019-04-06)
3818-buildersh-arduino-stable (2019-04-04)
Closed issues:
- An in-range update of eslint is breaking the build 🚨 #30
Merged pull requests:
- chore(package): update sqreen to version 1.29.4 #49 (suculent)
- chore(package): update eslint to version 5.15.3 #48 (suculent)
- chore(package): update nano to version 8.0.1 #47 (suculent)
- chore(package): update rollbar to version 2.5.4 #46 (suculent)
- chore(package): update @slack/client to version 4.12.0 #45 (suculent)
- chore: pin @slack/client to 4.11.0 #44 (suculent)
- chore(package): update firebase-admin to version 7.1.1 #43 (suculent)
- chore: pin firebase-admin to 7.1.0 #42 (suculent)
- chore(package): update grunt to version 1.0.4 #41 (suculent)
- fix: pin grunt to 1.0.3 #40 (suculent)
- chore(package): update snyk to version 1.143.1 #39 (suculent)
- Add Greenkeeper badge 🌴 #29 (greenkeeper[bot])
- Add license scan report and status #28 (fossabot)
- [Snyk] Fix for 2 vulnerable dependencies #27 (snyk-bot)
0.9.3620 (2019-02-04)
0.9.3556 (2018-11-23)
0.9.3550 (2018-11-23)
0.9.3537 (2018-10-02)
0.9.3525 (2018-08-20)
Merged pull requests:
- [Snyk] Fix for 1 vulnerable dependencies #25 (snyk-bot)
- [Snyk] Fix for 2 vulnerable dependencies #24 (snyk-bot)
0.9.3422 (2018-05-26)
0.9.3386 (2018-05-06)
Merged pull requests:
0.9.3305 (2018-04-22)
0.9.3296 (2018-04-19)
0.9.3279 (2018-04-19)
0.9.3275 (2018-04-17)
0.9.3265 (2018-04-13)
0.9.3230 (2018-04-13)
Merged pull requests:
0.9.3148 (2018-04-03)
0.9.3147 (2018-03-26)
0.9.3144 (2018-03-25)
0.9.3138 (2018-03-24)
Merged pull requests:
0.9.3109 (2018-03-20)
0.9.3088 (2018-03-15)
Merged pull requests:
0.9.3058 (2018-03-04)
0.9.3028 (2018-02-13)
0.9.3021 (2018-01-12)
0.9.3010 (2017-12-18)
0.9.2971 (2017-12-15)
0.9.2968 (2017-12-15)
0.9.2918 (2017-12-07)
0.9.2904 (2017-12-06)
0.9.2983 (2017-12-04)
Merged pull requests:
0.9.2890 (2017-11-28)
0.9.2882 (2017-11-26)
Implemented enhancements:
- Add JIRA integration #15
Closed issues:
Merged pull requests:
0.9.2838 (2017-11-21)
Merged pull requests:
0.9.2805 (2017-11-13)
Closed issues:
- Crash when connecting in STA mode #6
0.9.2798 (2017-11-13)
0.9.2758 (2017-11-10)
Merged pull requests:
0.9.2621 (2017-11-05)
0.9.2571 (2017-11-02)
0.9.2520 (2017-11-01)
0.9.2519 (2017-10-31)
0.9.2492 (2017-10-31)
0.9.2482 (2017-10-27)
Merged pull requests:
0.9.2472 (2017-10-23)
0.9.2464 (2017-10-23)
Merged pull requests:
- Add a Codacy badge to README.md #9 (codacy-badger)
- [Snyk Update] New fixes for 1 vulnerable dependency path #8 (snyk-bot)
- Update README.md #7 (qool)
- Create LICENSE #5 (suculent)
- Created CODE_OF_CONDUCT.md #4 (suculent)
0.9.2238 (2017-08-17)
0.9.2228 (2017-08-17)
0.9.2072 (2017-08-16)
0.9.2203 (2017-08-15)
0.9.2080 (2017-08-08)
0.9.2020 (2017-08-04)
0.9.2013 (2017-08-04)
0.9.2007 (2017-08-04)
0.9.1998 (2017-08-03)
0.9.1921 (2017-07-27)
1.8.1921 (2017-07-27)
1.9.1904 (2017-07-25)
1.8.1857 (2017-07-25)
1.8.1838 (2017-07-20)
1.7.1730 (2017-07-10)
1.7.1725 (2017-07-10)
Merged pull requests:
1.7.1638 (2017-07-01)
1.7.1542 (2017-06-26)
1.6.1465-nightly (2017-06-22)
1.6.1421 (2017-06-18)
1.6.1390-nightly (2017-06-09)
1.6.1322-post-refactoring (2017-06-07)
1.6.1268-test (2017-06-06)
1.6-DAPI-version-bump (2017-06-06)
1.5.1200 (2017-05-29)
1.5.1190 (2017-05-29)
1.5.1105 (2017-05-24)
1.5.1100 (2017-05-24)
1.5.1080 (2017-05-24)
1.5.1053-weekly (2017-05-21)
1.5.1020 (2017-05-21)
1.5.1016 (2017-05-20)
1.5.1013 (2017-05-20)
1.5.1000 (2017-05-20)
1.5.985 (2017-05-20)
1.4.850 (2017-05-14)
1.4.800 (2017-05-14)
1.4.737 (2017-05-12)
1.4.728 (2017-05-12)
1.4.726 (2017-05-11)
1.4.722 (2017-05-11)
1.4.602 (2017-05-08)
1.3.580 (2017-05-05)
Merged pull requests:
1.3.530 (2017-05-02)
1.2.530 (2017-04-29)
1.1 (2017-04-28)
1.2.491 (2017-04-28)
1.2.473 (2017-04-28)
1.1.339 (2017-04-25)
1.1.317 (2017-04-25)
1.1.310 (2017-04-24)
1.1.219 (2017-04-19)
1.1.186 (2017-04-16)
1.0.181-release (2017-04-16)
1.0.12 (2017-04-15)
1.0.0 (2017-04-15)
0.3.0 (2017-04-15)
0.2.0 (2017-04-14)
0.0.8 (2017-04-12)
0.0.6 (2017-04-11)
0.0.5 (2017-04-11)
0.0.4 (2017-04-11)
0.0.3 (2017-04-10)
0.0.2 (2017-04-10)
20/8/2018 0.9.3525
» Preparation for key-escrow and end-to-end encryption » Vulnerability fixes and hashing optimizations » Updating device statuses from MQTT » Firmware availability check optimized » Fixed creating mqtt_passwords » Added support for DST and timezone offset » Client IP trackings for anti-abuse monitoring » Various OTT and warning fixes » Docker transformer fixes » Benchmarking response times » Support for DST and device-specific timezones » Migration to Circle CI 2.0 (in progress) » Debugging various login edge-cases (no-email)
26/05/2018 0.9.3419
» Added SSL support on the library side for ESP8266/ESP32 » SHA-256 and MD5 hash validation support » Updated builder for ESP8266/ESP32 » Fixed GitHub OAuth account creation » Status Transformer Self-healing » Optimized checkin (firmware provider)
18/05/2018
» Major fixes in Arduino ESP266/ESP32 builder
2/05/2018 0.9.3366:
» SigFox Downlink Support » Fixes in Status Transformers » JavaScript repos supported » User accounts are deleted after 3 months of not being used (GDPR compliance)
19/04/2018 0.9.3296:
» Improved support for NodeJS clients » Revamped Deploy Keys with support for Private repositories » Stabilized status transformers and device checkins (even in libs)
13/04/2018 0.9.3230:
» Library fixes for Arduino, ESP8266/ESP32 and test/specs » Upgraded and fixed implementation to @slack/client 4.0 » Improved Status Transformers
25/03/2018 0.9.3144:
» Status Transformer Sandbox Execution Environment
» GDPR and Revocation improvements
» Fixed device revocation
» NodeJS Client Docker suculent/thinx-node-docker
23/03/2018 0.9.3128:
» Static file provider » GDPR, content download provider » NodeJS client library
15/03/2018 0.9.3088:
» Implementing GDPR consent request, refactoring authentication procedure » Google/GitHub OAuth login fixes and improvements » Updated git-hooks, preparing dockerized staging installer
05/03/2018 0.9.3058:
» fixes to Status key storage reliability (Value Histories will move to InfluxDB soon but status histories will remain) » test fixes and testing with Redis 4 and CouchDB 2.1 » timestamp support » full disaster recovery tests
15/02/2018 0.9.3036:
» added base implementation for manual transformer action (dry-run)
» fixed new implementation of device revocation
» prevented saving uninitialized sessions to Redis (clutter)
» new user will have empty default transformers, because without device, those cannot be deleted
» vulnerable dependency fixes
» added missing user defaults
» improved name parser for oauth logins
» changes in default cookie expiration, removed rolling cookie to maintain custom expiration intervals for long-term logins
» added registration response to serve approximate time instead of complex NNTP
» fixed error/warning badge in transformers
» fixed unintentional password leak
» search different logfiles in case nothing is found (should be done much better, for /var/log/, better path without ..
etc.
» reordered audit test to create a record first
» other minor bugfixes
18/12/2018: 0.9.3010: deployed different LoraWAN Server (by gotthardp) using Docker; updating THiNXLib for MQTT integrations
16/12/2017: 0.9.29xx: storing MQTT traffic to redis, providing on API request (so far) 15/12/2017: 0.9.2971: stable release, all tests pass 14/12/2017: 0.9.2943: improving test coverage (5 failures resolved, 7 remaining) 13/12/2017: 0.9.2943: improving test coverage (3 failures resolved, 12 remaining)
06/12/2017: 0.9.2902: improved CouchDB security; testing restore from backup
28/11/2017: 0.9.2890: updating Arduino Docker builder with ESP32 support; logging support fixes
27/11/2017: Web UI updates, ESP32httpUpdate ported, initial release of THiNX32Lib for Arduino ESP32
26/11/2017: 0.9.2882: version bump: zipped artifacts, UI changes, MQTT ACL
23/11/2017: Rollbar and issues are automatically managed in JIRA as well, added JIRA/GitHub integration (10EUR/month)
22/11/2017: Build artifacts can be downloaded as of now.
21/11/2017: 0.9.2838 creating MQTT ACL on-the-run (new users and devices only); zipping and providing build artifacts; API Key and Source ownership migration
20/11/2017: added method for attaching additional "Push Notification Token" parameter to a device using API Key
19/11/2017: sprint review
18/11/2017:
17/11/2017:
16/11/2017: business-trip / day off
15/11/2017: business-trip / day off
14/11/2017: fixed Google login hangup
13/11/2017: 0.9.2798: installed experimental LoRa Server & Application Server; added notes only to the Dockerfile so far (may use https://hub.docker.com/r/loraserver/lora-app-server/ instead of installing into THiNX Docker container)
12/11/2017: 0.9.2796: fixed firmware versioning, error page, build status marker in log, updated builders
11/11/2017: 0.9.2778: bugfixes in versioning and builder, fixing log record
10/11/2017: 0.9.2758: added GitHub login and Status Transformer editor; bugfixes for Arduino builds and builds in general; still tailing lambdas...
9/11/2017: added prototype status transformer as a part of user profile
8/11/2017: 0.9.2682: Bugfixes, stabilized (Arduino) builder with new example project.
7/11/2017: Experimental byte-value transformer for (float) Battery voltages; library update with setStatus support
6/11/2017: minor fixes
5/11/2017: fixes, builder updates, OAuth redirects
4/11/2017: 0.9.2621 - Working Google+ login with creating new users on-the-fly; THiNXLib: Push Config (with callback), MDNS support for local proxy query and public MQTT methods; updated libraries and builders; published to PlatformIO library manager
3/11/2017: - Arduino builder: custom libraries from lib folder next to .ino file are now copied to libraries as installed by library manager, overwriting manager libraries installed using thinx.yml; Arduino library: updated for easy developer UX; universal OAuth support for UI
2/11/2017: 0.9.2562 - starting with Google+ OAuth2 implementation (via @PexMor); even faster platformio builds (via @IvanKravets)
1/11/2017: 0.9.2561 - historically first end-to-end device attempt to fetch firmware for update (ESP8266) using OTT
31/10/2017: 0.9.2540 - passing tests for PlatformIO/Arduino builds; optimized build speed for ESP8266/ESP32; firmware update offer testing positive
30/10/2017: 0.9.2484 - major update in Arduino library (working with/without WiFiManager, added working callback, added owner ID setting to captive portal); secondary test implementation also works (EAV)
27/10/2017: 0.9.2482 - major bugfixes in Arduino libraries (stable release)
24/10/2017: 0.9.2472 - fixed password reset, fixed statistics parser timer, reduced vulnerabilities
23/10/2017: 0.9.2464 - improvements and debugging the Password reset & Activation user journeys; passed tests of activation and password resets; explicit Location & SigFox support (additional attributes: status, snr, lat, lon and station)
19/9/2017: 0.9.2435 end-to-end integration of NodeMCU dockerized builder; added support for thinx.yml parametrization of build type (firmware/files) and firmware type (integer/float); updated logging to split both to console and logfile
18/9/2017: NodeMCU Lua firmware checkin tests
15/9/2017: code style and vulnerability fixes
10/9/2017: minor fixes (user delete)
8/9/2017: registered first SigFox device using callback API (just needs minor manual udid intervention)
7/9/2017: user account deletion
6/9/2017: bugfixes, random device naming, device icons, working on Slack integration...
5/9/2017: 0.9.2389: improved registration procedure, testing with multiple ESP8266 devices with PlatformIO IDE; added Code of Conduct and some basic Community rules (not reviewed); device icons supported
4/9/2017: 0.9.2380: fixed normalized MAC matching; working on Arduino firmware
3/9/2017: 0.9.2374: fixed duplicate username and e-mail creation; working on Arduino firmware
28/8/2017: 0.9.2349: Base Slack integration (SlackBot listening to incoming messages; web-socket forwarder ready); refactored registration, working Lua firmware example
26/8/2017: 0.9.2330: E-mail registration testing & fixes
21/8/2017: - Working MongooseOS builder and firmware prototype
20/8/2017: 0.9.2290 - Fixed device pruning, initial MongooseOS integration tests (blocked by get MAC issue)
17/8/2017: 0.9.2237 - Docker Build Parametrization using YML (dependency management), log sorting, fixing tests, remote configuration support for INO/PIO, solving issues with missing mosquitto_password tool in unit tests, signing builds, lint, landing page almost done.
16/8/2017: 0.9.2215 - Working Arduino and PlatformIO Docker builder incl. artifact collection; started working on landing page.
15/8/2017: 0.9.2203 - Restored Circle CI testing workflow; advancing Arduino Docker Build - directed path to workdir results in successful build start, but managed library <THiNXLib.h> needs to be fetched to local repo first (inside Docker builder image).
...getting stucked on SPIFFS-related crashes on Arduino, while doing a lots of fixes on UI...
8/8/2017: 0.9.2080 RELEASE - Minimal MongooseOS registration example for testing Docker builder; checking Lua module registration (fixed memory issues)
7/8/2017: 0.9.2060 - Starting MongooseOS project
6/8/2017: 0.9.2080
5/8/2017: - Testing and fixing platform-builders for PlatformIO and Arduino; first Device Init for Mongoose (library integration analysis); working logs from Docker
4/8/2017: 0.9.2020 - Working Docker images for all firmwares; working webhooks resulting with a git pull (repository updated with timer
should deprecate soon)
3/8/2017: 0.9.1998 - Base Docker images for Arduino, Platformio and MongooseOS (problem with pip install in platformio?); UI tweaks; logging fixes;
2/8/2017: Dockerized install support
1/8/2017: Working on multi-file upload and multi-platform support on firmware update in order to align with Micropython/NodeMCU systems.
27/7/2017: 0.9.1921 - Working on state of union for Micropython/Lua/Arduino/Platformio Firmware Libraries. Extracted shared code for Arduino /Platformio in their respective repositories. Implemented file updates and messaging both on Lua/Micropython side (not tested so far) pinning version 0.9 as current alpha.
26/7/2017: 0.9.1912 - Actionable Notifications (send text/boolean responses to devices using MQTT directly from the web)
25/7/2017: 0.9.1903 - Finally working couchdb design document to delete old build-logs (after 7 days) and audit-logs (after 1 month); finally working MQTT subscribe/callback for Arduino-C/Platform.io; integrated MQTT and Websocket notifications
24/7/2017: Using platform in device list; integrating MQTT messenger
20/7/2017: 0.8.1838 - Using custom API Key on build; fixes and fighting nasty bug; eslint cleanup
19/7/2017: 0.8.1820 - Micropython docker-based builder; NodeMCU docker-based builder; integration; THiNX system library for nodemcu-firmware; pre-building apps to Micropython; MAC address normalization and other UI tweaks; NodeMCU, Micropython or MongooseOS firmware; websocket opens on login
18/7/2017: inferring source platform on prefetch, parametrized multi-language config builder; env-vars should be pre-built now
13/7/2017: fixed device registration for Lua firmware together with MQTT login and duplicate MAC record pruning
12/7/2017: platform attribute added to registration/UI
10/7/2017 - 0.7.1730: completed logtail implementation for all cases; fixed login redirect and updated certificates (shared)
VACATION DOWNTIME until 9/7/2017
4/7/2017 - 0.7.1706: secure websocket logtail; working on device transfer; injecting env-vars to current builder prototype
3/7/2017 - 0.7.168x: working on device transfer and logtail
2/7/2017 - 0.7.1664: tested/fixed user creation and password reset; origin fix; test script creating devices for multi transfer; added tests and implementation for device transfer with e-mail confirmation and optionally partial accept; not tested; integrated Messenger with Notifier
1/7/2017 - secure web socket, platform.io builder/logger integration
30/6/2017 - MQTT messenger, refactoring, fixes, IP blacklisting
29/6/2017 - weekly statistics and logout
28/6/2017 - session cookie for "remember me"
27/6/2017 - technical debt fixes and generating thinx.h in new format for C/C++
26/6/2017 - 0.7.1542: refactoring, cleanup, audit/build log fixes
25/6/2017 - semver-related fixes, cleanup
24/6/2017 - extracted avatar from database to file
23/6/2017 - 0.7.1500: added deploy-hook (hook fails but nothing is fetched, use pm2 pullAndRestart ft.); fixed Enviro revocations, version bump due to OTT support and multiple firmware OS builders; fixed user logout (+ also on invalid session)
22/6/2017 - 0.6.1486: buffer responses are now binary as expected; added support for secure API environment variables (for Micropython/Lua parametrization); published all five variants of firmware base repositories
21/6/2017 - 0.6.1465: fixed builder; OTT (One-Time-Token) update supported; (OTT will mean version bump to 1.7)
18/6/2017 - finalizing bulk revocation; 3D printer arrived so there's a bit of distraction
15-16/6/2017 - refactoring Arduino C example and C++ library (roadmap task 5)
12/6/2017 - 0.6.1412: advancing in test coverage, fixing bugs
9/6/2017 - completing required tests; lots of work but still not done. fixed back to shell tests for compatibility
9/6/2017 - 0.6.1382: aligned firmware implementation for 'owner' attribute; re-tested (Arduino OK); updated tests (at least does not break the owner, but later...)
8/6/2017 - 0.6.1380: completing post-refactoring fixes
7/6/2017 - 0.6.1322: post-refactoring fixes
6/6/2017 - 0.6.1268: extended API Key format to prevent collisions; testing and fixing refactoring changes merged to master (staging phase).
5/6/2017 - 0.5.1280: General refactoring for testability
3/6/2017 - 0.5.1265: started general refactoring with batch support, working tests on UI side, batch support fixed in RSA Keys for testing
2/6/2017 - 0.5.1258: fixes in builder and logger; flood-testing
30/5/2017 - 0.5.1230: fixes in websocket, build-log and build-logger
29/5/2017 - 0.5.1208: fixes UI in proxy, API Keys and statistics
26/5/2017 - 0.5.1180: fixes in UI, logging, builder, sockets, logout
27/5/2017 - 0.5.1158: various fixes and refactoring; working on builder/logger; separating user workspaces per build id
26/5/2017 - 0.5.1122: migrated from Apache to NGINX; updated node.js to v7.10; linting code with Sonarqube; designing MQTT architecture with AirSensor/2
25/5/2017 - added integrations with Support Desk, Uptime Robot
24/5/2017 - 0.5.1104: replaced MQTT implementation on the device side, working websocket log-tail
23/5/2017 - 0.5.1080: fixes and fortification with aim to prevent DDoS attacks, tested CloudFlare; evening off...
22/5/2017 - 0.5.1062: working on audit/build log; test coverage
21/5/2017 - 0.5.1053: realtime Web socket log-tail; fixed weeks-old Arduino issue (actually in the parser!)
20/5/2017 - 0.5.1020: added Rollbar; added statistics with log tagging; bumped from 11 to 48% test coverage; MQTT authentication tested on device; example Web socket connection and working on log-tail implementation; aligned registration responses with firmware expectations
19/5/2017 - 0.5.962: successfully tested registration with Robodyn D1; introduced Web socket log-tail against runtime log, still working on statistics and popover; migrating fully to Redis API Key store; completed migration to udid; changed statistics directory structure; solved long-term issue with couch queries (bad doc)
18/5/2017 - 0.5.886: migrating to UDID from MAC; adding Redis API Key store; evening off...
17/5/2017 - 0.5.880: test coverage reports; circle.ci tests; added source_id; version bump (changed UI API security requirements, intentionally not backwards compatible)
16/5/2017 - 0.4.868: profile, sparkline chart, log UI
15/5/2017 - 0.4.860: adjusted logging to trackable, added statistics aggregator, security audit and code-quality checks using SonarQube,
14/5/2017 - 0.4.850: base build logs; working on statistics aggregator, added tests; profile editing; device editing; migration to udid in requests
13/5/2017 - 0.4.800: all current tests pass
12/5/2017 - 0.4.737: added HTTPS-endpoint for proxy; working device renaming and Lua/Arduino registration
11/5/2017 - 0.4.722: big laundry done; added HTTPS-proxy; build progress tracking, prototyping Redis API Key storage
10/5/2017 - fixing regressions and bugs
9/5/2017 - major refactoring
8/5/2017 - 0.4.603: Watching sources repositories attached to devices for changes, enabled build logger, updated build directory/repository structure, simplified registration request (should not require 'owner' parameter anymore); advanced update-notifier implementation; database compact job
7/5/2017 - 0.3.585: Added API endpoints for fetching audit log, build log list and build log (incomplete), builder now saves build logs next to build/envelope file with same filename (build-id)
6/5/2017 - 0.3.581: Core client implementation templates for ESP8266/NodeMCU Lua and Micropython-based firmwares (registration and SPIFFS only, no OTA, not tested)
5/5/2017 - 0.3.576: improved tests, enabled editing device alias through API, working logrotate; working device registration step (with issues only on device side)
3/5/2017 - 0.3.559: API key now requires alias, audit logging
2/5/2017 - 0.3.550: changed build API to secure, updated tests; UI advancements (attach/detach/build)
1/5/2017 - 0.2.533: re-tested and improved device registration, new UI
29/4/2017 - 0.2.516: working login, API and RSA key creation and revocation, session,
28/4/2017 - 0.2.489: stabilized nightly build, added device/attach and device/detach endpoints to add firmware repositories to devices, stub for static firmware serving
27/4/2017 - 0.2.413: REDIS Session Management, Startup Service, API for listing/adding RSA-keys; session-store is safe now; key revocation requires DELETE request and is based on key-hash now as the API Key is not shown more than once anymore.
26/4/2017 - 0.1.344 Fixing bugs and analyzing Session issue
25/4/2017 - 0.1.339 Working repository list
24/4/2017 - 0.1.317 Working account creation and password reset
23/4/2017 - 0.1.249:: never store passwords. advancing in activation/password set/reset
19/4/2017 - 0.1.219: API Key revocation (from UI)
18/4/2017 - 0.1.203: Secure endpoints for listing and generating new API keys
16/4/2017 - 0.1.12: Created asynchronous polling git-watcher (Repository class), improved tests
15/4/2017 - 0.1.0: Semantic versioning, firmware update-on-checkin, Deployment, Envelopes, UDID, Device registration with API key
14/4/2017 - 0.3.0: Express Router, Security (api_key, origin, fixes, device router)
13/4/2017 - 0.2.0: Thinx header, Circle CI, tests and ESLint
12/4/2017 - 0.0.6: Rewritten API router, working authentication
11/4/2017 - 0.0.5: MQTT/Slack Notifications, Sessions
10/4/2017 - 0.0.2: Builder and notifier
09/4/2017 - 0.0.1: Device registration
* This Change Log was automatically generated by github_changelog_generator