Skip to content
This repository has been archived by the owner on Oct 13, 2024. It is now read-only.

v0.3.0 #129

Merged
merged 78 commits into from
Nov 30, 2023
Merged
Show file tree
Hide file tree
Changes from 67 commits
Commits
Show all changes
78 commits
Select commit Hold shift + click to select a range
acad48e
feat: implement automatic removal of old theme songs (#128)
ReenigneArcher Aug 1, 2023
9d54df5
feat: add theme completion report (#130)
ReenigneArcher Aug 5, 2023
ed1ae2d
fix(ci): localization workflow fails to install python-plexapi (#134)
ReenigneArcher Aug 5, 2023
ddef443
ci(localization): fix git diff (#135)
ReenigneArcher Aug 6, 2023
bbdf774
ci(localization): fix localization path (#136)
ReenigneArcher Aug 6, 2023
ffa4fa6
ci(tests): test python dependencies (#137)
ReenigneArcher Aug 6, 2023
de5aed5
fix(localization): fix translation file names (#138)
ReenigneArcher Aug 6, 2023
02d0977
New Crowdin updates (#133)
ReenigneArcher Aug 7, 2023
aaa5e12
feat: add support for collections (#140)
ReenigneArcher Aug 25, 2023
b5de215
New Babel Updates (#145)
LizardByte-bot Aug 25, 2023
6f45eff
build(deps): bump peter-evans/create-pull-request from 4 to 5 (#139)
dependabot[bot] Aug 25, 2023
7bdcbb4
ci: update global workflows (#146)
LizardByte-bot Aug 25, 2023
b8301e0
ci: update global docker (#147)
LizardByte-bot Aug 25, 2023
5cfd567
docs: fix readthedocs build (#150)
ReenigneArcher Sep 6, 2023
66215e8
build(deps): use python-plexapi-backport (#152)
ReenigneArcher Sep 7, 2023
aacfbe9
ci(tests): bootstrap plex server (#153)
ReenigneArcher Sep 22, 2023
cc33cbf
ci: update global docker (#161)
LizardByte-bot Sep 22, 2023
2603943
ci: update global python (#160)
LizardByte-bot Sep 22, 2023
3f1b450
ci: update global workflows (#159)
LizardByte-bot Sep 22, 2023
95b26d1
build(deps): bump actions/checkout from 3 to 4 (#149)
dependabot[bot] Sep 22, 2023
d2b1c9c
New Crowdin updates (#142)
ReenigneArcher Sep 22, 2023
772499e
build(deps): use plexhints from pypi (#162)
ReenigneArcher Sep 28, 2023
11996a1
ci: update global workflows (#172)
LizardByte-bot Oct 5, 2023
964b3b9
ci: update global workflows (#173)
LizardByte-bot Oct 5, 2023
4778272
ci: use new LizardByte setup python action (#174)
ReenigneArcher Oct 6, 2023
caee348
ci: update global workflows (#177)
LizardByte-bot Oct 9, 2023
71f2d9a
ci: update global workflows (#179)
LizardByte-bot Oct 10, 2023
4269c4c
ci: update release notifier (#180)
LizardByte-bot Oct 10, 2023
761b234
New translations themerr-plex.po (French) (#181)
ReenigneArcher Oct 11, 2023
9475d8a
ci: update global workflows (#182)
LizardByte-bot Oct 12, 2023
9a557b1
ci: update release notifier (#183)
LizardByte-bot Oct 16, 2023
9e18f7c
test: fix macos functional test (#186)
ReenigneArcher Oct 17, 2023
cbbd71a
test: increase plugin log search timeout (#187)
ReenigneArcher Oct 18, 2023
4dcfbb9
build(deps-dev): bump plexhints from 0.1.0 to 0.1.1 (#185)
dependabot[bot] Oct 18, 2023
c5b6196
build(deps): bump LizardByte/plexhints from 0.1.0 to 0.1.1 (#184)
dependabot[bot] Oct 18, 2023
094ffba
build(deps): bump plexapi-backport[alert] from 4.15.2 to 4.15.4 (#171)
dependabot[bot] Oct 18, 2023
41dcc52
build(deps): bump bootstrap from 5.2.2 to 5.3.2 (#165)
dependabot[bot] Oct 18, 2023
8269b52
build(deps): bump jquery from 3.7.0 to 3.7.1 (#167)
dependabot[bot] Oct 18, 2023
f8c0639
build(deps): bump @fortawesome/fontawesome-free from 6.2.0 to 6.4.2 (…
dependabot[bot] Oct 18, 2023
c44d595
build(deps): bump @fontsource/open-sans from 4.5.13 to 5.0.15 (#176)
dependabot[bot] Oct 18, 2023
bd590ca
test: wait until plugin is ready (#188)
ReenigneArcher Oct 18, 2023
f311246
ci: use tagged setup python action (#191)
ReenigneArcher Oct 24, 2023
328c938
build(deps): bump plexhints and plexapi-backport (#198)
ReenigneArcher Nov 6, 2023
15099a5
ci: use commit hash for setup python action (#193)
ReenigneArcher Nov 6, 2023
a1e1847
Fix AlertListener on IPv6-aware hosts (#201)
zdimension Nov 7, 2023
f32a6c9
fix: Add error handling around update_plex_item to prevent hang (#202)
zdimension Nov 7, 2023
4feddda
Add error handling and logging for Youtube-DL (#200)
zdimension Nov 7, 2023
09f5253
build(deps): bump LizardByte/plexhints from 0.1.2 to 0.1.3 (#205)
dependabot[bot] Nov 8, 2023
d7cebc8
build(deps-dev): bump plexhints from 0.1.2 to 0.1.3 (#206)
dependabot[bot] Nov 8, 2023
dadf374
feat: Add support for passing session cookies to Youtube-DL (#203)
zdimension Nov 8, 2023
d04fad4
fix: Move skip check before call to Youtube-DL (#204)
zdimension Nov 8, 2023
2aa84ca
New Crowdin updates (#194)
ReenigneArcher Nov 8, 2023
45ce809
build(deps): bump @fontsource/open-sans from 5.0.15 to 5.0.17 (#190)
dependabot[bot] Nov 8, 2023
b463749
fix: disable auto-reload since it is not needed and only harms perf (…
zdimension Nov 8, 2023
af7462c
fix: use correct types for plex item typehints (#211)
ReenigneArcher Nov 11, 2023
ccee561
feat: Prefetch items from ThemerrDB, and differentiate items with no …
zdimension Nov 11, 2023
3c4c02b
New Babel Updates (#212)
LizardByte-bot Nov 11, 2023
308d1fa
New Crowdin updates (#213)
ReenigneArcher Nov 11, 2023
b9dc77c
fix: fix css (#214)
zdimension Nov 12, 2023
9057aed
build(deps): bump youtube-dl (#164)
ReenigneArcher Nov 13, 2023
aba0560
fix(ui): progress bar will now fill to max (#217)
ReenigneArcher Nov 13, 2023
400052c
feat: allow adding cookies from the UI directly and fix the ytdl bug …
zdimension Nov 14, 2023
5514c6b
build(deps): bump plexapi-backport[alert] from 4.15.5 to 4.15.6 (#219)
dependabot[bot] Nov 15, 2023
1891d60
fix: correct issue where database_cache may be updated in parallel (#…
ReenigneArcher Nov 15, 2023
e2f5240
fix(ui): use correct action button for themerr provided items (#220)
ReenigneArcher Nov 16, 2023
7f3dd86
fix(ui): correct issue where themerr-provided field may not be accura…
ReenigneArcher Nov 16, 2023
4f9ffa3
New Babel Updates (#222)
LizardByte-bot Nov 16, 2023
dfda394
fix(ui): improve speed of dashboard by caching data (#224)
ReenigneArcher Nov 17, 2023
12c78b8
New Babel Updates (#225)
LizardByte-bot Nov 17, 2023
1a91752
fix: don't update locked fields + unlock fields after update (#208)
zdimension Nov 18, 2023
eb07188
fix: use item original title if present (#226)
zdimension Nov 20, 2023
3180e9c
fix: disable Plex plugin framework sandbox and add back all missing b…
zdimension Nov 21, 2023
25a1d83
ci: update global workflows (#230)
LizardByte-bot Nov 24, 2023
4172903
chore: update LizardByte actions (#231)
ReenigneArcher Nov 28, 2023
673fe04
fix: remove unused youtube params (#232)
ReenigneArcher Nov 29, 2023
64f6a71
New Crowdin updates (#223)
ReenigneArcher Nov 29, 2023
7299600
build(deps): bump @fortawesome/fontawesome-free from 6.4.2 to 6.5.0 (…
dependabot[bot] Nov 29, 2023
f94afde
docs: update v0.3.0 changelog (#235)
ReenigneArcher Nov 30, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,45 +10,39 @@ updates:
schedule:
interval: "daily"
time: "08:00"
target-branch: "nightly"
open-pull-requests-limit: 10

- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
time: "08:30"
target-branch: "nightly"
open-pull-requests-limit: 10

- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
time: "09:00"
target-branch: "nightly"
open-pull-requests-limit: 10

- package-ecosystem: "nuget"
directory: "/"
schedule:
interval: "daily"
time: "09:30"
target-branch: "nightly"
open-pull-requests-limit: 10

- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "daily"
time: "10:00"
target-branch: "nightly"
open-pull-requests-limit: 10

- package-ecosystem: "gitsubmodule"
directory: "/"
schedule:
interval: "daily"
time: "10:30"
target-branch: "nightly"
open-pull-requests-limit: 10
160 changes: 130 additions & 30 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Verify Changelog
id: verify_changelog
Expand All @@ -39,14 +39,18 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: Themerr-plex.bundle

- name: Install Python 2.7
uses: LizardByte/.github/actions/setup_python2@nightly
- name: Set up Python
# dependabot cannot pick up our tags, so use the commit hash
uses: LizardByte/setup-python-action@8851ba6849c1003134ced0581b34204f0c322cad
with:
python-version: '2.7'

- name: Set up Python 2.7 Dependencies
- name: Set up Python Dependencies
shell: bash
working-directory: Themerr-plex.bundle
run: |
echo "Installing Requirements"
Expand All @@ -59,40 +63,30 @@ jobs:
python -m pip install --upgrade --target=./Contents/Libraries/Shared -r \
requirements.txt --no-warn-script-location

- name: Patch python deps
shell: bash
working-directory: Themerr-plex.bundle/Contents/Libraries/Shared
run: |
patch_dir=${{ github.workspace }}/Themerr-plex.bundle/patches
patch -p1 < "${patch_dir}/youtube_dl-compat.patch"
patch -p1 < "${patch_dir}/youtube_dl-extractor.patch"

- name: Install npm packages
working-directory: Themerr-plex.bundle
run: |
npm install
mv ./node_modules ./Contents/Resources/web

- name: Build plist
shell: bash
working-directory: Themerr-plex.bundle
env:
BUILD_VERSION: ${{ needs.check_changelog.outputs.next_version }}
run: |
python ./scripts/build_plist.py

- name: Test Plex Plugin
working-directory: Themerr-plex.bundle
run: |
python ./Contents/Code/__init__.py

- name: Upload Artifacts
if: ${{ github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }}
uses: actions/upload-artifact@v3
with:
name: Themerr-plex.bundle
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
path: |
${{ github.workspace }}
!**/*.git*
!**/*.pyc
!**/__pycache__
!**/plexhints*
!**/Themerr-plex.bundle/.*
!**/Themerr-plex.bundle/cache.sqlite
!**/Themerr-plex.bundle/DOCKER_README.md
!**/Themerr-plex.bundle/Dockerfile
!**/Themerr-plex.bundle/docs
!**/Themerr-plex.bundle/scripts

- name: Package Release
shell: bash
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
run: |
7z \
"-xr!*.git*" \
Expand All @@ -101,16 +95,27 @@ jobs:
"-xr!plexhints*" \
"-xr!Themerr-plex.bundle/.*" \
"-xr!Themerr-plex.bundle/cache.sqlite" \
"-xr!Themerr-plex.bundle/codecov.yml" \
"-xr!Themerr-plex.bundle/crowdin.yml" \
"-xr!Themerr-plex.bundle/DOCKER_README.md" \
"-xr!Themerr-plex.bundle/Dockerfile" \
"-xr!Themerr-plex.bundle/docs" \
"-xr!Themerr-plex.bundle/patches" \
"-xr!Themerr-plex.bundle/scripts" \
"-xr!Themerr-plex.bundle/tests" \
a "./Themerr-plex.bundle.zip" "Themerr-plex.bundle"

mkdir artifacts
mv ./Themerr-plex.bundle.zip ./artifacts/

- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: Themerr-plex.bundle
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
path: |
${{ github.workspace }}/artifacts

- name: Create Release
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
uses: LizardByte/.github/actions/create_release@master
Expand All @@ -119,3 +124,98 @@ jobs:
next_version: ${{ needs.check_changelog.outputs.next_version }}
last_version: ${{ needs.check_changelog.outputs.last_version }}
release_body: ${{ needs.check_changelog.outputs.release_body }}

pytest:
needs: [build]
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]

runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Download artifacts
uses: actions/download-artifact@v3
with:
name: Themerr-plex.bundle

- name: Extract artifacts zip
shell: bash
run: |
# extract zip
7z x Themerr-plex.bundle.zip -o.

# move all files from "Themerr-plex.bundle" to root, with no target directory
cp -r ./Themerr-plex.bundle/. .

# remove zip
rm Themerr-plex.bundle.zip

- name: Set up Python
# dependabot cannot pick up our tags, so use the commit hash
uses: LizardByte/setup-python-action@8851ba6849c1003134ced0581b34204f0c322cad
with:
python-version: '2.7'

- name: Bootstrap Plex server
env:
PLEXAPI_PLEXAPI_TIMEOUT: "60"
id: bootstrap
uses: LizardByte/[email protected]
with:
additional_server_queries_put: >-
/system/agents/com.plexapp.agents.imdb/config/1?order=com.plexapp.agents.imdb%2Cdev.lizardbyte.themerr-plex
/system/agents/com.plexapp.agents.themoviedb/config/1?order=com.plexapp.agents.themoviedb%2Cdev.lizardbyte.themerr-plex
plugin_bundles_to_install: >-
Themerr-plex.bundle
without_shows: true
without_music: true
without_photos: true

- name: Install python dependencies
shell: bash
run: |
python -m pip --no-python-version-warning --disable-pip-version-check install --upgrade \
pip setuptools wheel
python -m pip --no-python-version-warning --disable-pip-version-check install -r requirements-dev.txt

- name: Test with pytest
env:
PLEX_PLUGIN_LOG_PATH: ${{ steps.bootstrap.outputs.PLEX_PLUGIN_LOG_PATH }}
PLEXAPI_AUTH_SERVER_BASEURL: ${{ steps.bootstrap.outputs.PLEX_SERVER_BASEURL }}
PLEXAPI_AUTH_SERVER_TOKEN: ${{ steps.bootstrap.outputs.PLEXTOKEN }}
PLEXAPI_PLEXAPI_TIMEOUT: "60"
PLEXTOKEN: ${{ steps.bootstrap.outputs.PLEXTOKEN }}
id: test
shell: bash
run: |
python -m pytest \
-rxXs \
--maxfail=1 \
--tb=native \
--verbose \
--cov=Contents/Code \
tests

- name: Debug log file
if: always()
shell: bash
run: |
echo "Debugging log file"
if [[ "${{ runner.os }}" == "Windows" ]]; then
log_file=$(cygpath.exe -u \
"${{ steps.bootstrap.outputs.PLEX_PLUGIN_LOG_PATH }}/dev.lizardbyte.themerr-plex.log")
else
log_file="${{ steps.bootstrap.outputs.PLEX_PLUGIN_LOG_PATH }}/dev.lizardbyte.themerr-plex.log"
fi
cat "${log_file}"

- name: Upload coverage
# any except canceled or skipped
if: always() && (steps.test.outcome == 'success' || steps.test.outcome == 'failure')
uses: codecov/codecov-action@v3
with:
flags: ${{ runner.os }}
2 changes: 1 addition & 1 deletion .github/workflows/auto-create-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Create Pull Request
uses: repo-sync/pull-request@v2
Expand Down
72 changes: 0 additions & 72 deletions .github/workflows/autoupdate-labeler.yml

This file was deleted.

51 changes: 0 additions & 51 deletions .github/workflows/autoupdate.yml

This file was deleted.

Loading
Loading