Skip to content

0.7.4 Bug Fix Release

Compare
Choose a tag to compare
@lbussy lbussy released this 31 Mar 23:57
6a5ffda

0.7.4 Bug Fix Release

This release merges in several fixes to bugs discovered by @day_trippr during an overhaul of his Pi garden.

The most notable work here was to further abstract the real /dev ports from the udev mapped ports and allow translation via the serial number. This was required because the PySerial people apparently hate symlinks and have refused by inaction, since 2016, to fix that state of affairs. I'm sure "I'm doing it wrong" but at least I know I'm not the only one.

I've added a new tool, utils/doFlash.sh to further abstract the venv environment required by BrewPi Remix now. I've also added a complete description in the readme of all of the command line tools which I shall include here for reference:

Filename Description
doBrewPi.sh This is the script called by the BrewPi Remix daemon which does all of the work of keeping BrewPi Remix running. You should not need to execute this script in normal operation. The daemon runs as brewpi, or the name of the chamber when used in multi-chamber mode.
doCleanup.sh This is a script which is called by the upgrade process, intended to help clean up remnants of the previous version before restarting.
doDaemon.sh This script checks and/or creates the system daemons used by BrewPi Remix: the BrewPi Remix Daemon (named for the chamber in multi-chamber mode) and the WiFIChecker.
doDepends.sh This script checks and enforces the apt and pip dependencies for BrewPi Remix.
doFlash.sh This script will set up and execute the updateFirmware.py code to flash firmware from the command line.
doIndex.sh This script is called by the install process to generate the root web index files as symlinks.
doMenu.sh This script is not yet used.
doPerms.sh This script may be the most used for BrewPi Remix users. It will check all file and system permissions. After any manual manipulation of files, this script should be called in order to ensure BrewPi Remix can operate. It is often the first troubleshooting step when a user asks for help.
doUpdate.sh This is the update script used to bring BrewPi Remix up to the current version.
doWiFi.sh This script is the compliment to the doBrewPi.sh script. Historically, the Raspberry Pi has had challenges remaining connected to WiFi. This script is run by a daemon process called wificheck and will periodically ping the gateway. When it is unable to reach the gateway it will restart the network stack as first aid.

All of these tools will create the proper conditions in which they need to work, to include using sudo and venv to enforce the environment. That's no problem if you have no idea what I am talking about. For those who do, you are bright enough to figure out your own way around that if it creates friction for you.

Upgrading

Existing users of BrewPi Remix 0.5.3 and above may upgrade with:

sudo /home/brewpi/utils/doUpdate.sh

If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:

curl -L upgrade.brewpiremix.com | sudo bash

This must be run from within your /home/brewpi directory, or from each chamber directory in multi-chamber mode.

Details

As this is a project in several parts, below are the changes in the individual repositories

Note: Some of these files were changed in the last release and because of my horrible git skills, were re-included here. I believe I've learned the error of my ways. The commit summary is only this release however.

Tools

Commit Summary

File Changes

  • M bootstrap.sh (5)
  • M install.sh (124)
  • M uninstall.sh (45)

Patch Links

Scripts

Commit Summary

  • d83f05b Fix error when setting devices
  • aff8fdd Use proper Python env
  • 74c6b0c New file
  • e1466b1 Bail on error
  • ddf80fb Add additional definition
  • 2131590 Handle null ports
  • 49f017c Add port conversion
  • 77eb8b6 Change examples
  • 60b7611 Use real ports for flash
  • f48c0df Change choice flow
  • 1e1124f Move updateFirmware to gitroot
  • fc3cf31 Describe files in directory
  • 5dd1a68 Move to main directory
  • e804d4f Add downloads/ to ignore
  • a2809cf Translate udev port
  • 0b81f98 Fix aliases
  • 5032800 Formatting for legibility
  • 5991741 Avoid poorly named ports
  • dfde1f4 Move from distutils to packaging
  • 6d090b2 Address formatting
  • 2366def Revert choice to restore settings
  • 440e675 Make sure asroot passes all args
  • 55b0096 Update copyright
  • 8db8cd8 Do not allow restore from newer
  • 011e010 Pass through proper args
  • f57a866 Update copyright
  • 7e4168e Fix aliases for both users
  • c4d4fb9 Hard code brewpi home path
  • 544442f Hard code brewpi home path

File Changes

  • M .gitignore (1)
  • M BrewPiProcess.py (4)
  • A ConvertBrewPiDevice.py (104)
  • M MigrateSettings.py (6)
  • M Tilt.py (30)
  • M autoSerial.py (12)
  • M backgroundserial.py (3)
  • M brewpi.py (246)
  • M brewpiVersion.py (10)
  • R gitHubReleases.py (1)
  • M inc/asroot.inc (6)
  • M inc/help.inc (2)
  • M programController.py (36)
  • M requirements.txt (1)
  • R terminal.py (0)
  • M tests/versionTest.py (9)
  • R updateFirmware.py (20)
  • R updater.py (0)
  • M utils/README.md (18)
  • M utils/doDepends.sh (11)
  • A utils/doFlash.sh (164)
  • M utils/doUpdate.sh (2)

Patch Links:

Web UI

Commit Summary

  • Truncate commit info

File Changes

  • A css/multi-index.css (17)
  • M css/style.css (19)
  • A get-bjprompt.php (49)
  • A get-gitinfo.php (47)
  • A get-logo.php (158)
  • A get-tiltinfo.php (53)
  • M index.php (56)
  • M js/beer-chart.js (39)
  • M js/main.js (8)
  • M lcd.php (113)
  • M multi-index.php (204)
  • M top-bar.php (136)

Patch Links: