All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Unused gems were removed which should make the project work better.. probably.
- Upgraded to Rails 2.4.2
- Updated dockerfile to use ruby:2.4.1-slim base image.
- Bumped versions of some dependencies again
- Other backend changes for developer happiness.
- Bumped versions of some dependencies
- Fixed database migrations so docker will be happy.
- Updated to rails 5!
- This shouldn't be a breaking change for anyone. Just run
update.sh
and everything should be fine. If everything is not fine then please open a new issue on GitHub!
- This shouldn't be a breaking change for anyone. Just run
- Added validations to plex_sessions which make sure that when we try to do math
there will actually be numbers to do the math on.
- If you have any issues try running
rake db:migrate:redo
from the root folder of the application.
- If you have any issues try running
- Fixed the ordering of Plex Recently Added
- !!!IMPORTANT!!!
Theserver_config.yml
file has changed formats. You will need to delete the one you have in order to consume this update!- The new format makes more sense and has better descriptions along with examples.
- update.sh was changed so you'll need to do a
git pull
before you run it.
This is becauseupdate.sh
cannot manipulate itself while it is running. I will figure out something more graceful in the future.- If you have issues you might need to do a
git reset --hard
to get your local changes back to an update-able state.
- If you have issues you might need to do a
- Overhauled the overhauled scripts again. They now provide better support for windows.
- Added
set -e
to all of the scripts so they will stop if any errors occur.
- Added
- Docker support is here!
- Major overhaul to the
bash
scripts.runServer.sh
was renamed to startServer.sh- All scripts will try to run in the directory in which they are located so they should be safe to call from anywhere.
- The server now defaults to running as a daemon! This means you don't have to leave your shell open anymore!
- Operating system detection
- It is very basic so please file a bug if you see
setupServer.sh
incorrectly identifying your OS!
- It is very basic so please file a bug if you see
Dockerfile
!!!- This is great because it helps me test that the setup scripts work correctly.
- Plex transcodes/streams counter in navbar.
- Transcodes are counted separately from streams, I can change this if it's confusing.
- Rearranged some controllers to reduce duplicated code
- Created helper method to generate a link for a plex service's streams/transcodes
- Currently goes to the service itself.
- Commented out some unused dependencies sine there are no UI tests currently.
- Moved endpoint for SSE stream from
services/notifications
to a new controller at/notifications
I wanted to put this behind a version bump in case anything breaks. Tests still pass (though there are no UI tests currently) - Only running tests on Ruby 2.3.3
- Removed the
rm db/*.sqlite3
from theserverSetup.sh
script because it would nuke a user's DB if they run it after setting everything up which would suck.
- Fixed broken service online status check. It was showing services as online that
rejected the connection attempt. A test covers this properly now at the cost of a
dependency on
redis
(for ease of install in Travis-CI). If you're going to run the tests locally then you'll need to install redis/something running on6379
, or disable that test. - Upgrade to Ruby
2.3.3
- If you're running ruby
2.3.0
you can upgrade your ruby by doingrvm upgrade 2.3.0 2.3.3
- If you're running ruby
- Increased database threadpool so puma doesn't run out http://stackoverflow.com/questions/12045495/activerecordconnectiontimeouterror-happening-sporadically
- All online statuses are now held in cache. This makes SQLite3 much more happy.
- SSE has been overhauled to be less chatty. All updates are sent up to the page over SSE.
- The app should run faster now that the controller isn't blocked on checking each service's status.
- Updated almost all of the gems used by this project.
- Plex changed their API and it broke this app. This should be fixed now.
- Changed maximum plex connection timeout to 1 second per attempt so we don't waste time.
- Fixed
serverSetup.sh
thanks to @VuokkoVuorinnen's PR. - Built a basic weather view, it's not pretty yet but it works.
- Layout of the sidebars/main content. It should collapse in a better fashion now.
- HTML 5 shim for IE. We don't support IE (or rather IE doesn't support modern and widely accepted standards) so this is pointless.
- Info/Status page. It had no use and I don't have a plan for it.
- Weather class and beginnings of tests
- Geolocation gem
- Added some logic to recreate deleted images folder while the server is running.
- Updated install instructions in
README.md
after trying them out.
- Added some info to the "About" page
- Added more unit tests for
PlexService
- Nil check on
service
forget_plex_sessions
in thePlexService
class
- Started changing tests to use fabricators instead of fixtures. This will allow me have an easier time with the integration tests since the database won't be filled with garbage data.
- This changelog's formatting and stuff
- Rewrote unit tests for PlexService validation, the username and password unit tests weren't actually testing what they were supposed to test.
- VCR and real-world Plex server responses for Integration Tests
service_test_config.yml
file and example_service_test_config.yml files were added to the test directory.service_test_config.yml
is in.gitignore
so that my personal information does not make it into the repo.
- Added a fix for issue #43 where assets were only being resolved with relative paths, making proxies not work. This change will set the assets to the localhost's FQDN. If DNS is not set up properly the server will probably crash.
- PhantomJS testing framework
- Added one UI test to check for keywords on the homepage
- This changelog!
- Updated to Ruby 2.3.0