All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- log level of webscraper
- crontab (note as of Jan 14th, all local gyms are closed again)
- log output format for weather.py
- script and file locations for webscraper
- log level for weather data from INFO to DEBUG
- log folder locations
- export message to display the output path
- loguru to log all python files (Resolves #21 and #24)
- climbr.py -> climbr.log
- bookings.py -> webscraper.log (monthly file rotation)
- cron.log (for system out of webscraper)
- callback functions to send email notificaion upon error
- warning when number of reservations is greater than capacirt (#41)
- Error notification when using crontab
- Error notification attachment to display filename
- Removed redundant try & except statements
- Replaced silent option in existing functions with log levels. If -q is selected, log level will only show errors
- cron job to check Altitude Gatineu for capacity every 30mins
- Zone labeling for Altitude Gatineau
- Retroactively changed capacity for Annex, should have been 25max not 20.
- startup.bat to quickly start the webscraper
- weather command to update FireStore weather in pyproject.toml
- new weather and bookings data
- bookings.py and crontab to account for Gatineau's Zone system
- crontab with updated times
- bookings.py and crontab to account for reservation and capaicty limits in Ottawa/Gat
- Variable assignment in session.py
- Unused print statement in globals.py
- Template support for Allez Up, Bloc Shop Hochelaga, and Bloc Shop Chabanel
- Latest bookings and weather data
- Template logic to fill content based on config.py (list of climbers and shoes)
- Yaml files now accpet list and str values for "Shoes"
- end_hour and end_minute to allow for detailed time ranges in Kibana
- percent_full to old data
- Deprecation warning in bookings.py
- (#36) pyproject.toml and poetry.lock files from /webscraper. Using entrypoint.sh to source the parent files instead
- bookings.py to check a new url for the gatineau location
- crontab to check every 30 mins from 9 AM - 10:40
- dockerfile to use poetry instead of pip install
- Bug with starting a webscraper container without the cron.log file
- linting for:
- .\web_scraper\
- .\common\
- config.py
- noxfile.py
- bookings.json and weather csv's to included latest data since Altitude and Coyote are no longer doing reservations
- globals.py to create "logs" and "output" folders if ti doesn't exist in the project
- pyproject.toml for installing dependencies for Poetry
- noxfile.py for running nox linters and safety checks
- All python files to comply with flake8 linting standards
- climbr.py by separating commands into their own functions
- crontab to removed coyote rock gym times since they will no longer use a reservation system
- bookings.py to increase Altitude Kanata capacity to 250
- bookings.py to output fell exception only when it doesn't contain: "no such index [bookings]" to reduce the 5k line log output
- Entrypoint in dockerfile with the correct params
- pylint workflow - will evaluate best linter for this project and re-implement
- restart scripts for quick reboot of webscraper docker containers
- Updated cron times for gyms, capacity changes and new data for updated covid guidelines
- New option to create log from template via command line
- Supporting: Altitude Kanata, Altitude Gatineau, Coyote Rock Gym, Klimat, Up the Bloc, Cafe Bloc, Calabogie, Hog's back
- Support for email notifications in an event of an error
- Email template for notifications
- An updated version of local weather and booking data
- Cron jobs to reflect re-opening of gyms and new regulations
- Climbing templates to have "experience" field, and fixed some minor mistakes to grading and values
- Entering multiple shoes with ',' and '/' will now separate into multiple shoes
- When entering multiple climbing styles, each style is now stripped on whitespace
- Counters are no longer a requirement in climbing logs (allows for logging visits or hangout days)
- Corrected the path thats displayed to user when uploading to Kibana
- booking.py to work with local gyms transitioning to red zone
- Updated local weather and booking data
- CRON to reflect local gym hours
- Web scraper to reflect Gatineau changes
- Updated local weather and booking data
- requirements.txt file for firebase_admin dependancu
- config.py to add an option for Firestore connections
- common.py to add a firestore connection function
Python Notebook added, Weather is now being tracked, and booking crontab has been updated to reflect recent Coyote time changes
- weather.py to gather weather data for Kanata and Gatineau
- Python notebook to analyze online booking trends associated with weather
- Python notebook to analyze common words within session logs
- Weather data stored in csv for Gatineau and Kanata
- New sample images from notebook
- Config file for API key for https://www.visualcrossing.com/
- crontab with new booking times and scheduled API calls for weather
- bookings.json with more data
- requirements.txt
- Templates had 'V5/6' instead of 'V5/V6'
- New bookings data
- crontab to track Altitude Kanata, and Coyote (reopens Oct 7th)
- Docker-compse now auto restarts when closed