diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e8fb3b5..5587747 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,6 +11,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + with: + submodules: recursive + - name: Set up Python 3.7 uses: actions/setup-python@v1 with: diff --git a/.gitignore b/.gitignore index ba349fd..0d5ceaa 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ _build .*cache dist + +# generated from md by pandoc +src/changelog/*.rst diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..d4b7a1b --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "media"] + path = media + url = https://github.com/ActivityWatch/media.git diff --git a/Makefile b/Makefile index f3bec71..cb15391 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,19 @@ # Makefile for Sphinx documentation -# + +md_changelogs := $(wildcard src/changelog/*.md) +md_changelogs_output = $(patsubst %.md, %.rst, $(md_changelogs)) + +build: $(md_changelogs_output) + make html + +src/changelog/%.rst: src/changelog/%.md + pandoc $^ -f gfm -o $@ + +_build/html: + make build + +open: + xdg-open _build/html/index.html # You can set these variables from the command line. SPHINXOPTS = diff --git a/media b/media new file mode 160000 index 0000000..7eeb8d6 --- /dev/null +++ b/media @@ -0,0 +1 @@ +Subproject commit 7eeb8d665b1aeb2825457c7e178e14a99d18283c diff --git a/poetry.lock b/poetry.lock index 171f76e..b9225d1 100644 --- a/poetry.lock +++ b/poetry.lock @@ -49,24 +49,24 @@ tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (> [[package]] name = "aw-client" -version = "0.3.1" +version = "0.5.0" description = "Client library for ActivityWatch" category = "main" optional = false -python-versions = "^3.6" +python-versions = "^3.7" develop = false [package.dependencies] -aw-core = "branch master" +aw-core = "^0.5" click = "^7.1.1" -persist-queue = "^0.5.0" +persist-queue = "^0.6.0" requests = "^2.22.0" [package.source] type = "git" url = "https://github.com/ActivityWatch/aw-client.git" reference = "master" -resolved_reference = "bbcd1d6f5ddeddbdee62cf92471ff928499ab219" +resolved_reference = "2b18d1a5ac47321d67dba67a3ee16944d244aad1" [[package]] name = "aw-core" @@ -74,7 +74,7 @@ version = "0.5.0" description = "Core library for ActivityWatch" category = "main" optional = false -python-versions = "^3.6" +python-versions = "^3.7" develop = false [package.dependencies] @@ -94,7 +94,7 @@ mongo = ["pymongo (>=3.10.0,<4.0.0)"] type = "git" url = "https://github.com/ActivityWatch/aw-core.git" reference = "master" -resolved_reference = "c7ba6d2b7ec289aaf26ce9282cde26a386a587e5" +resolved_reference = "b11fbe08a0405dec01380493f7b3261163cc6878" [[package]] name = "aw-server" @@ -117,11 +117,11 @@ flask-restx = "^0.2.0" type = "git" url = "https://github.com/ActivityWatch/aw-server.git" reference = "master" -resolved_reference = "f0d650035c0524222da62ad29e154740d89104d0" +resolved_reference = "4e07cd1a2ae3c5138781d4615d6afcf2bcf8f9fb" [[package]] name = "babel" -version = "2.9.0" +version = "2.9.1" description = "Internationalization utilities" category = "main" optional = false @@ -130,6 +130,21 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [package.dependencies] pytz = ">=2015.7" +[[package]] +name = "beautifulsoup4" +version = "4.9.3" +description = "Screen-scraping library" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +soupsieve = {version = ">1.2", markers = "python_version >= \"3.0\""} + +[package.extras] +html5lib = ["html5lib"] +lxml = ["lxml"] + [[package]] name = "certifi" version = "2020.12.5" @@ -162,17 +177,6 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -[[package]] -name = "commonmark" -version = "0.9.1" -description = "Python parser for the CommonMark Markdown spec" -category = "main" -optional = false -python-versions = "*" - -[package.extras] -test = ["flake8 (==3.7.8)", "hypothesis (==3.55.3)"] - [[package]] name = "docutils" version = "0.16" @@ -325,6 +329,38 @@ python-versions = "*" six = "*" tornado = {version = "*", markers = "python_version > \"2.7\""} +[[package]] +name = "m2r2" +version = "0.2.7" +description = "Markdown and reStructuredText in a single file." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +docutils = "*" +mistune = "*" + +[[package]] +name = "markdown-it-py" +version = "1.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" +category = "main" +optional = false +python-versions = "~=3.6" + +[package.dependencies] +attrs = ">=19,<21" +typing-extensions = {version = ">=3.7.4", markers = "python_version < \"3.8\""} + +[package.extras] +code_style = ["pre-commit (==2.6)"] +compare = ["commonmark (>=0.9.1,<0.10.0)", "markdown (>=3.2.2,<3.3.0)", "mistletoe-ebp (>=0.10.0,<0.11.0)", "mistune (>=0.8.4,<0.9.0)", "panflute (>=1.12,<2.0)"] +linkify = ["linkify-it-py (>=1.0,<2.0)"] +plugins = ["mdit-py-plugins"] +rtd = ["myst-nb (==0.13.0a1)", "pyyaml", "sphinx (>=2,<4)", "sphinx-copybutton", "sphinx-panels (>=0.4.0,<0.5.0)", "sphinx-book-theme"] +testing = ["coverage", "psutil", "pytest (>=3.6,<4)", "pytest-benchmark (>=3.2,<4.0)", "pytest-cov", "pytest-regressions"] + [[package]] name = "markupsafe" version = "1.1.1" @@ -333,6 +369,52 @@ category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" +[[package]] +name = "mdit-py-plugins" +version = "0.2.8" +description = "Collection of plugins for markdown-it-py" +category = "main" +optional = false +python-versions = "~=3.6" + +[package.dependencies] +markdown-it-py = ">=1.0,<2.0" + +[package.extras] +code_style = ["pre-commit (==2.6)"] +rtd = ["myst-parser (==0.14.0a3)", "sphinx-book-theme (>=0.1.0,<0.2.0)"] +testing = ["coverage", "pytest (>=3.6,<4)", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "mistune" +version = "0.8.4" +description = "The fastest markdown parser in pure Python" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "myst-parser" +version = "0.14.0" +description = "An extended commonmark compliant parser, with bridges to docutils & sphinx." +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +docutils = ">=0.15,<0.18" +jinja2 = "*" +markdown-it-py = ">=1.0.0,<2.0.0" +mdit-py-plugins = ">=0.2.8,<0.3.0" +pyyaml = "*" +sphinx = ">=2.1,<4" + +[package.extras] +code_style = ["pre-commit (>=2.12,<3.0)"] +linkify = ["linkify-it-py (>=1.0,<2.0)"] +rtd = ["ipython", "sphinx-book-theme (>=0.1.0,<0.2.0)", "sphinx-panels (>=0.5.2,<0.6.0)", "sphinxcontrib-bibtex (>=2.1,<3.0)"] +testing = ["beautifulsoup4", "coverage", "docutils (>=0.17.0,<0.18.0)", "pytest (>=3.6,<4)", "pytest-cov", "pytest-regressions"] + [[package]] name = "packaging" version = "20.9" @@ -362,7 +444,7 @@ python-versions = "*" [[package]] name = "persist-queue" -version = "0.5.1" +version = "0.6.0" description = "A thread-safe disk based persistent queue in Python." category = "main" optional = false @@ -379,9 +461,26 @@ category = "main" optional = false python-versions = "*" +[[package]] +name = "pydata-sphinx-theme" +version = "0.6.3" +description = "Bootstrap-based Sphinx theme from the PyData community" +category = "main" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +beautifulsoup4 = "*" +docutils = "<0.17" +sphinx = "*" + +[package.extras] +coverage = ["pytest-cov", "codecov", "sphinx", "numpydoc", "recommonmark", "pandas", "pytest", "pytest-regressions", "beautifulsoup4", "jupyter-sphinx", "plotly", "numpy", "xarray", "docutils (==0.16)"] +test = ["sphinx", "numpydoc", "recommonmark", "pandas", "pytest", "pytest-regressions", "beautifulsoup4", "jupyter-sphinx", "plotly", "numpy", "xarray", "docutils (==0.16)"] + [[package]] name = "pygments" -version = "2.8.1" +version = "2.9.0" description = "Pygments is a syntax highlighting package written in Python." category = "main" optional = false @@ -427,19 +526,6 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" -[[package]] -name = "recommonmark" -version = "0.6.0" -description = "A docutils-compatibility bridge to CommonMark, enabling you to write CommonMark inside of Docutils & Sphinx projects." -category = "main" -optional = false -python-versions = "*" - -[package.dependencies] -commonmark = ">=0.8.1" -docutils = ">=0.11" -sphinx = ">=1.3.1" - [[package]] name = "requests" version = "2.25.1" @@ -460,7 +546,7 @@ socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] [[package]] name = "six" -version = "1.15.0" +version = "1.16.0" description = "Python 2 and 3 compatibility utilities" category = "main" optional = false @@ -474,6 +560,14 @@ category = "main" optional = false python-versions = "*" +[[package]] +name = "soupsieve" +version = "2.2.1" +description = "A modern CSS selector implementation for Beautiful Soup." +category = "main" +optional = false +python-versions = ">=3.6" + [[package]] name = "sphinx" version = "3.5.4" @@ -523,15 +617,26 @@ tornado = ">=3.2" watchdog = ">=0.7.1" [[package]] -name = "sphinx-rtd-theme" -version = "0.4.3" -description = "Read the Docs theme for Sphinx" +name = "sphinx-book-theme" +version = "0.1.0" +description = "Jupyter Book: Create an online book with Jupyter Notebooks" category = "main" optional = false -python-versions = "*" +python-versions = ">=3.6" [package.dependencies] -sphinx = "*" +beautifulsoup4 = ">=4.6.1,<5" +click = "*" +docutils = ">=0.15" +pydata-sphinx-theme = ">=0.6.0,<0.7.0" +pyyaml = "*" +sphinx = ">=2,<4" + +[package.extras] +code_style = ["pre-commit (>=2.7.0,<2.8.0)"] +live-dev = ["sphinx-autobuild", "web-compile (>=0.2.1,<0.3.0)"] +sphinx = ["folium", "numpy", "matplotlib", "ipywidgets", "pandas", "nbclient", "myst-nb (>=0.11.1,<0.12.0)", "sphinx-togglebutton (>=0.2.1)", "sphinx-copybutton", "plotly", "sphinxcontrib-bibtex (>=2.2,<3.0)", "sphinx-thebe", "ablog (>=0.10.13,<0.11.0)", "sphinxext-opengraph"] +testing = ["myst-nb (>=0.11.1,<0.12.0)", "sphinx-thebe", "coverage", "pytest (>=6.0.1,<6.1.0)", "pytest-cov", "pytest-regressions (>=2.0.1,<2.1.0)"] [[package]] name = "sphinx-tabs" @@ -654,7 +759,7 @@ python-versions = ">= 3.5" [[package]] name = "typing-extensions" -version = "3.7.4.3" +version = "3.10.0.0" description = "Backported and Experimental Type Hints for Python 3.5+" category = "main" optional = false @@ -675,7 +780,7 @@ brotli = ["brotlipy (>=0.6.0)"] [[package]] name = "watchdog" -version = "2.0.2" +version = "2.1.0" description = "Filesystem events monitoring" category = "main" optional = false @@ -711,7 +816,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7" -content-hash = "c8fb0e7b13bbbf07c46ee49fd5841bfef14fad8e442911dfbc065e26b63e0090" +content-hash = "521e3bc1d20a43da07638802e7bc7a617d96b169d19425dc3f4f04005984be02" [metadata.files] alabaster = [ @@ -738,8 +843,13 @@ aw-client = [] aw-core = [] aw-server = [] babel = [ - {file = "Babel-2.9.0-py2.py3-none-any.whl", hash = "sha256:9d35c22fcc79893c3ecc85ac4a56cde1ecf3f19c540bba0922308a6c06ca6fa5"}, - {file = "Babel-2.9.0.tar.gz", hash = "sha256:da031ab54472314f210b0adcff1588ee5d1d1d0ba4dbd07b94dba82bde791e05"}, + {file = "Babel-2.9.1-py2.py3-none-any.whl", hash = "sha256:ab49e12b91d937cd11f0b67cb259a57ab4ad2b59ac7a3b41d6c06c0ac5b0def9"}, + {file = "Babel-2.9.1.tar.gz", hash = "sha256:bc0c176f9f6a994582230df350aa6e05ba2ebe4b3ac317eab29d9be5d2768da0"}, +] +beautifulsoup4 = [ + {file = "beautifulsoup4-4.9.3-py2-none-any.whl", hash = "sha256:4c98143716ef1cb40bf7f39a8e3eec8f8b009509e74904ba3a7b315431577e35"}, + {file = "beautifulsoup4-4.9.3-py3-none-any.whl", hash = "sha256:fff47e031e34ec82bf17e00da8f592fe7de69aeea38be00523c04623c04fb666"}, + {file = "beautifulsoup4-4.9.3.tar.gz", hash = "sha256:84729e322ad1d5b4d25f805bfa05b902dd96450f43842c4e99067d5e1369eb25"}, ] certifi = [ {file = "certifi-2020.12.5-py2.py3-none-any.whl", hash = "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830"}, @@ -757,10 +867,6 @@ colorama = [ {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, ] -commonmark = [ - {file = "commonmark-0.9.1-py2.py3-none-any.whl", hash = "sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9"}, - {file = "commonmark-0.9.1.tar.gz", hash = "sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60"}, -] docutils = [ {file = "docutils-0.16-py2.py3-none-any.whl", hash = "sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af"}, {file = "docutils-0.16.tar.gz", hash = "sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"}, @@ -808,6 +914,14 @@ jsonschema = [ livereload = [ {file = "livereload-2.6.3.tar.gz", hash = "sha256:776f2f865e59fde56490a56bcc6773b6917366bce0c267c60ee8aaf1a0959869"}, ] +m2r2 = [ + {file = "m2r2-0.2.7-py3-none-any.whl", hash = "sha256:a1b87b00f4d5163a3616253fca4c045f8351818cd803ba2e24af8897442a0eae"}, + {file = "m2r2-0.2.7.tar.gz", hash = "sha256:fbf72ade9f648d41658f97c5267687431612451f36b65761a138fbc276294df5"}, +] +markdown-it-py = [ + {file = "markdown-it-py-1.0.0.tar.gz", hash = "sha256:d40d537a9bc4cb5fba6d3fa8d769ffac394f1a54d373efdf6675469b6d38f8ec"}, + {file = "markdown_it_py-1.0.0-py3-none-any.whl", hash = "sha256:ac9e0f051ffd2aabecdd83b41b8fb71d7ab24005a3e0e63f192138dd699a6932"}, +] markupsafe = [ {file = "MarkupSafe-1.1.1-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161"}, {file = "MarkupSafe-1.1.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7"}, @@ -862,6 +976,18 @@ markupsafe = [ {file = "MarkupSafe-1.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:b7d644ddb4dbd407d31ffb699f1d140bc35478da613b441c582aeb7c43838dd8"}, {file = "MarkupSafe-1.1.1.tar.gz", hash = "sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"}, ] +mdit-py-plugins = [ + {file = "mdit-py-plugins-0.2.8.tar.gz", hash = "sha256:5991cef645502e80a5388ec4fc20885d2313d4871e8b8e320ca2de14ac0c015f"}, + {file = "mdit_py_plugins-0.2.8-py3-none-any.whl", hash = "sha256:1833bf738e038e35d89cb3a07eb0d227ed647ce7dd357579b65343740c6d249c"}, +] +mistune = [ + {file = "mistune-0.8.4-py2.py3-none-any.whl", hash = "sha256:88a1051873018da288eee8538d476dffe1262495144b33ecb586c4ab266bb8d4"}, + {file = "mistune-0.8.4.tar.gz", hash = "sha256:59a3429db53c50b5c6bcc8a07f8848cb00d7dc8bdb431a4ab41920d201d4756e"}, +] +myst-parser = [ + {file = "myst-parser-0.14.0.tar.gz", hash = "sha256:fc262959a74cdc799d7fa9b30c320c17187485b9a1e8c39e988fc12f3adff63c"}, + {file = "myst_parser-0.14.0-py3-none-any.whl", hash = "sha256:8d7db76e2f33cd1dc1fe0c76af9f09e5cf19ce2c2e85074bc82f272c0f7c08ce"}, +] packaging = [ {file = "packaging-20.9-py2.py3-none-any.whl", hash = "sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a"}, {file = "packaging-20.9.tar.gz", hash = "sha256:5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5"}, @@ -873,15 +999,19 @@ peewee = [ {file = "peewee-3.14.4.tar.gz", hash = "sha256:9e356b327c2eaec6dd42ecea6f4ddded025793dba906a3d065a0452e726c51a2"}, ] persist-queue = [ - {file = "persist-queue-0.5.1.tar.gz", hash = "sha256:27a44e6376bdaff1375f09ba6e14f633192cd2bdc593b948a752d80edea4d68c"}, - {file = "persist_queue-0.5.1-py2.py3-none-any.whl", hash = "sha256:9e2890660305847609bcbfa814ce38229b3629ea98e6fd8fb858bf9533a98d83"}, + {file = "persist-queue-0.6.0.tar.gz", hash = "sha256:e73dd62545d37e519247d96368bfa5c510fde66999a338d6d2d44790dc10f89b"}, + {file = "persist_queue-0.6.0-py2.py3-none-any.whl", hash = "sha256:b7a6a6e642bed23076f03d15d08d87aebad32029f3e702cc10f5b86d6fbd0cb7"}, ] port-for = [ {file = "port-for-0.3.1.tar.gz", hash = "sha256:b16a84bb29c2954db44c29be38b17c659c9c27e33918dec16b90d375cc596f1c"}, ] +pydata-sphinx-theme = [ + {file = "pydata-sphinx-theme-0.6.3.tar.gz", hash = "sha256:32e0580ef985734d652eec2bf25e0995a330a9d4f76deaa353571ce8e180ab14"}, + {file = "pydata_sphinx_theme-0.6.3-py3-none-any.whl", hash = "sha256:f0fee20dc33fa5efa6b9be57368be760d236d8b9c1486b14ad1d17b7e7e0db04"}, +] pygments = [ - {file = "Pygments-2.8.1-py3-none-any.whl", hash = "sha256:534ef71d539ae97d4c3a4cf7d6f110f214b0e687e92f9cb9d2a3b0d3101289c8"}, - {file = "Pygments-2.8.1.tar.gz", hash = "sha256:2656e1a6edcdabf4275f9a3640db59fd5de107d88e8663c5d4e9a0fa62f77f94"}, + {file = "Pygments-2.9.0-py3-none-any.whl", hash = "sha256:d66e804411278594d764fc69ec36ec13d9ae9147193a1740cd34d272ca383b8e"}, + {file = "Pygments-2.9.0.tar.gz", hash = "sha256:a18f47b506a429f6f4b9df81bb02beab9ca21d0a5fee38ed15aef65f0545519f"}, ] pyparsing = [ {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, @@ -928,22 +1058,22 @@ pyyaml = [ {file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"}, {file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"}, ] -recommonmark = [ - {file = "recommonmark-0.6.0-py2.py3-none-any.whl", hash = "sha256:2ec4207a574289355d5b6ae4ae4abb29043346ca12cdd5f07d374dc5987d2852"}, - {file = "recommonmark-0.6.0.tar.gz", hash = "sha256:29cd4faeb6c5268c633634f2d69aef9431e0f4d347f90659fd0aab20e541efeb"}, -] requests = [ {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"}, {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"}, ] six = [ - {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, - {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, ] snowballstemmer = [ {file = "snowballstemmer-2.1.0-py2.py3-none-any.whl", hash = "sha256:b51b447bea85f9968c13b650126a888aabd4cb4463fca868ec596826325dedc2"}, {file = "snowballstemmer-2.1.0.tar.gz", hash = "sha256:e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914"}, ] +soupsieve = [ + {file = "soupsieve-2.2.1-py3-none-any.whl", hash = "sha256:c2c1c2d44f158cdbddab7824a9af8c4f83c76b1e23e049479aa432feb6c4c23b"}, + {file = "soupsieve-2.2.1.tar.gz", hash = "sha256:052774848f448cf19c7e959adf5566904d525f33a3f8b6ba6f6f8f26ec7de0cc"}, +] sphinx = [ {file = "Sphinx-3.5.4-py3-none-any.whl", hash = "sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"}, {file = "Sphinx-3.5.4.tar.gz", hash = "sha256:19010b7b9fa0dc7756a6e105b2aacd3a80f798af3c25c273be64d7beeb482cb1"}, @@ -952,9 +1082,9 @@ sphinx-autobuild = [ {file = "sphinx-autobuild-0.7.1.tar.gz", hash = "sha256:66388f81884666e3821edbe05dd53a0cfb68093873d17320d0610de8db28c74e"}, {file = "sphinx_autobuild-0.7.1-py2-none-any.whl", hash = "sha256:e60aea0789cab02fa32ee63c7acae5ef41c06f1434d9fd0a74250a61f5994692"}, ] -sphinx-rtd-theme = [ - {file = "sphinx_rtd_theme-0.4.3-py2.py3-none-any.whl", hash = "sha256:00cf895504a7895ee433807c62094cf1e95f065843bf3acd17037c3e9a2becd4"}, - {file = "sphinx_rtd_theme-0.4.3.tar.gz", hash = "sha256:728607e34d60456d736cc7991fd236afb828b21b82f956c5ea75f94c8414040a"}, +sphinx-book-theme = [ + {file = "sphinx-book-theme-0.1.0.tar.gz", hash = "sha256:b2db884eb9a843f7864a5660322ac7b0b9cd762f31341dedb4530f1546675bbd"}, + {file = "sphinx_book_theme-0.1.0-py3-none-any.whl", hash = "sha256:182e57262e76c657a8f3082b0922f3617c8b0cb3e4c4079fa6b2ae9b2a5d3ae9"}, ] sphinx-tabs = [ {file = "sphinx-tabs-1.3.0.tar.gz", hash = "sha256:54132c8a57aa19bba6e17fe26eb94ea9df531708ff3f509b119313b32d0d5aff"}, @@ -1038,32 +1168,32 @@ tornado = [ {file = "tornado-6.1.tar.gz", hash = "sha256:33c6e81d7bd55b468d2e793517c909b139960b6c790a60b7991b9b6b76fb9791"}, ] typing-extensions = [ - {file = "typing_extensions-3.7.4.3-py2-none-any.whl", hash = "sha256:dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f"}, - {file = "typing_extensions-3.7.4.3-py3-none-any.whl", hash = "sha256:7cb407020f00f7bfc3cb3e7881628838e69d8f3fcab2f64742a5e76b2f841918"}, - {file = "typing_extensions-3.7.4.3.tar.gz", hash = "sha256:99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c"}, + {file = "typing_extensions-3.10.0.0-py2-none-any.whl", hash = "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497"}, + {file = "typing_extensions-3.10.0.0-py3-none-any.whl", hash = "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"}, + {file = "typing_extensions-3.10.0.0.tar.gz", hash = "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342"}, ] urllib3 = [ {file = "urllib3-1.26.4-py2.py3-none-any.whl", hash = "sha256:2f4da4594db7e1e110a944bb1b551fdf4e6c136ad42e4234131391e21eb5b0df"}, {file = "urllib3-1.26.4.tar.gz", hash = "sha256:e7b021f7241115872f92f43c6508082facffbd1c048e3c6e2bb9c2a157e28937"}, ] watchdog = [ - {file = "watchdog-2.0.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:1f518a6940cde8720b8826a705c164e6b9bd6cf8c00f14269ffac51e017e06ec"}, - {file = "watchdog-2.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:74528772516228f6a015a647027057939ff0b695a0b864cb3037e8e1aabc7ca0"}, - {file = "watchdog-2.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1cd715c4fb803581ded8943f39a51f21c17375d009ca9e3398d6b20638863a70"}, - {file = "watchdog-2.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:41b1a773f364f232b5bc184688e8d60451745d9e0971ac60c648bd47be8f4733"}, - {file = "watchdog-2.0.2-pp36-pypy36_pp73-macosx_10_9_x86_64.whl", hash = "sha256:035f4816daf3c62e03503c267620f3aa8fc7472df85ff3ef1e0c100ea1ed2744"}, - {file = "watchdog-2.0.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e0114e48ee981b38e328eaa0d5a625c7b4fc144b8dc7f7637749d6b5f7fefb0e"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_aarch64.whl", hash = "sha256:d2fcbc15772a82cd139c803a513c45b0fbc72a10a8a34dc2a8b429110b6f1236"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_armv7l.whl", hash = "sha256:adda34bfe6db05485c1dfcd98232bdec385f991fe16358750c2163473eefb985"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_i686.whl", hash = "sha256:a412b1914e27f67b0a10e1ee19b5d035a9f7c115a062bbbd640653d9820ba4c8"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_ppc64.whl", hash = "sha256:89102465764e453609463cf620e744da1b0aa1f9f321b05961e2e7e15b3c9d8b"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:3e933f3567c4521dd1a5d59fd54a522cae90bebcbeb8b74b84a2f33c90f08388"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_s390x.whl", hash = "sha256:19675b8d1f00dabe74a0e66d87980623250d9360a21612e8c27b70a4b214ceeb"}, - {file = "watchdog-2.0.2-py3-none-manylinux2014_x86_64.whl", hash = "sha256:d54e187b76053982180532cb7fd31152201c438b348c456f699929f8a89e786d"}, - {file = "watchdog-2.0.2-py3-none-win32.whl", hash = "sha256:13c9ff58508dce55ba416eb0ef7af5aa5858558f2ec51112f099fd03503b670b"}, - {file = "watchdog-2.0.2-py3-none-win_amd64.whl", hash = "sha256:0f7e9de9ba84af15e9e9fc29c3b13c972daa4d2b11de29aa86b26a26bc877c06"}, - {file = "watchdog-2.0.2-py3-none-win_ia64.whl", hash = "sha256:ac6adbdf32e1d180574f9d0819e80259ae48e68727e80c3d950ed5a023714c3e"}, - {file = "watchdog-2.0.2.tar.gz", hash = "sha256:532fedd993e75554671faa36cd04c580ced3fae084254a779afbbd8aaf00566b"}, + {file = "watchdog-2.1.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:af1d42ac65bf3f851d787e723a950d9c878c4ef0ff3381a2196d36b0c4b6d39c"}, + {file = "watchdog-2.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8a75022cacbd0ad66ab8a9059322a76a43164ea020b373cbc28ddbacf9410b14"}, + {file = "watchdog-2.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:37bf90ef22b666fb0b5c1ea4375c9cbf43f1ff72489a91bf6f0370ba13e09b2a"}, + {file = "watchdog-2.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:66193c811498ff539d0312091bdcbd98cce03b5425b8fa918c80f21a278e8358"}, + {file = "watchdog-2.1.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5472ee2d23eaedf16c4b5088897cd9f50cd502074f508011180466d678cdf62a"}, + {file = "watchdog-2.1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a079aceede99b83a4cf4089f6e2243c864f368b60f4cce7bf46286f3cfcc8947"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:da1ca0845bbc92606b08a08988d8dbcba514a16c209be29d211b13cf0d5be2fd"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:5a62491c035646130c290a4cb773d7de103ac0202ac8305404bdb7db17ab5c3f"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_i686.whl", hash = "sha256:8c8ff287308a2ba5148aa450d742198d838636b65de52edd3eccfa4c86bf8004"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:05544fdd1cdc00b5231fb564f17428c5d502756419008cb8045be5b297eac21c"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:8ab111b71fba4f8f77baa39d42bf923d085f64869396497518c43297fe1ec4e7"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:06ee7b77a8169f9828f8d24fc3d3d99b2216e1d2f7085b5913022a55161da758"}, + {file = "watchdog-2.1.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:c2d37a9df96d8f9ea560c0824f179168d8501f3e614b5e9f2168b38fe6ef3c12"}, + {file = "watchdog-2.1.0-py3-none-win32.whl", hash = "sha256:6c6fa079abddea664f7ecda0a02636ca276f095bd26f474c23b3f968f1e938ec"}, + {file = "watchdog-2.1.0-py3-none-win_amd64.whl", hash = "sha256:80afa2b32aac3abc7fb6ced508fc612997a0c8fb0f497217d54c524ff52e9e3a"}, + {file = "watchdog-2.1.0-py3-none-win_ia64.whl", hash = "sha256:b8fb08629f52d3e0a060b93d711824f2b06fb8e0d09ad453f2a93d0c97d6b1ec"}, + {file = "watchdog-2.1.0.tar.gz", hash = "sha256:55316efab52f659b8b7b59730680bfb27ac003522f24c44f6bcd60c4e3736ccd"}, ] werkzeug = [ {file = "Werkzeug-1.0.1-py2.py3-none-any.whl", hash = "sha256:2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43"}, diff --git a/pyproject.toml b/pyproject.toml index e2bc0e8..79a465a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,14 +8,15 @@ packages = [{ include = "src/" }] [tool.poetry.dependencies] python = "^3.7" -sphinx = "^3.0.3" -sphinx-autobuild = "^0.7.1" -sphinx_rtd_theme = "^0.4.3" -recommonmark = "^0.6.0" aw-core = {git = "https://github.com/ActivityWatch/aw-core.git", rev = "master"} aw-server = {git = "https://github.com/ActivityWatch/aw-server.git", rev = "master"} aw-client = {git = "https://github.com/ActivityWatch/aw-client.git", rev = "master"} +sphinx = "^3.0.3" +sphinx-autobuild = "^0.7.1" +sphinx-book-theme = "^0.1.0" sphinx-tabs = "^1.1.13" +m2r2 = "^0.2.7" +myst-parser = "^0.14.0" [tool.poetry.dev-dependencies] diff --git a/src/_static/css/custom.css b/src/_static/css/custom.css index 1a33610..2cc2758 100644 --- a/src/_static/css/custom.css +++ b/src/_static/css/custom.css @@ -2,6 +2,19 @@ text-decoration: line-through; } +code { + /* inspired by the style in GitHub's markdown renderer */ + font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace; + font-size: 85%; + padding: 0.2em 0.3em; + margin: 0; + /* on GitHub alpha component is 0.05 */ + background-color: rgba(27,31,35,0.07); + border: 1px solid rgba(27,31,25,0.2); + border-radius: 6px; + color: rgb(51, 51, 51); +} + .rst-content .section ul p { margin-bottom: 0px !important; } diff --git a/src/architecture.rst b/src/architecture.rst index cb62a1c..912ceb2 100644 --- a/src/architecture.rst +++ b/src/architecture.rst @@ -32,8 +32,8 @@ User interfaces ActivityWatch currently has two user interfaces, aw-qt and aw-webui. - - :gh-aw:`aw-qt` - Manages the server and watchers to make ActivityWatch easy to use for end-users. - - :gh-aw:`aw-webui` - Offers visualization and an overview of the database. Hosted by aw-server in the bundle. +- :gh-aw:`aw-qt` - Manages the server and watchers to make ActivityWatch easy to use for end-users. +- :gh-aw:`aw-webui` - Offers visualization and an overview of the database. Hosted by aw-server in the bundle. Libraries --------- @@ -45,10 +45,10 @@ aw-core The aw-core library contains many of the essential parts of ActivityWatch, notably: - - The `buckets-and-events` - - The datastore layer - - Event transformation and queries - - Utilities (configuration, logging, decorators) +- The `buckets-and-events` +- The datastore layer +- Event transformation and queries +- Utilities (configuration, logging, decorators) aw-client ^^^^^^^^^ @@ -58,9 +58,9 @@ A client could both be a watcher which sends data as well as a visualizer which Currently the primary client library is written in Python (known simply as aw-client) but a client library written in JavaScript is on the way and is expected to have the same level of support in the future. - - :gh-aw:`aw-client` (Python) - - :gh-aw:`aw-client-js` (TypeScript/JavaScript, beta) - - :gh-aw:`aw-client-rust` (Rust, work in progress) +- :gh-aw:`aw-client` (Python) +- :gh-aw:`aw-client-js` (TypeScript/JavaScript, beta) +- :gh-aw:`aw-client-rust` (Rust, work in progress) aw-analysis ^^^^^^^^^^^ diff --git a/src/banner.png b/src/banner.png deleted file mode 100644 index 9ed1418..0000000 Binary files a/src/banner.png and /dev/null differ diff --git a/src/changelog.rst b/src/changelog.rst index da215dc..99b28f0 100644 --- a/src/changelog.rst +++ b/src/changelog.rst @@ -4,88 +4,98 @@ Changelog ========= +------- +v0.10.0 +------- + +.. include:: changelog/v0_10.rst + +------ v0.9.0 ------ Released 2020-03-15 - - add Rust server as an option. It has better performance and will be the main supported server soon. - - Almost all python components have been moved to poetry / pyproject.toml from old pip / setup.py building. +- add Rust server as an option. It has better performance and will be the main supported server soon. +- Almost all python components have been moved to poetry / pyproject.toml from old pip / setup.py building. main activitywatch - - Add aw-server-rust binary to pyinstaller bundles (a567003) - - Automatic stale issue detection / closing (issues marked as stale after 180 days of inactivity, closed after 14 stale days) - - Added aw-server-rust - - Add .app and .dmg building +- Add aw-server-rust binary to pyinstaller bundles (a567003) +- Automatic stale issue detection / closing (issues marked as stale after 180 days of inactivity, closed after 14 stale days) +- Added aw-server-rust +- Add .app and .dmg building aw-client: - - switched to using pyproject/poetry (d66f319) - - Change default limit from 100 to return all by default (d35449a) +- switched to using pyproject/poetry (d66f319) +- Change default limit from 100 to return all by default (d35449a) aw-core: - - added strict-rfc3339 (c5e9d34) - - upgraded jsonschema (a803443) +- added strict-rfc3339 (c5e9d34) +- upgraded jsonschema (a803443) aw-qt - - Use manager to stop all modules (ac40452) - - Remove confirm dialog on exit (246ff05) - - Remove startup notification (#45) (b1f66c3) - - added aw-server-rust to possible modules (b4e9411) - - Add dark mode detection to MacOS logo logic (502b77d) +- Use manager to stop all modules (ac40452) +- Remove confirm dialog on exit (246ff05) +- Remove startup notification (#45) (b1f66c3) +- added aw-server-rust to possible modules (b4e9411) +- Add dark mode detection to MacOS logo logic (502b77d) aw-server - - migrated from flask-restplus to flask-restx, updated submodule (36e970e) - - Makefile improvements: use pip3 (47a208b), fixed make build DEV=true (817723b) +- migrated from flask-restplus to flask-restx, updated submodule (36e970e) +- Makefile improvements: use pip3 (47a208b), fixed make build DEV=true (817723b) aw-server-rust: - - Added in this release. +- Added in this release. aw-watcher-window - - readded script that disappeared in previous PR (1e424e4) - - revise exclude_title logic (b1bd00d) +- readded script that disappeared in previous PR (1e424e4) +- revise exclude_title logic (b1bd00d) aw-webui: - - added ability to edit start and end in EventEditor, added ability to edit events from Bucket view (10dc80f) - - Add vuex support for editor activity (47fed8b) - - added setting for 'show last' duration default value (20ca6fa) +- added ability to edit start and end in EventEditor, added ability to edit events from Bucket view (10dc80f) +- Add vuex support for editor activity (47fed8b) +- added setting for 'show last' duration default value (20ca6fa) - - buckets: Fix broken export bucket button (0a60cf7) - - fixed long lines (c502787) - - fixed bugs in event editor and stopwatch (d121fcb) - - fixed editing events in bucket view (b6c1405) - - stopwatch: Fixes broken "stop" and "edit" (06be96b) - - Fix firefox developer edition browser data not showing up in activity view. (4a05131) - - views/activity: Fix so subview is kept between date changes (c0ae191) +- buckets: Fix broken export bucket button (0a60cf7) +- fixed long lines (c502787) +- fixed bugs in event editor and stopwatch (d121fcb) +- fixed editing events in bucket view (b6c1405) +- stopwatch: Fixes broken "stop" and "edit" (06be96b) +- Fix firefox developer edition browser data not showing up in activity view. (4a05131) +- views/activity: Fix so subview is kept between date changes (c0ae191) - - Improvements to Stopwatch and EventEditor (#166) (2040a92) - - package.json: Update to fix vulnerabilities (a2f48a8) - - Swich from timeline-plus to vis-timeline (98cd372) - - queries: Removed trailing lines (d25cf09) +- Improvements to Stopwatch and EventEditor (#166) (2040a92) +- package.json: Update to fix vulnerabilities (a2f48a8) +- Swich from timeline-plus to vis-timeline (98cd372) +- queries: Removed trailing lines (d25cf09) +------ v0.8.4 ------ Released 2019-12-10 - - Adds the ability to filter the activity view by category. - - Fixes a bug where setting rule for a category to 'None' breaks the UI :issue:`313`. - - Fixes the broken favicon for aw-webui. +- Adds the ability to filter the activity view by category. +- Fixes a bug where setting rule for a category to 'None' breaks the UI :issue:`313`. +- Fixes the broken favicon for aw-webui. +------ v0.8.3 ------ Released 2019-11-13 (yes, the same day as v0.8.2) - - Fixes the Windows builds +- Fixes the Windows builds +------ v0.8.2 ------ @@ -93,10 +103,11 @@ Released 2019-11-13 Just minor fixes to the v0.8.1 that was released the day before. - - Added a Windows installer - - :strike:`Fixes the Windows builds` (it did not) - - Fixes a bug in the web UI where weeks didn't always start on Mondays and months didn't always start on the first +- Added a Windows installer +- :strike:`Fixes the Windows builds` (it did not) +- Fixes a bug in the web UI where weeks didn't always start on Mondays and months didn't always start on the first +------ v0.8.1 ------ @@ -108,19 +119,20 @@ It's the culmination of a lot of behind-the-scenes work that has been going on f Web UI: - - Categorization is finally here! Including visualizations and settings. The UX still leaves some things to be desired, but it's a great start. - - Daily and Summary views are now merged into one so that you get all the goodies of the Daily view but for arbitrary timeperiods like days/weeks/months! - - Updated the start page, including links to resources like the `user survey `_. +- Categorization is finally here! Including visualizations and settings. The UX still leaves some things to be desired, but it's a great start. +- Daily and Summary views are now merged into one so that you get all the goodies of the Daily view but for arbitrary timeperiods like days/weeks/months! +- Updated the start page, including links to resources like the `user survey `_. Server: - - New unique device ID is now exposed through the info API endpoint, a pre-requisite for building the much requested sync feature. - - Now contains the transforms needed for categorization. +- New unique device ID is now exposed through the info API endpoint, a pre-requisite for building the much requested sync feature. +- Now contains the transforms needed for categorization. Other: - - There is now a Windows installer available, and it automatically sets up autostart! +- There is now a Windows installer available, and it automatically sets up autostart! +-------- v0.8.0b9 -------- @@ -131,8 +143,9 @@ Released 2019-07-03 Web UI: - - Now includes the Summary view for summarizing activity across weekly/monthly/yearly timeperiods! +- Now includes the Summary view for summarizing activity across weekly/monthly/yearly timeperiods! +-------- v0.8.0b8 -------- @@ -143,19 +156,20 @@ Released 2019-03-09 Server: - - Import and export APIs are now usable +- Import and export APIs are now usable Web UI: - - Added Stopwatch functionality - - Added ability to import buckets from export - - Bucket export button now does a full export that includes metadata +- Added Stopwatch functionality +- Added ability to import buckets from export +- Bucket export button now does a full export that includes metadata Other: - - The lowest version of Python supported for building ActivityWatch is now 3.6. - - Fixed PyInstaller-built releases on Windows +- The lowest version of Python supported for building ActivityWatch is now 3.6. +- Fixed PyInstaller-built releases on Windows +-------- v0.8.0b7 -------- @@ -163,17 +177,19 @@ Released 2018-11-03 Web UI: - - Fix broken editor bucket visualization +- Fix broken editor bucket visualization Misc: - - CI Improvements +- CI Improvements +------------------- v0.8.0b2 - v0.8.0b6 ------------------- No changelog written. +-------- v0.8.0b1 -------- @@ -205,6 +221,7 @@ Other: - Windows: Console window and taskbar icon now hidden by default (:issue:`139`) - All issues assigned to the v0.8 milestone can be found :gh-aw:`on GitHub ` +------ v0.7.1 ------ @@ -213,6 +230,7 @@ Released 2017-11-06 - Actually fixed the timezone issue in the web UI (:issue:`117`). - All issues assigned to the v0.7 milestone can be found :gh-aw:`on GitHub `. +-------- v0.7.0b4 -------- @@ -224,6 +242,7 @@ Released 2017-10-22 - Fixed packaging bugs (macOS, PyInstaller). - The web extension now has a better look and notifies if connection to server failed. +-------- v0.7.0b3 -------- @@ -232,6 +251,7 @@ Released 2017-08-25 - Even more improvements to the web UI. - Major improvements to the documentation, notably instructions on how to install from builds and sources. +-------- v0.7.0b2 -------- @@ -239,6 +259,7 @@ Released 2017-08-09 - Improvements to the web UI: a new visualization method (the "today" view) and information for users about the state of the project on the first page. +-------- v0.7.0b1 -------- @@ -257,6 +278,7 @@ There have been several major changes since v0.6. Much of it wont end up here bu - A lot of bug fixes (and hopefully not too many new bugs). - Vastly improved code quality. +---------------- v0.6.0 and older ---------------- diff --git a/src/changelog/v0_10.md b/src/changelog/v0_10.md new file mode 100644 index 0000000..e65dfe2 --- /dev/null +++ b/src/changelog/v0_10.md @@ -0,0 +1,437 @@ +The changelog is written on a per-submodule basis. Look under the Feature subheaders for the most user-affecting changes. + +## Summary + + - ✨ New editable views + - ✨ Timeline (barchart) visualization + - ✨ Update checks + - 🍎 Better support for macOS + - πŸͺŸ Support for Microsoft Edge + - πŸ› Many bug fixes + - πŸ•ΈοΈ The "sunburst clock" vis was removed (temporarily, see https://github.com/ActivityWatch/activitywatch/issues/508#issuecomment-730396764) + - And a lot more... + +## activitywatch (bundle repo) + +#### ✨ Features (1) + - feat: improved generation of changelog ([`7e6acf2`](https://github.com/ActivityWatch/activitywatch/commit/7e6acf2)) + +
πŸ› Fixes (3) +

