Skip to content

Commit 3d65ebb

Browse files
authored
Merge pull request #621 from prcutler/dev
Update requirements and readme
2 parents 9265db0 + 0b2d928 commit 3d65ebb

File tree

4 files changed

+43
-31
lines changed

4 files changed

+43
-31
lines changed

.github/workflows/python-app.yml

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,40 @@
1-
# This workflow will install Python dependencies, run tests and lint with a single version of Python
1+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
22
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
33

44
name: SilverSaucer
55

66
on:
77
push:
8-
branches: [ main ]
8+
branches: [ "dev" ]
99
pull_request:
10-
branches: [ main ]
10+
branches: [ "dev" ]
1111

1212
jobs:
1313
build:
1414

1515
runs-on: ubuntu-latest
16+
strategy:
17+
fail-fast: false
18+
matrix:
19+
python-version: ["3.9", "3.10"]
1620

1721
steps:
18-
- uses: actions/checkout@v2
19-
- name: Set up Python 3.9
20-
uses: actions/setup-python@v2
22+
- uses: actions/checkout@v3
23+
- name: Set up Python ${{ matrix.python-version }}
24+
uses: actions/setup-python@v3
2125
with:
22-
python-version: "3.9"
26+
python-version: ${{ matrix.python-version }}
2327
- name: Install dependencies
2428
run: |
2529
python -m pip install --upgrade pip
26-
pip install flake8 pytest
30+
python -m pip install flake8 pytest
2731
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
28-
# - name: Test with pytest
29-
# run: |
30-
# pytest
32+
- name: Lint with flake8
33+
run: |
34+
# stop the build if there are Python syntax errors or undefined names
35+
# flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
36+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
37+
# flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
38+
- name: Test with pytest
39+
run: |
40+
# pytest
File renamed without changes.

readme.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
11
[![Project Type: Toy](https://img.shields.io/badge/project%20type-toy-blue)](https://project-types.github.io/#toy)
22
[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)
33
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
4-
[![Build Status](https://dev.azure.com/prcutler/Silver%20Saucer/_apis/build/status/prcutler.silversaucer?branchName=main)](https://dev.azure.com/prcutler/Silver%20Saucer/_build/latest?definitionId=8&branchName=main)
4+
[![Azure Build Succeeded](https://github.com/prcutler/silversaucer/actions/workflows/main_silversaucer.yml/badge.svg)](https://github.com/prcutler/silversaucer/actions/workflows/main_silversaucer.yml)
55

66
# Overview
77

8+
### Project Status: Completed
9+
810
Silver Saucer is a domain I registered many years ago and kept because I like the name. Both the name and the logo are inspired from both a poem by Neil Gaiman, *The Day the Saucers Came* and my love of *The X-Files*.
911

10-
Silver Saucer's main goal is to integrate my record collection, using the Discogs API, with a website to display album art when an album is chosen or randomply picked.
12+
Silver Saucer's main goal is was a Python learning exercise to integrate my record collection, using the Discogs API, with a website to display album art when an album is chosen or randomly picked.
13+
14+
You can visit [Silversaucer.com](https://silversaucer.com/) to see the site in action.
1115

1216
## Project Goals
1317

14-
I have separated my goals for the project into three phases to help make it more manageable:
18+
The project had three main goals:
1519

16-
Phase 1 - Complete: Build a website that integrates with the Discogs API to display information about an album.
20+
* Complete: Build a website that integrates with the Discogs API to display information about an album, either chosen at random or picked specifically.
21+
* Integrate with an Adafruit PyPortal and using CircuitPython, display the album art on the PyPortal.
22+
* Build an "On this Day" feature to display albums released on a specific day. This required a number of steps to integrate the MusicBrainz into the app.
1723

18-
Phase 2 - Complete: Using an Adafruit PyPortal, build a display that automatically displays album art for the album chosen on SilverSaucer.com.
24+
Want to know more? You can view my [blog posts about Silver Saucer and my progress here](https://paulcutler.org/tags/silver-saucer/).
1925

20-
Phase 3 - 50%: Build an "On this Day" feature that displays which albums were released on a given day. As of June 2022, this is 50% complete. Using `discodos`, I was able to get about half of the MusicBrainz IDs for my collection and I have built a form to manually enter the other 50%. I have already integrated MusicBrainz's API to fetch the release day, which Discogs doesn't have (only year) and this can run after all MusicBrainz IDs are stored in the database.
2126

2227
## Development Goals
2328

@@ -26,7 +31,4 @@ Phase 3 - 50%: Build an "On this Day" feature that displays which albums were re
2631
* [x] Migrate to Github Actions from Azure Pipelines.
2732
* [x] Learn the Discogs API (and potentially MusicBrainz).
2833
* [x] Learn how to use the CircuitPython MatrixPortal. (This is more complex than it sounds!)
29-
* [ ] Learn how to use HTMX in place of Javascript.
30-
* [ ] Potentially look at deploying this to Azure instead of hosting on Digital Ocean. But that's a way out.
3134

32-
Want to know more? You can view my [blog posts about Silver Saucer and my progress here](https://paulcutler.org/tags/silver-saucer/).

requirements.txt

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,29 @@ uvicorn~=0.17.6
33
fastapi-chameleon
44
starlette~=0.19.1
55
aiofiles
6-
requests~=2.27.1
6+
requests~=2.28.0
77
python-multipart~=0.0.5
8-
python3-discogs-client
8+
python3-discogs-client==2.3.15
99
gunicorn~=20.1.0
10-
SQLAlchemy~=1.4.32
10+
SQLAlchemy~=1.4.37
1111
paho-mqtt~=1.6.1
1212
passlib~=1.7.4
13-
pillow~=9.0.1
13+
pillow~=9.1.1
1414
h11~=0.13.0
15-
pip
16-
anyio~=3.5.0
15+
anyio~=3.6.1
1716
sniffio~=1.2.0
18-
asgiref~=3.5.0
17+
asgiref~=3.5.2
1918
certifi~=2022.6.15
20-
pydantic~=1.9.0
19+
pydantic~=1.9.1
20+
pip==22.1.2
2121
six~=1.16.0
2222
click~=8.1.3
2323
python-dateutil~=2.8.2
2424
greenlet~=1.1.2
2525
oauthlib~=3.2.0
2626
idna~=3.3
27-
urllib3~=1.26.8
28-
Chameleon~=3.9.1
29-
setuptools~=60.6.0
27+
Chameleon~=3.10.1
28+
urllib3~=1.26.9
29+
setuptools~=62.6.0
3030
musicbrainzngs~=0.7.1
3131
pendulum~=2.1.2

0 commit comments

Comments
 (0)