Tubee is a web application, which runs actions when your subscribed channel upload new videos

Overview

Tubee



Python Version GitHub Workflow Status codecov
LICENSE scan status MIT liscense
Code style: black Imports: isort Code style: prettier

Overview

Tubee is a web application, which runs actions when your subscribed channel upload new videos, think of it as a better IFTTT but built specifically for YouTube with many enhancements.

Tubee IFTTT
Detaction of new channel video Push webhook via WebSub Periodically Pulling (delayed trigger)
action for multiple channel (one applet for one channel)
multiple action for single channel (one applet for one action)

This application is, and will be rolling updated, to conform author's all sort of experiments. You're welcome to use it at your own risk, guides are provided in wiki section.

Features

Actions that may be executed upon new video being published:

  • Push Notification via
  • Add to user's YouTube playlist
  • Download to linked Dropbox folder

Requirements

  • Python 3.7+
  • YouTube Data API authorization credentials in both
    • OAuth 2.0 token: used for accessing user information
    • API Keys: used for querying public metadata

For additional operation, you might also need

Comments
  • 🧹 chore: Bump pyyaml from 5.4.1 to 6.0

    🧹 chore: Bump pyyaml from 5.4.1 to 6.0

    Bumps pyyaml from 5.4.1 to 6.0.

    Changelog

    Sourced from pyyaml's changelog.

    6.0 (2021-10-13)

    Commits
    • 8cdff2c 6.0 release
    • a4fb55e Update Python 3.10 versions for Windows build
    • e45b964 Add Python 3.10 to tox.ini
    • 4808fba 6.0b1 release
    • d5aba40 Omnibus CI/artifact build update
    • a6d384c Various setup fixes
    • 8f3f979 No longer using appveyor
    • c274365 The yaml.load{,_all} functions require Loader= now
    • 2f87ac4 Add a basic test file for yaml.load and yaml.dump
    • 7bd92df Makefile tweaks
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 5
  • 🧹 chore: Bump coverage from 6.0.1 to 6.0.2

    🧹 chore: Bump coverage from 6.0.1 to 6.0.2

    Bumps coverage from 6.0.1 to 6.0.2.

    Changelog

    Sourced from coverage's changelog.

    Version 6.0.2 — 2021-10-11

    • Namespace packages being measured weren't properly handled by the new code that ignores third-party packages. If the namespace package was installed, it was ignored as a third-party package. That problem (issue 1231_) is now fixed.

    • Packages named as "source packages" (with source, or source_pkgs, or pytest-cov's --cov) might have been only partially measured. Their top-level statements could be marked as unexecuted, because they were imported by coverage.py before measurement began (issue 1232_). This is now fixed, but the package will be imported twice, once by coverage.py, then again by your test suite. This could cause problems if importing the package has side effects.

    • The :meth:.CoverageData.contexts_by_lineno method was documented to return a dict, but was returning a defaultdict. Now it returns a plain dict. It also no longer returns negative numbered keys.

    .. _issue 1231: nedbat/coveragepy#1231 .. _issue 1232: nedbat/coveragepy#1232

    .. _changes_601:

    Commits
    • a3921d2 build: prep for 6.0.2
    • 19bb1f8 docs: sample HTML from 6.0.2
    • 2603597 fix: source modules need to be re-imported. #1232
    • fdaa822 test: add more tests of run_python_file
    • cedd319 build: clean up the Makefile a bit
    • d3f46d2 test: add a test of hash-based pyc files
    • bcff84f refactor: remove qualname code that was only for Python 2
    • 9b54389 fix: make third-party detection work with namespace packages. #1231
    • 27db7b4 style: the name of the matchers don't need quotes in the reprs
    • a05710e refactor: remove some left over test prints
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 5
  • 🧹 chore: Bump python-dotenv from 0.19.0 to 0.19.1

    🧹 chore: Bump python-dotenv from 0.19.0 to 0.19.1

    Bumps python-dotenv from 0.19.0 to 0.19.1.

    Release notes

    Sourced from python-dotenv's releases.

    Version 0.19.1

    What's Changed

    New Contributors

    Full Changelog: https://github.com/theskumar/python-dotenv/compare/v0.19.0...v0.19.1

    Changelog

    Sourced from python-dotenv's changelog.

    [0.19.1] - 2021-08-09

    Added

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 5
  • 🧹 chore: Bump dropbox from 11.11.0 to 11.12.0

    🧹 chore: Bump dropbox from 11.11.0 to 11.12.0

    Bumps dropbox from 11.11.0 to 11.12.0.

    Release notes

    Sourced from dropbox's releases.

    v11.12.0

    Release Notes:

    • Automated Spec Update (#366)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 5
  • Bump werkzeug from 0.15.6 to 0.16.0 in /backend

    Bump werkzeug from 0.15.6 to 0.16.0 in /backend

    Bumps werkzeug from 0.15.6 to 0.16.0.

    Release notes

    Sourced from werkzeug's releases.

    0.16.0

    Most of the top-level attributes in the werkzeug module are now deprecated, and will be removed in 1.0.0.

    For example, instead of import werkzeug; werkzeug.url_quote, do from werkzeug.urls import url_quote. A deprecation warning will show the correct import to use. werkzeug.exceptions and werkzeug.routing should also be imported instead of accessed, but for technical reasons can’t show a warning.

    • Blog: https://palletsprojects.com/blog/werkzeug-0-16-0-released
    • Changelog: https://werkzeug.palletsprojects.com/en/0.16.x/changes/#version-0-16-0
    Changelog

    Sourced from werkzeug's changelog.

    Version 0.16.0

    Released 2019-09-19

    • Deprecate most top-level attributes provided by the werkzeug module in favor of direct imports. The deprecated imports will be removed in version 1.0.

      For example, instead of import werkzeug; werkzeug.url_quote, do from werkzeug.urls import url_quote. A deprecation warning will show the correct import to use. werkzeug.exceptions and werkzeug.routing should also be imported instead of accessed, but for technical reasons can't show a warning.

      :issue:2, :pr:1640

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 5
  • 🧹 chore: Bump sentry-sdk from 1.5.0 to 1.5.1

    🧹 chore: Bump sentry-sdk from 1.5.0 to 1.5.1

    Bumps sentry-sdk from 1.5.0 to 1.5.1.

    Release notes

    Sourced from sentry-sdk's releases.

    1.5.1

    • Fix django legacy url resolver regex substitution due to upstream CVE-2021-44420 fix #1272
    • Record lost sample_rate events only if tracing is enabled #1268
    • Fix gevent version parsing for non-numeric parts #1243
    • Record span and breadcrumb when Django opens db connection #1250
    Changelog

    Sourced from sentry-sdk's changelog.

    1.5.1

    • Fix django legacy url resolver regex substitution due to upstream CVE-2021-44420 fix #1272
    • Record lost sample_rate events only if tracing is enabled #1268
    • Fix gevent version parsing for non-numeric parts #1243
    • Record span and breadcrumb when Django opens db connection #1250
    Commits
    • f9ce7d7 release: 1.5.1
    • 519033d meta: Changelog for 1.5.1 (#1279)
    • d2f1d61 fix(tests): Fix tox django-3.2 pin
    • d09221d fix(client-reports): Record lost sample_rate events only if tracing is enab...
    • 3a7943b fix(django): Fix django legacy url resolver regex substitution (#1272)
    • ec482d2 CHANGELOG: update requirements example (#1262)
    • 9c72c22 Parse gevent version supporting non-numeric parts. (#1243)
    • df542a2 record span and breadcrumb when Django opens db connection (#1250)
    • 5ca8466 Merge branch 'release/1.5.0'
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • 🧹 chore: Bump google-api-python-client from 2.9.0 to 2.10.0

    🧹 chore: Bump google-api-python-client from 2.9.0 to 2.10.0

    Bumps google-api-python-client from 2.9.0 to 2.10.0.

    Release notes

    Sourced from google-api-python-client's releases.

    v2.10.0

    Features

    Bug Fixes

    Changelog

    Sourced from google-api-python-client's changelog.

    2.10.0 (2021-06-22)

    Features

    Bug Fixes

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • 🧹 chore: Bump google-auth from 1.31.0 to 1.32.0

    🧹 chore: Bump google-auth from 1.31.0 to 1.32.0

    Bumps google-auth from 1.31.0 to 1.32.0.

    Release notes

    Sourced from google-auth's releases.

    v1.32.0

    Features

    Changelog

    Sourced from google-auth's changelog.

    1.32.0 (2021-06-16)

    Features

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • 🧹 chore: Bump werkzeug from 1.0.1 to 2.0.1

    🧹 chore: Bump werkzeug from 1.0.1 to 2.0.1

    Bumps werkzeug from 1.0.1 to 2.0.1.

    Release notes

    Sourced from werkzeug's releases.

    2.0.1

    2.0.0

    New major versions of all the core Pallets libraries, including Werkzeug 2.0, have been released! :tada:

    This represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.

    2.0.0rc5

    2.0.0rc4

    2.0.0 Release Candidate 3

    Use the --pre flag to install this pre-release:

    pip install --pre Werkzeug==2.0.0rc3
    

    2.0.0 Release Candidate 2

    Use the --pre flag to install this pre-release:

    pip install --pre Werkzeug==2.0.0rc2
    

    2.0.0 Release Candidate 1

    Use the --pre flag to install this pre-release:

    pip install --pre Werkzeug==2.0.0rc1
    
    Changelog

    Sourced from werkzeug's changelog.

    Version 2.0.1

    Unreleased

    • Fix type annotation for send_file max_age callable. Don't pass pathlib.Path to max_age. :issue:2119
    • Mark top-level names as exported so type checking understands imports in user projects. :issue:2122
    • Fix some types that weren't available in Python 3.6.0. :issue:2123
    • cached_property is generic over its return type, properties decorated with it report the correct type. :issue:2113

    Version 2.0.0

    Released 2021-05-11

    • Drop support for Python 2 and 3.5. :pr:1693
    • Deprecate :func:utils.format_string, use :class:string.Template instead. :issue:1756
    • Deprecate :func:utils.bind_arguments and :func:utils.validate_arguments, use :meth:Signature.bind and :func:inspect.signature instead. :issue:1757
    • Deprecate :class:utils.HTMLBuilder. :issue:1761
    • Deprecate :func:utils.escape and :func:utils.unescape, use MarkupSafe instead. :issue:1758
    • Deprecate the undocumented python -m werkzeug.serving CLI. :issue:1834
    • Deprecate the environ["werkzeug.server.shutdown"] function that is available when running the development server. :issue:1752
    • Deprecate the useragents module and the built-in user agent parser. Use a dedicated parser library instead by subclassing user_agent.UserAgent and setting Request.user_agent_class. :issue:2078
    • Remove the unused, internal posixemulation module. :issue:1759
    • All datetime values are timezone-aware with tzinfo=timezone.utc. This applies to anything using http.parse_date: Request.date, .if_modified_since, .if_unmodified_since; Response.date, .expires, .last_modified, .retry_after; parse_if_range_header, and IfRange.date. When comparing values, the other values must also be aware, or these values must be made naive. When passing parameters or setting attributes, naive values are still assumed to be in UTC. :pr:2040
    • Merge all request and response wrapper mixin code into single Request and Response classes. Using the mixin classes is no longer necessary and will show a deprecation warning. Checking isinstance or issubclass against BaseRequest and

    ... (truncated)

    Commits
    • 73ed5ef Merge pull request #2135 from pallets/release-2.0.1
    • c09fe3f release version 2.0.1
    • f0bc6b2 Merge pull request #2134 from pallets/typeshed
    • e6305ec Merge pull request #2133 from pallets/http-description
    • 67ef741 convert HTTPException.description to string
    • ca830ca use _typeshed.wsgi instead of wsgiref.types
    • c2fd0f1 update 2128 changelog
    • 1b8907a Merge pull request #2129 from bayesimpact/pascal-type-get
    • 625aaba Enhance type of headers.get method.
    • 1104012 Merge pull request #2126 from pgjones/mpfix
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • 🧹 chore: Bump flask from 1.1.2 to 1.1.4

    🧹 chore: Bump flask from 1.1.2 to 1.1.4

    Bumps flask from 1.1.2 to 1.1.4.

    Changelog

    Sourced from flask's changelog.

    Version 1.1.4

    Released 2021-05-13

    • Update static_folder to use _compat.fspath instead of os.fspath to continue supporting Python < 3.6 :issue:4050

    Version 1.1.3

    Released 2021-05-13

    • Set maximum versions of Werkzeug, Jinja, Click, and ItsDangerous. :issue:4043
    • Re-add support for passing a pathlib.Path for static_folder. :pr:3579
    Commits
    • 1ca199f Merge pull request #4051 from pallets/release-1.1.4
    • 64a5d7a release version 1.1.4
    • 5f8d3ea Merge pull request #4049 from brettlangdon/fix.os.fspath
    • 3ace642 Use compat fspath instead of os.fspath
    • c04b0de Merge pull request #4048 from pallets/release-1.1.3
    • 661bbcd release version 1.1.3
    • ae647b5 Merge pull request #4047 from pallets/maximum-versions
    • 6d8b4ce set maximum versions of pallets dependencies
    • 1672c5f Merge pull request #3939 from kangetsu121/fix_link_and_typo
    • 6eeaa2e fix a broken link
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • 🗄 chore: Bump rope from 1.4.0 to 1.6.0

    🗄 chore: Bump rope from 1.4.0 to 1.6.0

    Bumps rope from 1.4.0 to 1.6.0.

    Changelog

    Sourced from rope's changelog.

    Release 1.6.0

    New features & Enhancements

    • #559, #560 Improve handling of whitespace in import and from-import statements (@​lieryan)
    • #566, #567, #597 Fix variables in kwonlyargs and posonlyargs not being correctly passed to extracted methods (@​lieryan)

    Unit Test

    • #589, #596 Fix issue with sample_project() creating directories where it shouldn't when running tests (@​lieryan)
    • #547 Add config file for linters
    • #593 Remove only_for decorator for all python versions less than 3.7 (@​edreamleo)

    Tech Debt

    Release 1.5.1

    • #531 Add alternative way to retrieve version number from pyproject.toml

    Release 1.5.0

    Date: 2022-11-23

    Commits
    • 85301a1 Bump version
    • 25e4736 Update CHANGELOG.md
    • 950f18a Missed fix from #546
    • ad886ca Create README.md
    • 7fc05ef Merge pull request #597 from python-rope/lieryan-posonlyargs-kwonlyargs-scope
    • c1b809c Mark test_extract_function_with_posonlyargs() for Python 3.8 and higher
    • d3bfca1 Remove unnecessary if isinstance(node, ast.arg) check
    • 5819fd2 Fix Python 3.7 doesn't have posonlyargs
    • 5f24a11 Simplify _get_argnames()
    • f1393db Update CHANGELOG.md
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 2
  • 🗄 chore: Bump flask-migrate from 3.1.0 to 4.0.0

    🗄 chore: Bump flask-migrate from 3.1.0 to 4.0.0

    Bumps flask-migrate from 3.1.0 to 4.0.0.

    Changelog

    Sourced from flask-migrate's changelog.

    Flask-Migrate Change Log

    Release 4.0.0 - 2022-11-13

    • Updates for Flask-SQLAlchemy 3.x compatiblity (commit)
    • Enable type comparison and batch mode by default (commit)
    • Option to rename "db" command group to a custom name (commit)
    • Better handling of MetaData instances in templates (commit)
    • Set options correctly when revision --autogenerate is used #463 (commit) (thanks Frazer McLean!)
    • Documentation section on configuring Alembic (commit)
    • Upgrade build to pypy-3.9 (commit)
    • Add Python 3.10 to build (commit)
    • Add Python 3.11 to build (commit)
    • Specify license in project metadata #489 (commit) (thanks Frazer McLean!)
    • Remove tests from pypi package (commit)

    Release 3.1.0 - 2021-08-01

    • Added list-templates command and support for custom templates (commit)
    • Alembic templates for aioflask (commit)
    • Improved project structure (commit)

    Release 3.0.1 - 2021-05-31

    • Add support for Alchemical in addition to Flask-SQLAlchemy (commit)
    • Remove Flask-Script references from the documentation (commit)

    Release 3.0.0 - 2021-05-15

    • Remove support for Flask-Script #403 (commit)
    • Use unittest testrunner #397 (commit) (thanks Jürgen Gmach!)
    • Remove dependency on six package #395 (commit) (thanks Jürgen Gmach!)
    • Added sphinx build files to .gitignore file #394 (commit) (thanks Jürgen Gmach!)
    • Fix Sphinx warning #393 (commit) (thanks Jürgen Gmach!)

    Release 2.7.0 - 2021-02-21

    • Reuse engine from Flask-SQLAlchemy #343 (commit)
    • Update logging configuration to include Flask-Migrate's logger (commit)

    Release 2.6.0 - 2021-01-19

    • Removed deprecated --head-only option #380 (commit)
    • Initialize logger with a name #374 (commit) (thanks maquino1985!)
    • Move import to the top in env.py file to avoid linter warnings #349 (commit) (thanks James Addison!)
    • Add a note to the documentation regarding logging #330 (commit) (thanks Oliver Evans!)
    • Move builds to GitHub actions (commit)

    Release 2.5.3 - 2020-03-14

    ... (truncated)

    Commits
    • a19dbd1 Release 4.0.0
    • 370b915 Add Python 3.11 to build
    • b9c9d35 Option to rename "db" command group
    • 2852214 Documentation section on configuring Alembic
    • a3085b3 Enable type comparison and batch mode by default
    • 095b0ec Specify license in project metadata (#489)
    • 5175294 Updates for Flask-SQLAlchemy 3.x
    • de822d8 github issue configuration #nolog
    • dfaeeff Upgrade build to pypy-3.9
    • f7f15e2 Set opts correctly when revision --autogenerate is used (#463)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Detect missing environment variable

    Detect missing environment variable

    • Critical
      • SERVER_NAME
      • SECRET_KEY
      • POSTGRES_USER
      • POSTGRES_PASSWORD
      • POSTGRES_DB
      • DATABASE_URL
      • BROKER_URL
      • YOUTUBE_API_DEVELOPER_KEY: For accessing basic YouTube channel metadata
    • Optional
      • SENTRY_DSN
      • YOUTUBE_API_CLIENT_SECRET_FILE
      • PUSHOVER_TOKEN
      • LINENOTIFY_CLIENT_ID + LINENOTIFY_CLIENT_SECRET
      • DROPBOX_APP_KEY + DROPBOX_APP_SECRET
    enhancement 
    opened by tomy0000000 0
  • Music channel special handling

    Music channel special handling

    Example: https://www.youtube.com/channel/UCsRM0YB_dabtEPGPTKo-gcw https://www.youtube.com/@adele

    Potential solution: https://stackoverflow.com/a/26982486/10325430

    feature 
    opened by tomy0000000 0
Releases(0.15.1)
  • 0.15.1(Jan 1, 2023)

    🐞 Bug fixes

    • Suppress SAWarnings

    ⚙️ Internal

    • Add Makefile to trigger dev tasks
    • Change pre-commit ci's base branch to develop
    • Suppress docker deployment progress bars
    Source code(tar.gz)
    Source code(zip)
  • 0.15.0(Dec 19, 2022)

    🌟 Features

    • Global action (Action's scope is now optional)

    🪜 Other Notable Changes

    • Ajax requests now validate before sending

    🐞 Bug fixes

    • Tags with CJK characters overflow is fixed

    ⚙️ Internal

    • Update to Python 3.9.15
    • Improve logging and sentry integration
    • Enable handler in debug mode
    • pre-commit update
    • dependencies update
    Source code(tar.gz)
    Source code(zip)
  • 0.14.0(Dec 2, 2022)

    🌟 Features

    • New tag listing page
      • with manual sorting
      • and Untagged channel listing
    • Account can now be deleted

    🐞 Bug fixes

    • Line Notify is now working again
    • Dropbox revokes hook

    ⚙️ Internal

    • Deployment now automatically pulls docker-compose.yml changes
    Source code(tar.gz)
    Source code(zip)
  • 0.13.1(Nov 20, 2022)

    🧨 Breaking Changes

    • docker-compose.yml is changed
    • instance/logging.cfg is dropped

    🐞 Bug fixes

    • Fix the broken subscription import page
    • Fix the broken admin subscribe API

    ⚙️ Internal

    • Use Loguru as the default logger now
    • Callback endpoint is separated for rewrote
    • buttonAPI jQuery method is wrapped with flask macro in backend
    • Drop some unused stylesheets
    • Bump lots of python modules
    • Drop FLASK_ENV in favor of custom CONFIG env
    Source code(tar.gz)
    Source code(zip)
  • 0.13.0(Nov 1, 2022)

    🌟 New Features

    • The tag videos page

    🧨 Breaking Changes

    • The Mark All as Checked buttons on the video page now only mark visible videos as checked

    🪜 Other Notable Changes

    • The video table now loads content dynamically

    🐞 Bug fixes

    • Confirm modal malfunction
    • PreconditionFailed error in RabbitMQ

    ⚙️ Internal

    • Adopt new flask routing methods
    • Drop debug routes
    • Rewrite flask components with macro
    • Move unit tests out of the source code
    • Tag-related routes are moved to the new blueprint
    • Lock Python version to 3.9.6
    • pre-commit update: mirrors-prettier from v2.7.1 to v3.0.0-alpha.3
    • pre-commit update: black from 22.6.0 to 22.10.0
    Source code(tar.gz)
    Source code(zip)
  • 0.12.0(Aug 18, 2022)

    🌟 Features

    • Video page now render with datatable include Channel column
    • Improved admin channel page
    • Unified error handler
    • Basic user setting features
      • Change password
      • Set/unset Pushover Key

    🧨 Breaking Changes

    • Drop debug admin pages

    🐞 Bug fixes

    • Action page path conflict

    ⚙️ Internal

    • Bump frontend dependencies
      • Bootstrap: 5.2.0
      • datatables: 1.12.1
    • Drop Flask-Moment, pyRFC3339
    • Add preload meta tags
    • pre-commit: github.com/pycqa/flake8: 4.0.1 → 5.0.4
    Source code(tar.gz)
    Source code(zip)
Owner
Tomy Hsieh
RA @NCHU-NLP-Lab / SWE Intern @intel
Tomy Hsieh
An automated, headless YouTube Uploader

An automated, headless YouTube Uploader Authors: Christian C., Moritz M., Luca S. Related Projects: YouTube Watcher, Twitch Compilation Creator, Neura

127 Dec 23, 2022
Query Amalgamator over StackOverflow and YouTube

QASY Query Amalgamator over StackOverflow and YouTube Decription A software you can use to save your valuable time of googling the errors you encounte

1 Nov 07, 2021
A python script to download twitter space, only works on running spaces (for now).

A python script to download twitter space, only works on running spaces (for now).

279 Jan 02, 2023
Music bot for playing music on telegram voice chat group.

Somali X Music 🎵 Music bot for playing music on telegram voice chat group. Requirements FFmpeg NodeJS nodesource.com Python 3.8+ or Higher PyTgCalls

Abdisamad Omar Mohamed 4 Dec 01, 2021
Step by Step Guide To Install Discord Py Master Branch on Replit

Guide to Install Discord Py Master Branch on Replit Step 1 Create an empty repl on replit Step 2 Add this Basic Code to the file main.py so as to chec

Pranav Saxena 7 Nov 18, 2022
Набор утилит для Discord с использованием языка программирования Python.

Discord Tools v0.1 Functions: WebHook spamer Spotify account generator (What?) QR Code Token stealer Token generator Discord nitro gen/check Discor to

Максим Скризов 3 Aug 23, 2022
S3-cleaner - A Python script attempts to delete the all objects/delete markers/versions from specific S3 bucket

Remove All Objects From S3 Bucket This Python script attempts to delete the all

9 Jan 27, 2022
Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live strams, YouTube videos and telegram media.

Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live strams, YouTube videos and telegram media.

SUBIN 449 Dec 27, 2022
A component of BuzzUtilityBot that allows for inter-server communication

A component of BuzzUtilityBot that allows for inter-server communication! Separated due to privacy and ease of inspection concerns

OHaiiBuzzle 2 Oct 11, 2022
This is a translator that i made by myself in python with the 'googletrans' library

Translator-Python This is a translator that i made by myself in python with the 'googletrans' library This application completely made in python allow

Thadeuks 2 Jun 17, 2022
A python script for hitting the kik API to enumerate people based on a username/userlist

kick3d Recon script for enumerating users off of the Kik API. This script has the ability to check single usernames or run through a userlist of usern

Sakura Samurai 19 Oct 04, 2021
📷 Instagram Bot - Tool for automated Instagram interactions

InstaPy Tooling that automates your social media interactions to “farm” Likes, Comments, and Followers on Instagram Implemented in Python using the Se

Tim Großmann 13.5k Dec 01, 2021
Código que Utiliza Programação Dinâmica para resolver o problema da Moeda

Programação Dinâmica: Modelo baseado em recursão Utiliza a técnica de Memorização Não pode ser aplicada quando existe dependência entre as respostas G

Hemili Beatriz 1 Jan 08, 2022
🚀 An asynchronous python API wrapper meant to replace discord.py - Snappy discord api wrapper written with aiohttp & websockets

Pincer An asynchronous python API wrapper meant to replace discord.py ❗ The package is currently within the planning phase 📌 Links |Join the discord

Pincer 125 Dec 26, 2022
LoL 台版10周年活動自動輸入邀請碼

LoLTW_10Year_88Event LoLTW 8.8 周年慶 邀請碼自動輸入 設定 在 LoLTW_10Year_88Evnet.exe 的位置建立一個檔案 .env,內容如下 Bahamut_Discussion = https://forum.gamer.com.tw/C.php?bsn

古丁丁 5 Dec 13, 2021
Telegram bot that let's you flip a coin in a dialog

coin_flip Telegram bot that let's you flip a coin in a dialog Report issue · Request feature About Software development tool that lets you finally dec

Ivan Akostelov 2 Dec 12, 2021
PYthon Warframe Market API(pywmapi)

pywmapi PYthon Warframe Market API(pywmapi) API for warframe market, written in Python. For now, the implemented function is listed below: auth sign i

AyajiLin 7 Dec 11, 2022
A Telegram Bot That Provides Permanent Download Links For Sent Files.

FileStreamBot A Telegram bot to all media and documents files to web link . Report a Bug | Request Feature Demo Bot: 🍁 About This Bot : This bot will

Flux Inc. 1 Nov 02, 2021
Simple script to ban bots at Twitch chats using a text file as a source.

AUTOBAN 🇺🇸 English version Simple script to ban bots at Twitch chats using a text file as a source. How to use Windows Go to releases for further in

And Paiva 5 Feb 06, 2022
Fetch fund data from avanza.se using Python and some web scraping with bs4

Py(A)vanza Fetch fund data from avanza.se using Python and some web scraping with bs4. The default way is to display the data in the terminal, apply -

dunderrrrrr 1 Jan 27, 2022