+ + - fix: fixed inclusion of aw-webui for use with aw-server-rust (fixes [#441](https://github.com/ActivityWatch/activitywatch/issues/441)) ([`2c3fe73`](https://github.com/ActivityWatch/activitywatch/commit/2c3fe73)) + - fix: fixed generation of changelog for subsubmodules ([`77b39b5`](https://github.com/ActivityWatch/activitywatch/commit/77b39b5)) + - fix: switched from biplist to plistlib (following dmgbuild's example) ([`5ddb5f6`](https://github.com/ActivityWatch/activitywatch/commit/5ddb5f6)) + +

+ +
πŸ”¨ Misc (12) +

+ + - docs: updated screenshot in README ([`42bf20c`](https://github.com/ActivityWatch/activitywatch/commit/42bf20c)) + - docs: updated FUNDING.yml ([`c779d75`](https://github.com/ActivityWatch/activitywatch/commit/c779d75)) + - Use git describe --tags --abbrev=0 to retrieve current activitywatch version in aw.spec ([`47cd07e`](https://github.com/ActivityWatch/activitywatch/commit/47cd07e)) + - docs: fixed stray end tag in README ([`b1a89d7`](https://github.com/ActivityWatch/activitywatch/commit/b1a89d7)) + - README: Removed outdated statement that import is not supported ([`370b073`](https://github.com/ActivityWatch/activitywatch/commit/370b073)) + - docs: fixed emoji in bug report issue template title ([`89d8a4f`](https://github.com/ActivityWatch/activitywatch/commit/89d8a4f)) + - docs: updated issue templates ([#429](https://github.com/ActivityWatch/activitywatch/issues/429)) ([`5c139b9`](https://github.com/ActivityWatch/activitywatch/commit/5c139b9)) + - docs: added commit message guidelines to CONTRIBUTING.md ([#415](https://github.com/ActivityWatch/activitywatch/issues/415)) ([`29ad429`](https://github.com/ActivityWatch/activitywatch/commit/29ad429)) + - Merge pull request [#401](https://github.com/ActivityWatch/activitywatch/issues/401) from gwynevans/docTweak ([`b1e8934`](https://github.com/ActivityWatch/activitywatch/commit/b1e8934)) + - Add explanation of AFK acronym to README ([`5193cd1`](https://github.com/ActivityWatch/activitywatch/commit/5193cd1)) + - docs: added new script to build changelog ([#381](https://github.com/ActivityWatch/activitywatch/issues/381)) ([`8ed9754`](https://github.com/ActivityWatch/activitywatch/commit/8ed9754)) + - docs: added GitHub actions badge to README ([`b33711a`](https://github.com/ActivityWatch/activitywatch/commit/b33711a)) + +

+ +## aw-webui + +#### ✨ Features (22) + - feat: made timeline view full-width ([`bba8b35`](https://github.com/ActivityWatch/aw-webui/commit/bba8b35)) + - feat: added stop time to timeline tooltip (fixes[[#200](https://github.com/ActivityWatch/aw-webui/issues/200)](https://github.com/ActivityWatch/aw-webui/issues/200)#issuecomment-674582218) ([`f0e8b4c`](https://github.com/ActivityWatch/aw-webui/commit/f0e8b4c)) + - feat: refactored ActivityEditor into ActivityView, added better info when missing data ([`94f0959`](https://github.com/ActivityWatch/aw-webui/commit/94f0959)) + - feat: added new view modal ([`a0ec9a5`](https://github.com/ActivityWatch/aw-webui/commit/a0ec9a5)) + - feat: added delete view and restore views to default ([`129fdd9`](https://github.com/ActivityWatch/aw-webui/commit/129fdd9)) + - feat: implemented save/cancel when editing view ([`ef52f1e`](https://github.com/ActivityWatch/aw-webui/commit/ef52f1e)) + - feat: added buttons to edit/save view, made ActivityView delegate to ActivityEditor if view_id is 'editor' ([`1beade2`](https://github.com/ActivityWatch/aw-webui/commit/1beade2)) + - feat: added ability to add new views and visualizations ([`6578e7f`](https://github.com/ActivityWatch/aw-webui/commit/6578e7f)) + - feat: continued work on customizable views, fixing a few bugs ([`783733b`](https://github.com/ActivityWatch/aw-webui/commit/783733b)) + - feat: started working on customizable views ([`382308f`](https://github.com/ActivityWatch/aw-webui/commit/382308f)) + - feat: poll user satisfaction and calls to action ([#229](https://github.com/ActivityWatch/aw-webui/issues/229)) ([`f9e0bbf`](https://github.com/ActivityWatch/aw-webui/commit/f9e0bbf)) + - feat: added options to WIP Calendar visualization ([`4e7303a`](https://github.com/ActivityWatch/aw-webui/commit/4e7303a)) + - feat: check for new releases (ActivityWatch/activitywatch[#114](https://github.com/ActivityWatch/aw-webui/issues/114)) ([`b9fe58b`](https://github.com/ActivityWatch/aw-webui/commit/b9fe58b)) + - feat: added proper timeline labeling for stopwatch events ([`5e1afd8`](https://github.com/ActivityWatch/aw-webui/commit/5e1afd8)) + - feat: Add custom hovertext for editor summary and project ([`437a882`](https://github.com/ActivityWatch/aw-webui/commit/437a882)) + - feat: Better user experience when importing buckets ([`d59cf32`](https://github.com/ActivityWatch/aw-webui/commit/d59cf32)) + - feat: Add delete button to EventEditor modal ([`a4cd0b0`](https://github.com/ActivityWatch/aw-webui/commit/a4cd0b0)) + - feat: started working on calendar visualization ([`2b6f6c3`](https://github.com/ActivityWatch/aw-webui/commit/2b6f6c3)) + - feat: Add first/last event to Bucket view ([`915a4cf`](https://github.com/ActivityWatch/aw-webui/commit/915a4cf)) + - feat: ported new Activity view to Android ([`13777cb`](https://github.com/ActivityWatch/aw-webui/commit/13777cb)) + - feat: added support for Edge browser ([`d495f7f`](https://github.com/ActivityWatch/aw-webui/commit/d495f7f)) + - feat: added active history data to demomode, removed excessive logging ([`107ae4d`](https://github.com/ActivityWatch/aw-webui/commit/107ae4d)) + +
πŸ› Fixes (35) +

+ + - fix: added chromium.exe to browser appnames (fixes[[#503](https://github.com/ActivityWatch/aw-webui/issues/503)](https://github.com/ActivityWatch/activitywatch/issues/503)) ([`541e99c`](https://github.com/ActivityWatch/aw-webui/commit/541e99c)) + - fix: improved border-color of events in timeline visualization ([`935354a`](https://github.com/ActivityWatch/aw-webui/commit/935354a)) + - fix: added (commented out) sunburst_clock to SelectableVisualization.vue ([`d4f2b3c`](https://github.com/ActivityWatch/aw-webui/commit/d4f2b3c)) + - fix: fixed missing href, added Discord to links in Home.vue ([`6b5a67b`](https://github.com/ActivityWatch/aw-webui/commit/6b5a67b)) + - fix: minor satisfaction poll fixes ([`392cf8c`](https://github.com/ActivityWatch/aw-webui/commit/392cf8c)) + - fix: fixed invalid type ([`105afdc`](https://github.com/ActivityWatch/aw-webui/commit/105afdc)) + - fix: added linting for tests and fixed lint issues ([`fc5cbe9`](https://github.com/ActivityWatch/aw-webui/commit/fc5cbe9)) + - fix: changed sometimes missing unicode character to icon in CategoryTree ([`50b3258`](https://github.com/ActivityWatch/aw-webui/commit/50b3258)) + - fix: change button to only show for range ([#449](https://github.com/ActivityWatch/aw-webui/issues/449) from activitywatch) ([`0c36bbe`](https://github.com/ActivityWatch/aw-webui/commit/0c36bbe)) + - fix: fix timeline updating before new range is selected ([#449](https://github.com/ActivityWatch/aw-webui/issues/449) from activitywatch) ([`444980a`](https://github.com/ActivityWatch/aw-webui/commit/444980a)) + - fix: fix timeline updating before new range is selected ([#449](https://github.com/ActivityWatch/aw-webui/issues/449) from activitywatch) ([`d2ebb9c`](https://github.com/ActivityWatch/aw-webui/commit/d2ebb9c)) + - fix: Update aw-client-js ([`1448792`](https://github.com/ActivityWatch/aw-webui/commit/1448792)) + - fix: cleaned up queries, unifying more into canonicalQuery ([`03a1242`](https://github.com/ActivityWatch/aw-webui/commit/03a1242)) + - fix: Fix incompatibility with aw-server-python ([`1d3bfd1`](https://github.com/ActivityWatch/aw-webui/commit/1d3bfd1)) + - fix: Fix VisTimeline errors ([`61d2461`](https://github.com/ActivityWatch/aw-webui/commit/61d2461)) + - fix: Fix previously broken ts types ([`2902651`](https://github.com/ActivityWatch/aw-webui/commit/2902651)) + - fix: Fix previously broken ts types ([`e356b24`](https://github.com/ActivityWatch/aw-webui/commit/e356b24)) + - fix: Fix linting issues ([`ccddac7`](https://github.com/ActivityWatch/aw-webui/commit/ccddac7)) + - fix: Fix broken getBucketWithEvents ([`554f3f7`](https://github.com/ActivityWatch/aw-webui/commit/554f3f7)) + - fix: Set headers on tables where they belong ([`f08a43b`](https://github.com/ActivityWatch/aw-webui/commit/f08a43b)) + - fix: Fix 'Updated' field in buckets view for aw-server-rust ([`490901d`](https://github.com/ActivityWatch/aw-webui/commit/490901d)) + - fix: reintroduced active events for barchart visualization ([`2acb3cb`](https://github.com/ActivityWatch/aw-webui/commit/2acb3cb)) + - fix: fixed [#206](https://github.com/ActivityWatch/aw-webui/issues/206), incorrectly escaping backslashes in regex ([`554d05a`](https://github.com/ActivityWatch/aw-webui/commit/554d05a)) + - fix: fixed bug where opening Activity view didn't correctly use today as default date ([`903ad77`](https://github.com/ActivityWatch/aw-webui/commit/903ad77)) + - fix: added 'Firefox-esr' to browser appnames, fixes [#204](https://github.com/ActivityWatch/aw-webui/issues/204) ([`b6f91e3`](https://github.com/ActivityWatch/aw-webui/commit/b6f91e3)) + - fix: Merge window and browser queries ([`f9bcaed`](https://github.com/ActivityWatch/aw-webui/commit/f9bcaed)) + - fix: Subview is now kept when changing date in Activity view ([`f31c75c`](https://github.com/ActivityWatch/aw-webui/commit/f31c75c)) + - fix: fixed filter by category on Android ([`80479d2`](https://github.com/ActivityWatch/aw-webui/commit/80479d2)) + - fix: fixed incorrect references to state ([`0ded48d`](https://github.com/ActivityWatch/aw-webui/commit/0ded48d)) + - fix: Fixed very minor misplacement of button ([`a65623f`](https://github.com/ActivityWatch/aw-webui/commit/a65623f)) + - fix: fixed use of wrong bucket ([`83d14ca`](https://github.com/ActivityWatch/aw-webui/commit/83d14ca)) + - fix: readded active history caching ([`035d4cc`](https://github.com/ActivityWatch/aw-webui/commit/035d4cc)) + - fix: Add notice to download browser watcher if no buckets exist ([`f167565`](https://github.com/ActivityWatch/aw-webui/commit/f167565)) + - fix: See host if only editor buckets exist ([`59197ce`](https://github.com/ActivityWatch/aw-webui/commit/59197ce)) + - fix: Make week start on Monday instead of Sunday ([`dd6abc4`](https://github.com/ActivityWatch/aw-webui/commit/dd6abc4)) + +

+ +
πŸ”¨ Misc (76) +

+ + - Merge pull request [#233](https://github.com/ActivityWatch/aw-webui/issues/233) from ActivityWatch/dev/customizable-views ([`8e886b4`](https://github.com/ActivityWatch/aw-webui/commit/8e886b4)) + - refactor: split 'settings' Vuex store into 'categories' and 'views' ([`2788c14`](https://github.com/ActivityWatch/aw-webui/commit/2788c14)) + - test: fixed e2e screenshot test ([`50e2c0d`](https://github.com/ActivityWatch/aw-webui/commit/50e2c0d)) + - Merge pull request [#167](https://github.com/ActivityWatch/aw-webui/issues/167) from Mte90/patch-1 ([`2c5a934`](https://github.com/ActivityWatch/aw-webui/commit/2c5a934)) + - fix linting ([`526cfdc`](https://github.com/ActivityWatch/aw-webui/commit/526cfdc)) + - remove trailing whitespaces ([`49f3e2e`](https://github.com/ActivityWatch/aw-webui/commit/49f3e2e)) + - fix linting ([`894bf64`](https://github.com/ActivityWatch/aw-webui/commit/894bf64)) + - Merge branch 'master' into patch-1 ([`2e52832`](https://github.com/ActivityWatch/aw-webui/commit/2e52832)) + - docs: fixed comment in PeriodUsage.vue ([#230](https://github.com/ActivityWatch/aw-webui/issues/230)) ([`7912a32`](https://github.com/ActivityWatch/aw-webui/commit/7912a32)) + - Merge pull request [#211](https://github.com/ActivityWatch/aw-webui/issues/211) from ActivityWatch/dev/calendar ([`bfc24c9`](https://github.com/ActivityWatch/aw-webui/commit/bfc24c9)) + - Merge branch 'master' into dev/calendar ([`376e44f`](https://github.com/ActivityWatch/aw-webui/commit/376e44f)) + - Merge pull request [#225](https://github.com/ActivityWatch/aw-webui/issues/225) from billangli/dev/check-for-new-releases ([`707c45a`](https://github.com/ActivityWatch/aw-webui/commit/707c45a)) + - clean up code ([`f8b876b`](https://github.com/ActivityWatch/aw-webui/commit/f8b876b)) + - add aliasing to jest config ([`a8b35d9`](https://github.com/ActivityWatch/aw-webui/commit/a8b35d9)) + - ignore screenshot.test.js from npm test script ([`81a6985`](https://github.com/ActivityWatch/aw-webui/commit/81a6985)) + - Merge pull request [#219](https://github.com/ActivityWatch/aw-webui/issues/219) from billangli/dev/timeline-input-button ([`02a37cc`](https://github.com/ActivityWatch/aw-webui/commit/02a37cc)) + - move initial request to be called from InputTimeInterval ([`050f700`](https://github.com/ActivityWatch/aw-webui/commit/050f700)) + - Change select from v-bind to v-model ([`435896a`](https://github.com/ActivityWatch/aw-webui/commit/435896a)) + - lint-fix ([`7a39a23`](https://github.com/ActivityWatch/aw-webui/commit/7a39a23)) + - Merge branch 'dev/timeline-input-button' of https://github.com/billangli/aw-webui into dev/timeline-input-button ([`6e1eedb`](https://github.com/ActivityWatch/aw-webui/commit/6e1eedb)) + - style: fixed lints, applied prettier v2 style, removed old Log view ([`91878ee`](https://github.com/ActivityWatch/aw-webui/commit/91878ee)) + - Merge pull request [#218](https://github.com/ActivityWatch/aw-webui/issues/218) from ActivityWatch/dev/settings-split ([`11245d7`](https://github.com/ActivityWatch/aw-webui/commit/11245d7)) + - Merge pull request [#217](https://github.com/ActivityWatch/aw-webui/issues/217) from ActivityWatch/dev/summary-custom-hovertext ([`e0d26ec`](https://github.com/ActivityWatch/aw-webui/commit/e0d26ec)) + - refactor: Split Settings into multiple views ([`ed37580`](https://github.com/ActivityWatch/aw-webui/commit/ed37580)) + - Merge pull request [#210](https://github.com/ActivityWatch/aw-webui/issues/210) from ActivityWatch/dev/import-ux-enhancement ([`0038e50`](https://github.com/ActivityWatch/aw-webui/commit/0038e50)) + - Merge pull request [#214](https://github.com/ActivityWatch/aw-webui/issues/214) from ActivityWatch/dev/move-delete-button ([`443528f`](https://github.com/ActivityWatch/aw-webui/commit/443528f)) + - refactor: Move modal into EventEditor ([`9319fca`](https://github.com/ActivityWatch/aw-webui/commit/9319fca)) + - Merge pull request [#209](https://github.com/ActivityWatch/aw-webui/issues/209) from ActivityWatch/dev/lint-fix ([`63d23f9`](https://github.com/ActivityWatch/aw-webui/commit/63d23f9)) + - Merge pull request [#208](https://github.com/ActivityWatch/aw-webui/issues/208) from ActivityWatch/dev/vuex-fix ([`16e37ae`](https://github.com/ActivityWatch/aw-webui/commit/16e37ae)) + - Merge pull request [#202](https://github.com/ActivityWatch/aw-webui/issues/202) from ActivityWatch/dev/last_updated_buckets_fix ([`4b08fbd`](https://github.com/ActivityWatch/aw-webui/commit/4b08fbd)) + - Merge pull request [#203](https://github.com/ActivityWatch/aw-webui/issues/203) from ActivityWatch/dev/merge-window-and-browser-queries ([`09df952`](https://github.com/ActivityWatch/aw-webui/commit/09df952)) + - Merge pull request [#207](https://github.com/ActivityWatch/aw-webui/issues/207) from ActivityWatch/dev/today-bug ([`7821419`](https://github.com/ActivityWatch/aw-webui/commit/7821419)) + - Merge pull request [#2](https://github.com/ActivityWatch/aw-webui/issues/2) from skuzzymiglet/patch-1 ([`4d81a09`](https://github.com/ActivityWatch/aw-webui/commit/4d81a09)) + - Merge pull request [#201](https://github.com/ActivityWatch/aw-webui/issues/201) from ActivityWatch/dev/period-link-subview-fix ([`df5a625`](https://github.com/ActivityWatch/aw-webui/commit/df5a625)) + - Fix bug with browser activity not showing "Loading..." when loading ([`9247aed`](https://github.com/ActivityWatch/aw-webui/commit/9247aed)) + - Merge pull request [#197](https://github.com/ActivityWatch/aw-webui/issues/197) from ActivityWatch/dev/small-tweaks ([`1a969b3`](https://github.com/ActivityWatch/aw-webui/commit/1a969b3)) + - improvement(design): more small design improvements ([`7a2693d`](https://github.com/ActivityWatch/aw-webui/commit/7a2693d)) + - improvement(design): further fixes to design on small screens, added links to watchers page in the docs whenmissing browser or editor buckets ([`3dc3615`](https://github.com/ActivityWatch/aw-webui/commit/3dc3615)) + - improvement(design): made improvements to the design of the Activity view, including smaller tabs and placing the periodLength select in between the 'previous' and 'next' buttons ([`06ccbbe`](https://github.com/ActivityWatch/aw-webui/commit/06ccbbe)) + - Merge pull request [#196](https://github.com/ActivityWatch/aw-webui/issues/196) from ActivityWatch/dependabot/npm_and_yarn/jquery-3.5.0 ([`7c9a7d5`](https://github.com/ActivityWatch/aw-webui/commit/7c9a7d5)) + - Merge pull request [#194](https://github.com/ActivityWatch/aw-webui/issues/194) from ActivityWatch/dev/eslint-fix ([`4973c62`](https://github.com/ActivityWatch/aw-webui/commit/4973c62)) + - Merge pull request [#195](https://github.com/ActivityWatch/aw-webui/issues/195) from ActivityWatch/dev/cleanups ([`7242bed`](https://github.com/ActivityWatch/aw-webui/commit/7242bed)) + - refactor: Removed unnecessary prints ([`9c616e2`](https://github.com/ActivityWatch/aw-webui/commit/9c616e2)) + - style: fixed eslint warnings ([`187c7e5`](https://github.com/ActivityWatch/aw-webui/commit/187c7e5)) + - Merge pull request [#183](https://github.com/ActivityWatch/aw-webui/issues/183) from ActivityWatch/dev/android-update ([`c535835`](https://github.com/ActivityWatch/aw-webui/commit/c535835)) + - refactor: cleanup and minor restyling of SelectableVisualization ([`b215d50`](https://github.com/ActivityWatch/aw-webui/commit/b215d50)) + - Merge pull request [#193](https://github.com/ActivityWatch/aw-webui/issues/193) from ActivityWatch/dev/period-length-fix ([`51bab94`](https://github.com/ActivityWatch/aw-webui/commit/51bab94)) + - refactor: removed old Android activity view ([`afdf0fc`](https://github.com/ActivityWatch/aw-webui/commit/afdf0fc)) + - refactor: changed buckets.(type)_buckets to simply buckets.(type), added androidBucketsByHost ([`f90c0af`](https://github.com/ActivityWatch/aw-webui/commit/f90c0af)) + - Merge pull request [#192](https://github.com/ActivityWatch/aw-webui/issues/192) from NicoWeio/better-errors ([`0f9eb0c`](https://github.com/ActivityWatch/aw-webui/commit/0f9eb0c)) + - remove dedupe "feature"; rewrite code for display message ([`3b1a22f`](https://github.com/ActivityWatch/aw-webui/commit/3b1a22f)) + - bugfix: Inconsistency when changing period length ([`1704d71`](https://github.com/ActivityWatch/aw-webui/commit/1704d71)) + - display error message from API requests if available ([`452ac82`](https://github.com/ActivityWatch/aw-webui/commit/452ac82)) + - Merge pull request [#190](https://github.com/ActivityWatch/aw-webui/issues/190) from ActivityWatch/dev/selectable-activity-views ([`353634b`](https://github.com/ActivityWatch/aw-webui/commit/353634b)) + - refactor: Rename ActivityDaily to just Activity ([`bc4e950`](https://github.com/ActivityWatch/aw-webui/commit/bc4e950)) + - feature: Make views in summary selectable ([`c366500`](https://github.com/ActivityWatch/aw-webui/commit/c366500)) + - Merge pull request [#189](https://github.com/ActivityWatch/aw-webui/issues/189) from ActivityWatch/dev/daily-activity-vuex-refactor2 ([`a5a9e70`](https://github.com/ActivityWatch/aw-webui/commit/a5a9e70)) + - refactor: Made activity_daily vuex more structured and easier to read ([`e30bad4`](https://github.com/ActivityWatch/aw-webui/commit/e30bad4)) + - Merge pull request [#186](https://github.com/ActivityWatch/aw-webui/issues/186) from ActivityWatch/dev/make-queries-less-dependent ([`6379134`](https://github.com/ActivityWatch/aw-webui/commit/6379134)) + - Merge pull request [#185](https://github.com/ActivityWatch/aw-webui/issues/185) from ActivityWatch/dev/monday-start-of-week ([`3451196`](https://github.com/ActivityWatch/aw-webui/commit/3451196)) + - Merge pull request [#182](https://github.com/ActivityWatch/aw-webui/issues/182) from ActivityWatch/dev/demomode-active-history ([`fbcb5ab`](https://github.com/ActivityWatch/aw-webui/commit/fbcb5ab)) + - Merge pull request [#181](https://github.com/ActivityWatch/aw-webui/issues/181) from ActivityWatch/dev/edge-browser ([`91bdb2c`](https://github.com/ActivityWatch/aw-webui/commit/91bdb2c)) + - Merge pull request [#179](https://github.com/ActivityWatch/aw-webui/issues/179) from ActivityWatch/github-actions ([`ed6bed6`](https://github.com/ActivityWatch/aw-webui/commit/ed6bed6)) + - Merge pull request [#178](https://github.com/ActivityWatch/aw-webui/issues/178) from ActivityWatch/dev/better-demomode ([`f3fcb20`](https://github.com/ActivityWatch/aw-webui/commit/f3fcb20)) + - Merge branch 'dev/better-demomode' of github.com:ActivityWatch/aw-webui into dev/better-demomode ([`fdd8052`](https://github.com/ActivityWatch/aw-webui/commit/fdd8052)) + - docs: added more activities to demomode ([`cc5b437`](https://github.com/ActivityWatch/aw-webui/commit/cc5b437)) + - added computation of demo data from single list of events ([`f0a06dd`](https://github.com/ActivityWatch/aw-webui/commit/f0a06dd)) + - added computation of demo data from single list of events ([`1362f2d`](https://github.com/ActivityWatch/aw-webui/commit/1362f2d)) + - Merge pull request [#177](https://github.com/ActivityWatch/aw-webui/issues/177) from ActivityWatch/dev/prettier ([`f9c0b40`](https://github.com/ActivityWatch/aw-webui/commit/f9c0b40)) + - ran `make lint-fix` ([`a1428a4`](https://github.com/ActivityWatch/aw-webui/commit/a1428a4)) + - Merge pull request [#176](https://github.com/ActivityWatch/aw-webui/issues/176) from ActivityWatch/dev/demomode ([`553cceb`](https://github.com/ActivityWatch/aw-webui/commit/553cceb)) + - added fully covered examples of data for demomode ([`5a47ebe`](https://github.com/ActivityWatch/aw-webui/commit/5a47ebe)) + - added lint-fix to Makefile (eslint --fix), now also lints typescript files ([`3ea66bb`](https://github.com/ActivityWatch/aw-webui/commit/3ea66bb)) + - started working on demo mode ([`8f9af1c`](https://github.com/ActivityWatch/aw-webui/commit/8f9af1c)) + - Combine aw-webui PR [#173](https://github.com/ActivityWatch/aw-webui/issues/173) ([`0b9da98`](https://github.com/ActivityWatch/aw-webui/commit/0b9da98)) + - More software to categorize ([`755c6f0`](https://github.com/ActivityWatch/aw-webui/commit/755c6f0)) + +

+ +## aw-qt + +#### ✨ Features (1) + - feat: switched to using click for the CLI, fixed bugs ([`682a73f`](https://github.com/ActivityWatch/aw-qt/commit/682a73f)) + +
πŸ› Fixes (8) +

+ + - fix: fixed assumption about pathsep ([`b7da7c3`](https://github.com/ActivityWatch/aw-qt/commit/b7da7c3)) + - fix: improved module detection, added comments ([`1924e3b`](https://github.com/ActivityWatch/aw-qt/commit/1924e3b)) + - fix: fixed module detection and naming ([`063a00c`](https://github.com/ActivityWatch/aw-qt/commit/063a00c)) + - fix: fixed bugs in bundled/system modules ([`83cc4db`](https://github.com/ActivityWatch/aw-qt/commit/83cc4db)) + - fix: fixed typing checks ([`01378f1`](https://github.com/ActivityWatch/aw-qt/commit/01378f1)) + - fix: minor cleanup ([`f6d26c7`](https://github.com/ActivityWatch/aw-qt/commit/f6d26c7)) + - fix: made sip an explicit dependency (see[[#433](https://github.com/ActivityWatch/aw-qt/issues/433)](https://github.com/ActivityWatch/activitywatch/issues/433)) ([`56cc28c`](https://github.com/ActivityWatch/aw-qt/commit/56cc28c)) + - fix: replace webbrowser.open with xdg-open with original LD_LIBRARY_PATH ([`bcd27a0`](https://github.com/ActivityWatch/aw-qt/commit/bcd27a0)) + +

+ +
πŸ”¨ Misc (32) +

+ + - manager: Fix issue with bundled modules not being detected ([`d887ca5`](https://github.com/ActivityWatch/aw-qt/commit/d887ca5)) + - manager: Make matching of executables more accurate ([`1d421ba`](https://github.com/ActivityWatch/aw-qt/commit/1d421ba)) + - Merge pull request [#64](https://github.com/ActivityWatch/aw-qt/issues/64) from ActivityWatch/dev/fix-module-name-and-filtering ([`9a569fa`](https://github.com/ActivityWatch/aw-qt/commit/9a569fa)) + - docs: updated README with badges and minimal build instructions ([`3db74cd`](https://github.com/ActivityWatch/aw-qt/commit/3db74cd)) + - Merge pull request [#56](https://github.com/ActivityWatch/aw-qt/issues/56) from xylix/dev/improved-module-detection ([`839c9fd`](https://github.com/ActivityWatch/aw-qt/commit/839c9fd)) + - style: removed unused imports ([`157a546`](https://github.com/ActivityWatch/aw-qt/commit/157a546)) + - Merge branch 'master' into dev/improved-module-detection ([`0a359bd`](https://github.com/ActivityWatch/aw-qt/commit/0a359bd)) + - Merge pull request [#59](https://github.com/ActivityWatch/aw-qt/issues/59) from ActivityWatch/dev/fix-buggy-webbrowser-open ([`707b75b`](https://github.com/ActivityWatch/aw-qt/commit/707b75b)) + - Get PATH using python's os module instead of getting environment variable and manually splitting ([`68314f0`](https://github.com/ActivityWatch/aw-qt/commit/68314f0)) + - Merge pull request [#57](https://github.com/ActivityWatch/aw-qt/issues/57) from xylix/dev/trayicon-color-fix ([`eadf39d`](https://github.com/ActivityWatch/aw-qt/commit/eadf39d)) + - Let trayicon owning program handle coloring it with filters ([`5385d8b`](https://github.com/ActivityWatch/aw-qt/commit/5385d8b)) + - Add some informative pydoc comments ([`2a6a8da`](https://github.com/ActivityWatch/aw-qt/commit/2a6a8da)) + - Recursively find submodules in subdirectories ([`9a849ca`](https://github.com/ActivityWatch/aw-qt/commit/9a849ca)) + - Remove unnecessary possible_modules config option ([`9e4b15e`](https://github.com/ActivityWatch/aw-qt/commit/9e4b15e)) + - Add pip cache for macOS, should make pyobjc etc. installation significantly faster ([`b14b1be`](https://github.com/ActivityWatch/aw-qt/commit/b14b1be)) + - Improve autostart() input typing ([`8808f7c`](https://github.com/ActivityWatch/aw-qt/commit/8808f7c)) + - Add pyqt type stubs to dev dependencies, nicer mypy output by default ([`a7c098c`](https://github.com/ActivityWatch/aw-qt/commit/a7c098c)) + - Fix lambda parameter amount to allow termination on sigint / sigkill ([`ea9d196`](https://github.com/ActivityWatch/aw-qt/commit/ea9d196)) + - Improve type safety and add some info logs / comments ([`d4e33cf`](https://github.com/ActivityWatch/aw-qt/commit/d4e33cf)) + - Improve mypy typing ([`4403d19`](https://github.com/ActivityWatch/aw-qt/commit/4403d19)) + - Merge remote-tracking branch 'xylix/dev/autodetect-modules' into dev/improved-module-detection ([`2a05ba1`](https://github.com/ActivityWatch/aw-qt/commit/2a05ba1)) + - remove 1 unused import, don't treat aw-server as a special case in creating module menu ([`7a67423`](https://github.com/ActivityWatch/aw-qt/commit/7a67423)) + - Add type hints to new code ([`94dc1df`](https://github.com/ActivityWatch/aw-qt/commit/94dc1df)) + - rename QTSettings to AwQtSettings and add aw-server-rust ([`9dfea4b`](https://github.com/ActivityWatch/aw-qt/commit/9dfea4b)) + - Store available and autostart modules lists as configuration. See [#47](https://github.com/ActivityWatch/aw-qt/issues/47) ([`a974e2c`](https://github.com/ActivityWatch/aw-qt/commit/a974e2c)) + - actually check for module existence in manager ([`b7ed55a`](https://github.com/ActivityWatch/aw-qt/commit/b7ed55a)) + - fixed typechecking and enabled on Travis ([`6db5435`](https://github.com/ActivityWatch/aw-qt/commit/6db5435)) + - categorized module menu by location of module ([`70cca98`](https://github.com/ActivityWatch/aw-qt/commit/70cca98)) + - fixed issue when location in PATH does not exist ([`4078647`](https://github.com/ActivityWatch/aw-qt/commit/4078647)) + - fixed crash when module couldn't be started ([`ba88995`](https://github.com/ActivityWatch/aw-qt/commit/ba88995)) + - fixed bundled modules ([`fbe3519`](https://github.com/ActivityWatch/aw-qt/commit/fbe3519)) + - added basic module autodetection ([`53f7dd0`](https://github.com/ActivityWatch/aw-qt/commit/53f7dd0)) + +

+ +## aw-server + +
πŸ”¨ Misc (1) +

+ + - docs(README): updated outdated build instructions ([#72](https://github.com/ActivityWatch/aw-server/issues/72)) ([`7bab7f0`](https://github.com/ActivityWatch/aw-server/commit/7bab7f0)) + +

+ +## aw-server-rust + +
πŸ› Fixes (13) +

+ + - fix: corrected non-standard log dir on macOS (fixes [#187](https://github.com/ActivityWatch/aw-server-rust/issues/187)) ([`623dfb4`](https://github.com/ActivityWatch/aw-server-rust/commit/623dfb4)) + - fix: correct lookup of asset_path for .app bundles on macOS ([`9be9962`](https://github.com/ActivityWatch/aw-server-rust/commit/9be9962)) + - fix: Drop single events if corrupted instead of failing whole import ([`96cbc9d`](https://github.com/ActivityWatch/aw-server-rust/commit/96cbc9d)) + - fix: Replace serde_derive with serdes derive feature for all crates ([`5c68853`](https://github.com/ActivityWatch/aw-server-rust/commit/5c68853)) + - fix: Set allocator to jemalloc ([`eabf9a1`](https://github.com/ActivityWatch/aw-server-rust/commit/eabf9a1)) + - fix: Allow floods to merge same event multiple times ([`f5bf3cc`](https://github.com/ActivityWatch/aw-server-rust/commit/f5bf3cc)) + - fix: Remove unnecessary clones ([`db720bf`](https://github.com/ActivityWatch/aw-server-rust/commit/db720bf)) + - fix: Fix clippy issues in aw-transform ([`158cf60`](https://github.com/ActivityWatch/aw-server-rust/commit/158cf60)) + - fix: dependency update needed for new Rust nightly (see https://github.com/ActivityWatch/aw-android/pull/40#issuecomment-651328018) ([`ca905a8`](https://github.com/ActivityWatch/aw-server-rust/commit/ca905a8)) + - fix: added limit parameter to the JNI wrapper for get_events ([`147a2d0`](https://github.com/ActivityWatch/aw-server-rust/commit/147a2d0)) + - fix: fixed issue in compile-android.sh script ([`c101a87`](https://github.com/ActivityWatch/aw-server-rust/commit/c101a87)) + - fix: removed stale .cargo/config and added to .gitignore ([`d7bfc23`](https://github.com/ActivityWatch/aw-server-rust/commit/d7bfc23)) + - fix: changed cfg(debug_assertions) to is_testing for runtime checks ([`96bbb0e`](https://github.com/ActivityWatch/aw-server-rust/commit/96bbb0e)) + +

+ +
πŸ”¨ Misc (60) +

+ + - chore: bumped version number to v0.10.0 ([`f1f5095`](https://github.com/ActivityWatch/aw-server-rust/commit/f1f5095)) + - aw-transform: Optimize filter_period_intersect by pre-calculating endtimes ([`ebb1fdd`](https://github.com/ActivityWatch/aw-server-rust/commit/ebb1fdd)) + - aw-transform: Add benchmark for filter_period_intersect ([`4f00b19`](https://github.com/ActivityWatch/aw-server-rust/commit/4f00b19)) + - aw-query: Refactor benchmark code ([`eabcf74`](https://github.com/ActivityWatch/aw-server-rust/commit/eabcf74)) + - Cargo.lock: Update dependencies ([`2fc85f3`](https://github.com/ActivityWatch/aw-server-rust/commit/2fc85f3)) + - aw-server: Test key_value of different types ([`70968e4`](https://github.com/ActivityWatch/aw-server-rust/commit/70968e4)) + - Make settings value possibly any json type ([`6ecb206`](https://github.com/ActivityWatch/aw-server-rust/commit/6ecb206)) + - aw-models: Add custom schema for tryparse ([`03fd9cd`](https://github.com/ActivityWatch/aw-server-rust/commit/03fd9cd)) + - Cargo.lock: Update dependencies ([`7f2bf15`](https://github.com/ActivityWatch/aw-server-rust/commit/7f2bf15)) + - aw-models: Add schemars support ([`e1131d6`](https://github.com/ActivityWatch/aw-server-rust/commit/e1131d6)) + - aw-datastore: Add bucket_id to errors ([`5bdd6f3`](https://github.com/ActivityWatch/aw-server-rust/commit/5bdd6f3)) + - aw-server: Add Into trait for DatastoreError to HttpErrorJson ([`7a19f34`](https://github.com/ActivityWatch/aw-server-rust/commit/7a19f34)) + - aw-server: Fix compilation on android ([`d985c51`](https://github.com/ActivityWatch/aw-server-rust/commit/d985c51)) + - aw-server: Replace all errors with HttpErrorJson ([`b14a173`](https://github.com/ActivityWatch/aw-server-rust/commit/b14a173)) + - aw-server: Improve HTTP error handling ([`3b126cc`](https://github.com/ActivityWatch/aw-server-rust/commit/3b126cc)) + - tests: Add more asserts of HTTP body ([`a5cbb0d`](https://github.com/ActivityWatch/aw-server-rust/commit/a5cbb0d)) + - aw-server: Make UUID part of ServerState ([`7f6f63d`](https://github.com/ActivityWatch/aw-server-rust/commit/7f6f63d)) + - aw-transform: Add documentation to transforms ([`b04d38b`](https://github.com/ActivityWatch/aw-server-rust/commit/b04d38b)) + - Update aw-webui ([`cc437ea`](https://github.com/ActivityWatch/aw-server-rust/commit/cc437ea)) + - Update Cargo.lock ([`f3c2ede`](https://github.com/ActivityWatch/aw-server-rust/commit/f3c2ede)) + - aw-transform: fix: If events merge during flood, choose the longest endtime ([`091362f`](https://github.com/ActivityWatch/aw-server-rust/commit/091362f)) + - tests: Added another heartbeat test ([`2102597`](https://github.com/ActivityWatch/aw-server-rust/commit/2102597)) + - query: Add VarEnv type alias ([`420d691`](https://github.com/ActivityWatch/aw-server-rust/commit/420d691)) + - Merge pull request [#137](https://github.com/ActivityWatch/aw-server-rust/issues/137) from ActivityWatch/dev/get_events-limit-jni ([`4c6dd98`](https://github.com/ActivityWatch/aw-server-rust/commit/4c6dd98)) + - Merge pull request [#135](https://github.com/ActivityWatch/aw-server-rust/issues/135) from ActivityWatch/dev/android-vendored-openssl ([`9e796b4`](https://github.com/ActivityWatch/aw-server-rust/commit/9e796b4)) + - aw-webui: Update submodule ([`b3aa756`](https://github.com/ActivityWatch/aw-server-rust/commit/b3aa756)) + - aw-query: Add function filter_keyvals_regex ([`132370b`](https://github.com/ActivityWatch/aw-server-rust/commit/132370b)) + - aw-transform: Avoid cloning in filter_keyvals ([`5185b5d`](https://github.com/ActivityWatch/aw-server-rust/commit/5185b5d)) + - aw-transform: Add filter_keyvals_regex ([`fa842f6`](https://github.com/ActivityWatch/aw-server-rust/commit/fa842f6)) + - README: Fix broken build status badge ([`0dbd57f`](https://github.com/ActivityWatch/aw-server-rust/commit/0dbd57f)) + - aw-server: Refactor dirs, add tests do dirs and logging ([`9b406fc`](https://github.com/ActivityWatch/aw-server-rust/commit/9b406fc)) + - aw-query: Fix unnecessary lifetime parameter and references ([`826b78a`](https://github.com/ActivityWatch/aw-server-rust/commit/826b78a)) + - aw-query: Add simple benchmarks ([`edc9b3f`](https://github.com/ActivityWatch/aw-server-rust/commit/edc9b3f)) + - aw-query: Removed cloning from assigns ([`39cccb3`](https://github.com/ActivityWatch/aw-server-rust/commit/39cccb3)) + - Cargo.lock: Update dependencies ([`9184a35`](https://github.com/ActivityWatch/aw-server-rust/commit/9184a35)) + - aw-query: fix clippy error ([`882385f`](https://github.com/ActivityWatch/aw-server-rust/commit/882385f)) + - chore: updated aw-webui ([`7ede519`](https://github.com/ActivityWatch/aw-server-rust/commit/7ede519)) + - aw-server: rustfmt fix ([`c6cd1d5`](https://github.com/ActivityWatch/aw-server-rust/commit/c6cd1d5)) + - aw-server: Remove unused catchers ([`0b75663`](https://github.com/ActivityWatch/aw-server-rust/commit/0b75663)) + - aw-server: Set content type for more endpoints ([`00c001b`](https://github.com/ActivityWatch/aw-server-rust/commit/00c001b)) + - codecov.yml: Set diff target to a low value ([`e15fe1c`](https://github.com/ActivityWatch/aw-server-rust/commit/e15fe1c)) + - codecov.yml: Disable coverage requirement ([`7f98e25`](https://github.com/ActivityWatch/aw-server-rust/commit/7f98e25)) + - Fix database location when running with --testing ([`642a531`](https://github.com/ActivityWatch/aw-server-rust/commit/642a531)) + - cargo: Update dependencies ([`335417e`](https://github.com/ActivityWatch/aw-server-rust/commit/335417e)) + - cargo: Remove some features from multipart to get fewer dependencies ([`ccff0e4`](https://github.com/ActivityWatch/aw-server-rust/commit/ccff0e4)) + - aw-server: Clippy fixes ([`4ceb9c2`](https://github.com/ActivityWatch/aw-server-rust/commit/4ceb9c2)) + - aw-client-rust: Clippy fixes ([`718ebfd`](https://github.com/ActivityWatch/aw-server-rust/commit/718ebfd)) + - aw-datastore: Clippy fix and refactoring of worker ([`6f5200d`](https://github.com/ActivityWatch/aw-server-rust/commit/6f5200d)) + - aw-datastore: Make reload test force commit ([`34d2dec`](https://github.com/ActivityWatch/aw-server-rust/commit/34d2dec)) + - aw-datastore: Guarantee DB commit every 15 seconds ([`17dff67`](https://github.com/ActivityWatch/aw-server-rust/commit/17dff67)) + - aw-server: Increase default log levels further ([`afbb70c`](https://github.com/ActivityWatch/aw-server-rust/commit/afbb70c)) + - aw-server: Added option parsing and --testing option ([`c34b7f6`](https://github.com/ActivityWatch/aw-server-rust/commit/c34b7f6)) + - aw-server: Pass AWConfig as a Rocket state ([`cd00f31`](https://github.com/ActivityWatch/aw-server-rust/commit/cd00f31)) + - aw-query: Fix clippy issues ([`6f69b8b`](https://github.com/ActivityWatch/aw-server-rust/commit/6f69b8b)) + - cleaned up testing/production detection ([`5b52961`](https://github.com/ActivityWatch/aw-server-rust/commit/5b52961)) + - moved log directory to make it aw-qt compatible ([`6024d7d`](https://github.com/ActivityWatch/aw-server-rust/commit/6024d7d)) + - reduced logging and simplified logging pipeline ([`d456981`](https://github.com/ActivityWatch/aw-server-rust/commit/d456981)) + - Merge pull request [#105](https://github.com/ActivityWatch/aw-server-rust/issues/105) from ActivityWatch/dev/github-actions ([`f2afa99`](https://github.com/ActivityWatch/aw-server-rust/commit/f2afa99)) + - docs: updated README ([`62be9f4`](https://github.com/ActivityWatch/aw-server-rust/commit/62be9f4)) + - Create rust.yml ([`d7e75dd`](https://github.com/ActivityWatch/aw-server-rust/commit/d7e75dd)) + +

+ +## aw-watcher-afk + +
πŸ”¨ Misc (2) +

+ + - Merge pull request [#40](https://github.com/ActivityWatch/aw-watcher-afk/issues/40) from ActivityWatch/doc/readme-update ([`32d7647`](https://github.com/ActivityWatch/aw-watcher-afk/commit/32d7647)) + - doc: Update install instructions in README.md ([`c06bcab`](https://github.com/ActivityWatch/aw-watcher-afk/commit/c06bcab)) + +

+ +## aw-watcher-window + +
πŸ”¨ Misc (14) +

+ + - Merge pull request [#41](https://github.com/ActivityWatch/aw-watcher-window/issues/41) from xylix/dev/macos-ask-for-permission ([`48491bc`](https://github.com/ActivityWatch/aw-watcher-window/commit/48491bc)) + - Merge branch 'master' into dev/macos-ask-for-permission ([`724a3e2`](https://github.com/ActivityWatch/aw-watcher-window/commit/724a3e2)) + - Merge pull request [#44](https://github.com/ActivityWatch/aw-watcher-window/issues/44) from ActivityWatch/doc/readme-update ([`fbec7ed`](https://github.com/ActivityWatch/aw-watcher-window/commit/fbec7ed)) + - doc: Add install instructions to README.md ([`bc33438`](https://github.com/ActivityWatch/aw-watcher-window/commit/bc33438)) + - remove execution blocking from macos.py, move macos permission check in main.py after logging has bene initialized ([`b829e04`](https://github.com/ActivityWatch/aw-watcher-window/commit/b829e04)) + - Fix types in Process args, remove hardcoded development False ([`3ad2af6`](https://github.com/ActivityWatch/aw-watcher-window/commit/3ad2af6)) + - Update lockfile post merge ([`04d8269`](https://github.com/ActivityWatch/aw-watcher-window/commit/04d8269)) + - Merge branch 'master' into dev/macos-ask-for-permission ([`aa841c2`](https://github.com/ActivityWatch/aw-watcher-window/commit/aa841c2)) + - Use multiprocessing for background perm check execution. ([`0943007`](https://github.com/ActivityWatch/aw-watcher-window/commit/0943007)) + - Merge pull request [#42](https://github.com/ActivityWatch/aw-watcher-window/issues/42) from ActivityWatch/dev/github-actions ([`620b52c`](https://github.com/ActivityWatch/aw-watcher-window/commit/620b52c)) + - Start running perm dialog in a background thread ([`f032ed1`](https://github.com/ActivityWatch/aw-watcher-window/commit/f032ed1)) + - Add accessibility settings link button ([`890b6d6`](https://github.com/ActivityWatch/aw-watcher-window/commit/890b6d6)) + - Platform restrict pyobjc deps ([`6c2c1e5`](https://github.com/ActivityWatch/aw-watcher-window/commit/6c2c1e5)) + - Use AppKit to figure if we have accessbility perms and pyobjc to ask for them ([`82e90b2`](https://github.com/ActivityWatch/aw-watcher-window/commit/82e90b2)) + +

+ +## aw-client + +#### ✨ Features (2) + - feat: added better output when overlapping events found ([`52937c4`](https://github.com/ActivityWatch/aw-client/commit/52937c4)) + - feat: added merge_buckets.py example ([`5b9977f`](https://github.com/ActivityWatch/aw-client/commit/5b9977f)) + +
πŸ› Fixes (1) +

+ + - fix: fixed minor things (docs, wrongly commented out code) in examples/merge_buckets.py ([`839e1ba`](https://github.com/ActivityWatch/aw-client/commit/839e1ba)) + +

+ +
πŸ”¨ Misc (2) +

+ + - Merge pull request [#49](https://github.com/ActivityWatch/aw-client/issues/49) from ActivityWatch/doc/readme-update ([`bd8a953`](https://github.com/ActivityWatch/aw-client/commit/bd8a953)) + - doc: Add install instructions to README.md ([`3a4367c`](https://github.com/ActivityWatch/aw-client/commit/3a4367c)) + +

+ +## aw-core + +#### ✨ Features (1) + - feat: log unhandled exceptions ([`6ba8f97`](https://github.com/ActivityWatch/aw-core/commit/6ba8f97)) + +
πŸ› Fixes (2) +

+ + - fix: fixed bug when passing unsorted lists into _intersecting_eventpairs and added test for it ([`216e9fc`](https://github.com/ActivityWatch/aw-core/commit/216e9fc)) + - fix: fixed case where heartbeat with similar timestamp could shorten previous event ([`0444be3`](https://github.com/ActivityWatch/aw-core/commit/0444be3)) + +

+ +
πŸ”¨ Misc (10) +

+ + - style: fixed code formatting ([`8775e04`](https://github.com/ActivityWatch/aw-core/commit/8775e04)) + - refactor: extracted TimePeriod class to timeslot repo ([`e4a2b53`](https://github.com/ActivityWatch/aw-core/commit/e4a2b53)) + - test: added test for intersecting eventpairs ([`5f75f65`](https://github.com/ActivityWatch/aw-core/commit/5f75f65)) + - test: changed categorization test to include backslash-metacharacter (\w) ([`e83f3f8`](https://github.com/ActivityWatch/aw-core/commit/e83f3f8)) + - docs: fixed CI badge, added better summary of contained modules ([`c38b814`](https://github.com/ActivityWatch/aw-core/commit/c38b814)) + - style: formatted everything with Black ([`eda4ff6`](https://github.com/ActivityWatch/aw-core/commit/eda4ff6)) + - tests: Add test for heartbeats with same timestamp ([`296647e`](https://github.com/ActivityWatch/aw-core/commit/296647e)) + - Merge pull request [#90](https://github.com/ActivityWatch/aw-core/issues/90) from ActivityWatch/doc/readme-update ([`a6a9a9e`](https://github.com/ActivityWatch/aw-core/commit/a6a9a9e)) + - doc: Add install instructions to README.md ([`e7e1b5b`](https://github.com/ActivityWatch/aw-core/commit/e7e1b5b)) + - Merge pull request [#89](https://github.com/ActivityWatch/aw-core/issues/89) from ActivityWatch/dev/github-actions ([`b2d9179`](https://github.com/ActivityWatch/aw-core/commit/b2d9179)) + +

+ +## media + +
πŸ”¨ Misc (1) +

+ + - Remove unnecessary logo after automatic dark mode recoloration ([`cb597f7`](https://github.com/ActivityWatch/media/commit/cb597f7)) + +

diff --git a/src/conf.py b/src/conf.py index e724395..34e779b 100644 --- a/src/conf.py +++ b/src/conf.py @@ -20,10 +20,6 @@ import os import sys -# Other imports - -from recommonmark.parser import CommonMarkParser - # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. @@ -34,6 +30,8 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ + "m2r2", + # "myst_parser", "sphinx.ext.autodoc", "sphinx.ext.autosectionlabel", "sphinx.ext.viewcode", @@ -54,10 +52,10 @@ templates_path = ["_templates"] # The parser(s) and suffix(es) of source filenames. -source_parsers = { - ".md": CommonMarkParser, -} -source_suffix = [".rst", ".md"] +# source_parsers = { +# ".md": CommonMarkParser, +# } +# source_suffix = [".rst", ".md"] # The encoding of source files. # @@ -142,12 +140,28 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -import sphinx_rtd_theme +html_theme = "sphinx_book_theme" +html_static_path = ["_static"] + +html_title = "" +html_logo = "../media/banners/banner.png" +html_favicon = "../media/logo/logo.ico" -html_theme = "sphinx_rtd_theme" -html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -html_theme_options = {"collapse_navigation": False, "navigation_depth": 4} -using_rtd_theme = True + +html_theme_options = { + "repository_url": "https://github.com/ActivityWatch/docs", + "path_to_docs": "src", + "use_repository_button": True, + "use_edit_page_button": True, + "extra_navbar": "

Follow us on Twitter

", +} + + +# import sphinx_rtd_theme +# html_theme = "sphinx_rtd_theme" +# html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] +# html_theme_options = {"collapse_navigation": False, "navigation_depth": 4} +# using_rtd_theme = True # The name for this set of Sphinx documents. # " v documentation" by default. @@ -199,9 +213,9 @@ # Custom sidebar templates, maps document names to template names. # -html_sidebars = { - "**": ["globaltoc.html", "relations.html", "sourcelink.html", "searchbox.html"], -} +# html_sidebars = { +# "**": ["globaltoc.html", "relations.html", "sourcelink.html", "searchbox.html"], +# } # Additional templates that should be rendered to pages, maps page names to # template names. diff --git a/src/configuration.rst b/src/configuration.rst index b22b903..9405706 100644 --- a/src/configuration.rst +++ b/src/configuration.rst @@ -9,23 +9,23 @@ Configuration options for the server, client, and default watchers are listed be - aw-server (Python) - - :code:`host` Hostname to start the server on. Currently only :code:`localhost` or :code:`127.0.0.1` are supported. - - :code:`port` Port number to start the server on. - - :code:`storage` Type of storage for holding buckets and events. Supported types are :code:`peewee`, :code:`memory` (useful in testing), or :code:`mongodb` (MongoDB support will be removed in a future version). + - :code:`host` Hostname to start the server on. Currently only :code:`localhost` or :code:`127.0.0.1` are supported. + - :code:`port` Port number to start the server on. + - :code:`storage` Type of storage for holding buckets and events. Supported types are :code:`peewee`, :code:`memory` (useful in testing), or :code:`mongodb` (MongoDB support will be removed in a future version). - aw-client - - :code:`hostname` Hostname of the server to connect to. - - :code:`port` Port number of the server to connect to. + - :code:`hostname` Hostname of the server to connect to. + - :code:`port` Port number of the server to connect to. - aw-watcher-afk - - :code:`timeout` Time in seconds with no activity required to become afk. - - :code:`poll_time` Time in seconds between checks for activity. - - :code:`update_time` Not yet implemented. + - :code:`timeout` Time in seconds with no activity required to become afk. + - :code:`poll_time` Time in seconds between checks for activity. + - :code:`update_time` Not yet implemented. - aw-watcher-window: - - :code:`poll_time` Time in seconds between window checks. - - :code:`exclude_title` Don't track window titles - - :code:`update_time` Not yet implemented. + - :code:`poll_time` Time in seconds between window checks. + - :code:`exclude_title` Don't track window titles + - :code:`update_time` Not yet implemented. diff --git a/src/features/filtering-data.rst b/src/features/filtering-data.rst index 185b3ac..3a23d6c 100644 --- a/src/features/filtering-data.rst +++ b/src/features/filtering-data.rst @@ -16,5 +16,5 @@ For the ones who believe they can adequately protect their data, they should be While we figure out how to best implement this feature, here are some options: - - Manually `pausing logging <./pausing-logging.html>`_. - - Redacting sensitive events from the database using the ``redact_events.py`` example in :gh-aw:`aw-client`. +- Manually `pausing logging <./pausing-logging.html>`_. +- Redacting sensitive events from the database using the ``redact_events.py`` example in :gh-aw:`aw-client`. diff --git a/src/features/pausing-logging.rst b/src/features/pausing-logging.rst index f2b9e41..6fc55a6 100644 --- a/src/features/pausing-logging.rst +++ b/src/features/pausing-logging.rst @@ -6,5 +6,5 @@ You can do it easily by simply unchecking the watcher module you want to pause i So, if you for example want to pause the logging of window titles: - - Click the ActivityWatch trayicon - - Uncheck 'Modules -> aw-watcher-window' +- Click the ActivityWatch trayicon +- Uncheck 'Modules -> aw-watcher-window' diff --git a/src/features/user-interface.rst b/src/features/user-interface.rst index 5a32f61..efcc47b 100644 --- a/src/features/user-interface.rst +++ b/src/features/user-interface.rst @@ -6,14 +6,14 @@ Web Interface ActivityWatch comes with a web interface which currently has the following features: - - Activity overview - - Most used applications by day - - Timeline - - Most time spent on a website - *(requires the ActivityWatch browser extension)* - - Bucket overview - - When a bucket was last updated - - Listing of the latest events +- Activity overview + - Most used applications by day + - Timeline + - Most time spent on a website + *(requires the ActivityWatch browser extension)* +- Bucket overview + - When a bucket was last updated + - Listing of the latest events More advanced and configurable visualization (such as the ones found in Zenobase and RescueTime) is not a priority and is unlikely to get implemented as a part of the core ActivityWatch project anytime soon. @@ -23,6 +23,5 @@ Tray icon The tray icon (aw-qt) manages the core ActivityWatch services (server + watchers) and offers: - - Manage which ActivityWatch services to run - - Popup when a service crashes - +- Manage which ActivityWatch services to run +- Popup when a service crashes diff --git a/src/importers.rst b/src/importers.rst index a81637b..c9cc1f4 100644 --- a/src/importers.rst +++ b/src/importers.rst @@ -5,8 +5,8 @@ ActivityWatch can't track everything, so sometimes you might want to import data There aren't many yet, but here are some attempts: - - :gh-aw:`aw-importer-smartertime`, imports from `smartertime`_ (Android time tracker). - - LastFM importer, :gh-user:`ErikBjare` has code for it somewhere, ask him if you're interested. +- :gh-aw:`aw-importer-smartertime`, imports from `smartertime`_ (Android time tracker). +- LastFM importer, :gh-user:`ErikBjare` has code for it somewhere, ask him if you're interested. .. _smartertime: https://play.google.com/store/apps/details?id=com.smartertime&hl=en diff --git a/src/index.rst b/src/index.rst index 87a5dbb..0c78537 100644 --- a/src/index.rst +++ b/src/index.rst @@ -1,10 +1,14 @@ -.. image:: banner.png +.. image:: ../media/banners/banner.png + +| Welcome to the ActivityWatch documentation! =========================================== If you are new to ActivityWatch, check out the :ref:`Getting started guide `. +Table of contents +----------------- .. _user-docs: .. toctree:: @@ -38,12 +42,13 @@ If you are new to ActivityWatch, check out the :ref:`Getting started guide