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
Python On WhatsApp - Run your python codes on whatsapp along with talking to a chatbot

Python On WhatsApp Run your python codes on whatsapp along with talking to a chatbot This is a small python project to run python on whatsapp. and i c

Prajjwal Pathak 32 Dec 30, 2022
Discord bot ( discord.py ), uses pandas library from python for data-management.

Discord_bot A Best and the most easy-to-use Discord bot !! Some simple basic auto moderations, Chat functions. It includes a game similar to Casino, g

Jaitej 4 Aug 30, 2022
OpenZeppelin Contracts written in Cairo for StarkNet, a decentralized ZK Rollup

OpenZeppelin Cairo Contracts A library for secure smart contract development written in Cairo for StarkNet, a decentralized ZK Rollup. ⚠️ WARNING! ⚠️

OpenZeppelin 592 Jan 04, 2023
A pdisk uploader bot written in Python

Pdisk Uploader Bot 🔥 Upload on Pdisk by Url, File and also by direct forward post from other channel... Features Post to Post Conversion Url Upload D

Paritosh Kumar 33 Oct 21, 2022
Termux Pkg

PKG Install Termux All Basic Pkg. Installation : pkg update && pkg upgrade && pkg install python && pkg install python2 && pkg install git && git clon

ɴᴏʙɪᴛᴀシ︎ 1 Oct 28, 2021
A Discord BOT that uses Google Sheets for storing the roles and permissions of a discord server.

Discord Role Manager Bot Role Manager is a discord BOT that utilizes Google Sheets for the organization of a server's hierarchy and permissions. Detai

Dion Rigatos 17 Oct 13, 2022
Create a roles overview page for all Ansible roles/playbooks in Gitlab

ansible-create-roles-overview Overview The script ./create_roles_overview.py queries a Gitlab API for Ansible roles and playbooks. It will iterate ove

2 Oct 11, 2021
doi, pubmed, arxiv.org的查询服务API接口,部署于vercel云函数

article-search-service doi, pubmed, arxiv.org的查询服务API接口,部署于vercel云函数 云函数 vercel,国内可能被qiang了。 DOI接口 POST https://article-search-service.vercel.app/api/

HyokaChen 2 Oct 10, 2021
This project uses Youtube data API's to do youtube tags analysis based on viewCount, comments etc.

Youtube video details analyser Steps to run this project Please set the AuthKey which you can fetch from google developer console and paste it in the

1 Nov 21, 2021
✨ A simple project to automate some stuffs in Habbo with G-Earth ✨

⚡️ Habbo G-Earth extensions ⚡️ ✨ A simple project to automate some stuffs in Habbo with G-Earth ✨ About | Getting Started | Authors ➤ Getting Started

Lucca Pessoa 1 Jan 09, 2022
Written in Python, freezed into stand-alone executable with PyInstaller. This app will make sure you stay in New World without getting kicked for inactivity.

New World - AFK Written in Python, freezed into stand-alone executable with PyInstaller. This app will make sure you stay in New World without getting

Rodney 5 Oct 31, 2021
ro.py is a modern, asynchronous Python 3 wrapper for the Roblox API.

GitHub | Discord | PyPI | Documentation | Examples | License Overview Welcome to ro.py! ro.py is an asynchronous, object-oriented wrapper for the Robl

ro.py 81 Dec 26, 2022
An Amazon Product Scraper built using scapy module of python

Amazon Product Scraper This is an Amazon Product Scraper built using scapy module of python Features it scrape various things Product Title Product Im

Sudhanshu Jha 1 Dec 13, 2021
ZenML 🙏: MLOps framework to create reproducible ML pipelines for production machine learning.

ZenML is an extensible, open-source MLOps framework to create production-ready machine learning pipelines. It has a simple, flexible syntax, is cloud and tool agnostic, and has interfaces/abstraction

ZenML 2.6k Dec 27, 2022
Change the name and pfp of ur accounts, uses tokens.txt for ur tokens.

Change the name and pfp of ur accounts, uses tokens.txt for ur tokens. Also scrapes the pfps+names from a server chosen by you. For hq tokens go to discord.gg/tokenshop or t.me/praisetelegram

cChimney 36 Dec 09, 2022
An EmbedBuilder in Python for discord.py embeds. Pip Module.

Discord.py-MaxEmbeds An EmbedBuilder for Discord bots in Python. You need discord.py to use this module. Installation Step 1 First you have to install

Max Tischberger 6 Jan 13, 2022
Light weight Scripts and Apps for checking availability of Covid Vaccines in India. Notifies when vaccine becomes avialable in your area.

vaccine-checker Light weight Scripts and Apps for checking availability of Covid Vaccines in India. Notifies when vaccine becomes avialable in your ar

Abishek V Ashok 8 Jun 16, 2021
8300-account-nuker - A simple accoutn nuker or can use it full closing dm and leaving server

8300 ACCOUNT NUKER VERISON: its just simple accoutn nuker or can use it full clo

†† 5 Jan 26, 2022
A simple Python API wrapper for Cloudflare Stream's API.

python-cloudflare-stream A basic Python API wrapper for working with Cloudflare Stream. Arbington.com started off using Cloudflare Stream. We used the

Arbington 3 Sep 08, 2022
To send an Instagram message using Python

To send an Instagram message using Python, you must have an Instagram account and install the Instabot library in your Python virtual environment.

Coding Taggers 1 Dec 18, 2021