From fde568bdfbbbe97754c7f6674865e6f11cdac55a Mon Sep 17 00:00:00 2001 From: Carlos Brandt Date: Wed, 24 Jan 2024 16:07:09 +0100 Subject: [PATCH] Implement GH workflow to compile list of projects docs issues --- .github/workflows/documentation_issues.yml | 40 ++++ README.md | 7 + workflows/documentation_issues.md | 108 +++++++++ .../documentation_issues/fetch_issues.py | 219 ++++++++++++++++++ workflows/documentation_issues/issues.csv | 107 +++++++++ workflows/documentation_issues/repos.txt | 10 + 6 files changed, 491 insertions(+) create mode 100644 .github/workflows/documentation_issues.yml create mode 100644 workflows/documentation_issues.md create mode 100644 workflows/documentation_issues/fetch_issues.py create mode 100644 workflows/documentation_issues/issues.csv create mode 100644 workflows/documentation_issues/repos.txt diff --git a/.github/workflows/documentation_issues.yml b/.github/workflows/documentation_issues.yml new file mode 100644 index 0000000..83657de --- /dev/null +++ b/.github/workflows/documentation_issues.yml @@ -0,0 +1,40 @@ +name: Query subprojects documentation issues + +on: + schedule: + - cron: '5 5 * * *' # Runs daily at 5:05am UTC + + workflow_dispatch: + + +jobs: + query-issues: + runs-on: ubuntu-latest + permissions: + contents: write + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.x' + + - name: Install Dependencies + run: | + pip install requests + + - name: Fetch Documentation Issues + run: | + cd workflows/documentation_issues + python fetch_issues.py --write-md ../documentation_issues.md + + - name: Commit and Push if Changes Exist + run: | + git config --global user.name 'GitHub Action' + git config --global user.email 'action@github.com' + git add . + git diff --staged --quiet || git commit -m "Update documentation issues" + git push diff --git a/README.md b/README.md index a3eadc0..a152aef 100644 --- a/README.md +++ b/README.md @@ -38,3 +38,10 @@ Read more about the Docs Working Group's founding (and related discussions) at t - Discussion in Jupyter/Governance where to place the workgroup: https://github.com/jupyter/governance/issues/184 - Ping JupyterHub community: https://github.com/jupyterhub/mybinder.org-deploy/issues/2732 & https://github.com/jupyterhub/team-compass/issues/681 - Ping Jupyter/Jupyter community: https://github.com/jupyter/jupyter/issues/699 + +## Sub-projects `documentation` issues + +Currently open 'documentation' issues in Jupyter subprojects repositories: + +- [Documentation issues](workflows/documentation_issues.md) + diff --git a/workflows/documentation_issues.md b/workflows/documentation_issues.md new file mode 100644 index 0000000..4e18427 --- /dev/null +++ b/workflows/documentation_issues.md @@ -0,0 +1,108 @@ +|repo|number|title|url| +|---|---|---|---| +|jupyter/jupyter|683|Add persona centric docs|https://github.com/jupyter/jupyter/issues/683| +|jupyter/jupyter|667|Use excalidraw for our manually-created diagrams|https://github.com/jupyter/jupyter/issues/667| +|jupyter/jupyter|657|Refactor the documentation to use the main branch|https://github.com/jupyter/jupyter/issues/657| +|jupyter/jupyter|620|A11y - Jupyter logo does not have enough contrast in dark mode|https://github.com/jupyter/jupyter/issues/620| +|jupyter/jupyter|581|Why have an Advanced Topics section when there is only one "topic?"|https://github.com/jupyter/jupyter/issues/581| +|jupyter/jupyter|511|Anyone want to help with a round of documentation improvements?|https://github.com/jupyter/jupyter/issues/511| +|jupyter/jupyter|430|Translating Official Documentation to Spanish|https://github.com/jupyter/jupyter/issues/430| +|jupyter/jupyter|424|Notebook server API documentation lacks information about trust|https://github.com/jupyter/jupyter/issues/424| +|jupyter/jupyter|412|Some things we can improve in the documentation|https://github.com/jupyter/jupyter/issues/412| +|jupyter/jupyter|306|Create a man page|https://github.com/jupyter/jupyter/issues/306| +|jupyter/jupyter|242|Document JSON config format|https://github.com/jupyter/jupyter/issues/242| +|jupyter/jupyter|220|Glossary in docs|https://github.com/jupyter/jupyter/issues/220| +|jupyter/jupyter|216|Review top-level docs for prospective kernel authors|https://github.com/jupyter/jupyter/issues/216| +|jupyter/jupyter|190|Citing Jupyter|https://github.com/jupyter/jupyter/issues/190| +|jupyter/jupyter|159|[docs/theme] Pay attention to the "width" of screenshot.|https://github.com/jupyter/jupyter/issues/159| +|jupyter/jupyter|137|Too many documentation kill the documentation ?|https://github.com/jupyter/jupyter/issues/137| +|jupyter/jupyter|128|Create a developer guide - action item from dev mtg|https://github.com/jupyter/jupyter/issues/128| +|jupyter/jupyter|109|Link to dev-install from Install section.|https://github.com/jupyter/jupyter/issues/109| +|jupyter/jupyter|66|[Docs] list supported mimetype |https://github.com/jupyter/jupyter/issues/66| +|jupyter/jupyter|51|Create a better way to manage subproject docs|https://github.com/jupyter/jupyter/issues/51| +|jupyter/notebook|7149|Provide access to the documentation for older version|https://github.com/jupyter/notebook/issues/7149| +|jupyter/notebook|7148|Installation guide (android, termux)|https://github.com/jupyter/notebook/issues/7148| +|jupyter/notebook|7029|Add guidelines for setting up development environment using yarn and npm in CONTRIBUTING.md|https://github.com/jupyter/notebook/issues/7029| +|jupyter/notebook|7015|Missing notebook.auth submodule?|https://github.com/jupyter/notebook/issues/7015| +|jupyter/notebook|6987|JN 7 → Code Folding starts at the first line regardless the type|https://github.com/jupyter/notebook/issues/6987| +|jupyter/notebook|6981|Rework Notebook 7 docs accessibility section|https://github.com/jupyter/notebook/issues/6981| +|jupyter/notebook|6891|`@web.authenticated` decorator with IPythonHandler is not working on nbclassic|https://github.com/jupyter/notebook/issues/6891| +|jupyter/notebook|6875|Get versioned Notebook framework trove classifiers on PyPI|https://github.com/jupyter/notebook/issues/6875| +|jupyter/notebook|6849|Revise `pyzmq` requirements in documentation|https://github.com/jupyter/notebook/issues/6849| +|jupyter/notebook|6848|Very poor navigation in new readthedocs builds|https://github.com/jupyter/notebook/issues/6848| +|jupyter/notebook|6680|Add a large deprecation notice to the front-end extensions documentation|https://github.com/jupyter/notebook/issues/6680| +|jupyter/notebook|6659|Document .ipynb_checkpoints directory|https://github.com/jupyter/notebook/issues/6659| +|jupyter/notebook|6644|Updates to the contributor.rst file and addition of CONFIGURATION.md file|https://github.com/jupyter/notebook/pull/6644| +|jupyter/notebook|6486|feature request: add run buttons like ipynb extension for vscode|https://github.com/jupyter/notebook/issues/6486| +|jupyter/notebook|4304|Running `jupyter notebook` opens visual studio code, not a browser|https://github.com/jupyter/notebook/issues/4304| +|jupyter/notebook|4178|Buttons don't show up properly in Sphinx docs|https://github.com/jupyter/notebook/issues/4178| +|jupyter/notebook|3550|Add faq entry about installing on python without sqlite extensions|https://github.com/jupyter/notebook/issues/3550| +|jupyter/notebook|1744|Safari can't connect to kernel|https://github.com/jupyter/notebook/issues/1744| +|jupyter/notebook|1643|Run cells from script or the command line?|https://github.com/jupyter/notebook/issues/1643| +|jupyter/notebook|1473|Translating notebook contents|https://github.com/jupyter/notebook/issues/1473| +|jupyter/notebook|916|File save hooks—docs & question|https://github.com/jupyter/notebook/issues/916| +|jupyter/notebook|811|Internal links / references to outputs|https://github.com/jupyter/notebook/issues/811| +|jupyter/notebook|788|Add a doc page for tips on using Spark|https://github.com/jupyter/notebook/issues/788| +|jupyter/notebook|660|Update public server document with troubleshooting and additional resources|https://github.com/jupyter/notebook/issues/660| +|jupyterhub/jupyterhub|4682|Note that you can throw a 403 from check_allowed|https://github.com/jupyterhub/jupyterhub/pull/4682| +|jupyterhub/jupyterhub|4673|Document / better support for separating user domains from the Hub domain|https://github.com/jupyterhub/jupyterhub/issues/4673| +|jupyterhub/jupyterhub|4669|try redocly for REST API|https://github.com/jupyterhub/jupyterhub/issues/4669| +|jupyterhub/jupyterhub|4656|FastAPI service example - Authorization header not sent in subsequent requests|https://github.com/jupyterhub/jupyterhub/issues/4656| +|jupyterhub/jupyterhub|4653|Minor broken docs: reference to wiki|https://github.com/jupyterhub/jupyterhub/issues/4653| +|jupyterhub/jupyterhub|4610|Better documentation on how to customize the home page|https://github.com/jupyterhub/jupyterhub/issues/4610| +|jupyterhub/jupyterhub|4253|docs: simplify api docs generation for comparison|https://github.com/jupyterhub/jupyterhub/pull/4253| +|jupyterhub/jupyterhub|4252|docs: classes generated docs sometimes include non-traits members, and sometimes do|https://github.com/jupyterhub/jupyterhub/issues/4252| +|jupyterhub/jupyterhub|4241|More documentation on the implications of `server.name`|https://github.com/jupyterhub/jupyterhub/issues/4241| +|jupyterhub/jupyterhub|4213|`post_auth_hook` documentation update|https://github.com/jupyterhub/jupyterhub/issues/4213| +|jupyterhub/jupyterhub|4203|PAM Authentication failed|https://github.com/jupyterhub/jupyterhub/issues/4203| +|jupyterhub/jupyterhub|4200|Doc fix|https://github.com/jupyterhub/jupyterhub/pull/4200| +|jupyterhub/jupyterhub|4197|Unaligned Text Blocks on JupyterHub REST API Page (Mobile View)|https://github.com/jupyterhub/jupyterhub/issues/4197| +|jupyterhub/jupyterhub|4138|404 Error when try to "edit this page" on JupyterHub home page|https://github.com/jupyterhub/jupyterhub/issues/4138| +|jupyterhub/jupyterhub|4108|I corrected errors and made an update to api-only.md|https://github.com/jupyterhub/jupyterhub/pull/4108| +|jupyterhub/jupyterhub|3814|Update JupyterHub REST API permission examples with jupyterhub-idle-culler|https://github.com/jupyterhub/jupyterhub/issues/3814| +|jupyterhub/jupyterhub|3801|Illustrate create() classmethod idea|https://github.com/jupyterhub/jupyterhub/pull/3801| +|jupyterhub/jupyterhub|3710|Unify the documentation for idle-culler|https://github.com/jupyterhub/jupyterhub/issues/3710| +|jupyterhub/jupyterhub|3684|More detailed docs on direct network interactions|https://github.com/jupyterhub/jupyterhub/issues/3684| +|jupyterhub/jupyterhub|3313|Documentation of jupyterhub.dbutil and alembic revisions|https://github.com/jupyterhub/jupyterhub/issues/3313| +|jupyterhub/jupyterhub|3113|Missing HTTP security headers|https://github.com/jupyterhub/jupyterhub/issues/3113| +|jupyterhub/jupyterhub|3080|Add a documentation section describing the structure of this repository|https://github.com/jupyterhub/jupyterhub/issues/3080| +|jupyterhub/jupyterhub|2855|Auto-generate docs for telemetry events|https://github.com/jupyterhub/jupyterhub/issues/2855| +|jupyterhub/jupyterhub|2726|Jupyter(Hub) conceptual intro|https://github.com/jupyterhub/jupyterhub/pull/2726| +|jupyterhub/jupyterhub|2593|Include the instruction `WorkingDirectory=/etc/jupyterhub` in system service Wiki|https://github.com/jupyterhub/jupyterhub/issues/2593| +|jupyterhub/jupyterhub|2481|Include Debian package in documentation ? |https://github.com/jupyterhub/jupyterhub/issues/2481| +|jupyterhub/jupyterhub|2134|Docs: Unclear / confusing DB upgrade instructions|https://github.com/jupyterhub/jupyterhub/issues/2134| +|jupyterhub/jupyterhub|2049|Docs: Missing a chapter on monitoring / observability|https://github.com/jupyterhub/jupyterhub/issues/2049| +|jupyterhub/jupyterhub|1310|Customize DockerHub documentation for JupyterHub|https://github.com/jupyterhub/jupyterhub/issues/1310| +|jupyterlab/jupyterlab|15749|Improve documentation for `jupyter.lab.transform`|https://github.com/jupyterlab/jupyterlab/issues/15749| +|jupyterlab/jupyterlab|15743|Add a link to postmortem for 3.6.7 release|https://github.com/jupyterlab/jupyterlab/pull/15743| +|jupyterlab/jupyterlab|15724|Update maintainers affiliation|https://github.com/jupyterlab/jupyterlab/pull/15724| +|jupyterlab/jupyterlab|15626|Update lifecycle info for JupyterLab major versions|https://github.com/jupyterlab/jupyterlab/pull/15626| +|jupyterlab/jupyterlab|15623|Dark High Contrast Theme for JupyterLab with Improved Sidebar Focus Indication|https://github.com/jupyterlab/jupyterlab/pull/15623| +|jupyterlab/jupyterlab|15483|Reopen recently opened/closed files and modal navigation|https://github.com/jupyterlab/jupyterlab/pull/15483| +|jupyterlab/jupyterlab|15425|Should proxy environment variables be documented?|https://github.com/jupyterlab/jupyterlab/issues/15425| +|jupyterlab/jupyterlab|15417|Add dedicated plugin system document|https://github.com/jupyterlab/jupyterlab/pull/15417| +|jupyterlab/jupyterlab|15375|Some galata improvements|https://github.com/jupyterlab/jupyterlab/pull/15375| +|jupyterlab/jupyterlab|15139|Mermaid Usage Instructions Missing|https://github.com/jupyterlab/jupyterlab/issues/15139| +|jupyterlab/jupyterlab|15099|JupyterLab documentation wishlist|https://github.com/jupyterlab/jupyterlab/issues/15099| +|jupyterlab/jupyterlab|14964|Add a screenshot with shell areas overview|https://github.com/jupyterlab/jupyterlab/pull/14964| +|jupyterlab/jupyterlab|14934|Links are broken in Notebooks documentation |https://github.com/jupyterlab/jupyterlab/issues/14934| +|jupyterlab/jupyterlab|14838|Lab/NB7 extension compatibility docs|https://github.com/jupyterlab/jupyterlab/pull/14838| +|jupyterlab/jupyterlab|14826|Document process of adding new commands to the command palette |https://github.com/jupyterlab/jupyterlab/issues/14826| +|jupyterlab/jupyterlab|14775|3.6.5: documentation build fails|https://github.com/jupyterlab/jupyterlab/issues/14775| +|jupyterlab/jupyterlab|14730|How to add/insert a new cell with pre defined content to cellList in 4.0.2|https://github.com/jupyterlab/jupyterlab/issues/14730| +|jupyterlab/jupyterlab|14679|Default "open" application when opening files inside Jupyterlab|https://github.com/jupyterlab/jupyterlab/issues/14679| +|jupyterlab/jupyterlab|14675|Automatic download links per OS|https://github.com/jupyterlab/jupyterlab/pull/14675| +|jupyterlab/jupyterlab|14669|Extension tutorial enhancement|https://github.com/jupyterlab/jupyterlab/pull/14669| +|jupyterlab/jupyterlab|14594|Failed validating settings|https://github.com/jupyterlab/jupyterlab/issues/14594| +|jupyterlab/jupyterlab|14445|better document the metadata-related changes in jlab4 extension API|https://github.com/jupyterlab/jupyterlab/issues/14445| +|jupyterlab/jupyterlab|14428|Updating extension status in migration guide|https://github.com/jupyterlab/jupyterlab/pull/14428| +|jupyterlab/jupyterlab|14396|Create an accessibility section in the user JupyterLab documentation|https://github.com/jupyterlab/jupyterlab/issues/14396| +|jupyterlab/jupyterlab|14386|Support interactivity for python source files (ipython's cell magics and live execution)|https://github.com/jupyterlab/jupyterlab/issues/14386| +|jupyterlab/jupyterlab|14351|Documenting the requirements of `OK` extension status|https://github.com/jupyterlab/jupyterlab/issues/14351| +|jupyterlab/jupyterlab|14294|Better messaging around conflicts with sharedPackages|https://github.com/jupyterlab/jupyterlab/issues/14294| +|jupyterlab/jupyterlab|14283|Trying to disable build check, current instructions not working as expected|https://github.com/jupyterlab/jupyterlab/issues/14283| +|jupyterlab/jupyterlab|14258|Lumino Widgets >= 2.0.0 is incompatible with JupyterLab Extension Tutorial example code|https://github.com/jupyterlab/jupyterlab/issues/14258| +|jupyterlab/jupyterlab|14046|Clean up license|https://github.com/jupyterlab/jupyterlab/pull/14046| +|jupyterlab/jupyterlab-desktop|666|Support Windows Subsystem for Linux (WSL)|https://github.com/jupyterlab/jupyterlab-desktop/issues/666| +|jupyterlab/jupyterlab-desktop|654|conversation starter for introductory docs|https://github.com/jupyterlab/jupyterlab-desktop/pull/654| +|jupyterlab/jupyterlab-desktop|577|After upgrading JupyterLab using pip, I started jupyter-lab from the windows command and got an error.|https://github.com/jupyterlab/jupyterlab-desktop/issues/577| diff --git a/workflows/documentation_issues/fetch_issues.py b/workflows/documentation_issues/fetch_issues.py new file mode 100644 index 0000000..ab21963 --- /dev/null +++ b/workflows/documentation_issues/fetch_issues.py @@ -0,0 +1,219 @@ +""" +Write CSV table with Subproject's issues labeled as 'documentation' + +The list of subprojects to query is provided in `DEFAULT_REPOS_FILE` variable, +entries in this file are repository names in GitHub -- *fullnames --, +specified as "{org}/{repository}" (eg, `jupyterlab/jupyterlab`). + +The repositories are queried for all their issues with 'documetation' label. +For each issue returned, we take note of its `number` (ID), title, and URL. + +The answer is written as a CSV table with fields defined in FIELDNAMES_CSV. +""" + +# Repositories to query +DEFAULT_REPOS_FILE='repos.txt' + +# Output table filename +DEFAULT_ISSUES_FILE='issues.csv' + +# Table columns +FIELDNAMES = ['repo', 'number', 'title', 'url'] + + +import csv +import requests + + +def read_repos(filename): + """ + Return list of repositories in 'filename'. + + Example 'filename': + $ cat > filename.txt << EOF + jupyterlab/jupyterlab + jupyterlab/jupyterlab-desktop + jupyter/notebook + jupyterhub/jupyterhub + EOF + """ + with open(filename) as file: + lines = file.readlines() + lines = [ line.strip() for line in lines ] + lines = [ line for line in lines if line and line[0] != '#' ] + return lines + + +def fetch_issues(repo, label='documentation'): + """ + Query Github repos for issues with 'label' + """ + url = f"https://api.github.com/repos/{repo}/issues?labels={label}" + response = requests.get(url) + issues = {} + if response.status_code == 200: + for issue in response.json(): + key = f"{repo}:{issue['number']}" + issues[key] = { + 'title': issue['title'], + 'url': issue['html_url'] + } + return issues + + +# CSV reader/writer arguments for our 'issues' file +_CSV_ARGS = dict( + fieldnames = FIELDNAMES, + quoting = csv.QUOTE_NONNUMERIC, +) + + +def write_issues(issues, filename, write_md=None, write_html=None): + """ + Write 'issues' to CSV 'filename'. + + Write a Markdown version if 'write_md'. + Write an HTML version if 'write_html'. + + Return list of filename(s) created. + """ + def _unpack(key, issue): + repo, number = key.split(':') + issue.update({'repo':repo, 'number':number}) + return issue + + def _write_csv(issues, filename): + """Write CSV file""" + with open(filename, 'w') as file: + writer = csv.DictWriter(file, **_CSV_ARGS) + # Write header line (ie, fieldnames) + writer.writeheader() + for key,issue in issues.items(): + issue = _unpack(key, issue) + writer.writerow(issue) + return filename + + def _write_md(issues, filename): + """Write Markdown table file""" + with open(filename, 'w') as file: + file.write(f"|{'|'.join(FIELDNAMES)}|\n") + file.write(f"|{'|'.join(['---']*len(FIELDNAMES))}|\n") + for key,issue in issues.items(): + issue = _unpack(key, issue) + file.write(f"|{'|'.join(issue[key] for key in FIELDNAMES)}|\n") + return filename + + def _write_html(issues, filename): + """Write HTML (table) file""" + html = "" + html += ("" + f"{''.join( f'' for field in FIELDNAMES )}" + "") + for key,issue in issues.items(): + issue = _unpack(key, issue) + _html = "" + for field in FIELDNAMES: + _html += "" + _html += "" + html += _html + html += "
{field}
" + val = issue[field] + if 'url' in field.lower(): + _html += f'{val}' + else: + _html += val + _html += "
" + with open(filename, 'w') as fp: + fp.write(html) + return filename + + files_out = [] + files_out.append(_write_csv(issues, filename)) + if write_md: + files_out.append(_write_md(issues, write_md)) + if write_html: + files_out.append(_write_html(issues, write_html)) + return files_out + + +def read_issues(filename): + """ + Read issues from CSV 'filename' + """ + issues = {} + with open(filename) as file: + reader = csv.DictReader(file, **_CSV_ARGS) + # Escape the first/header line + next(reader) + for issue in reader: + repo = issue.pop('repo') + number = issue.pop('number') + key = f"{repo}:{number}" + issues[key] = issue + return issues + + +def main(repos_file, issues_file, write_md, write_html): + """ + Write CSV file from 'documentation' issues from 'repos_source.txt' file + + Github repositories listed in 'repos.list' file are queried for issues + with label 'documentation' associated. Title, URL, and issue's number + are collected and written in 'issues.csv'. + """ + ## Issues' label (applied to all repos) + label = 'documentation' + + ## Read list of repositories + repos = read_repos(repos_file) + + # ## Read "old-current" list of issues + # try: + # current_issues = read_issues(issues_file) + # except FileNotFoundError as err: + # current_issues = None + + ## Ignore previous issues, we're not keeping track, we just want today's + current_issues = None + + ## Query repos for issues with 'label' + issues = {} + for repo in repos: + print(f"Querying repo: '{repo}'") + issues.update( + fetch_issues(repo, label=label) + ) + + print(f"{len(issues)} issues found.") + + # if current_issues: + # print("Diff:", set(issues).symmetric_difference(current_issues)) + + ## Merge old/new list of issues + all_issues = current_issues.copy() if current_issues else {} + all_issues.update(issues) + + ## Write "new-current" list of issues + files_out = write_issues(all_issues, issues_file, write_md, write_html) + print(f"Files created: {(', ').join(files_out)}.") + + +if __name__ == "__main__": + import argparse + parser = argparse.ArgumentParser() + parser.add_argument("--repos-file", default=DEFAULT_REPOS_FILE, + help="Filename with list of Jupyter repos") + parser.add_argument("--issues-file", default=DEFAULT_ISSUES_FILE, + help="Filename for issues table (CSV)") + parser.add_argument("--write-md", default=None, + help="Write Markdown (table) version if given") + parser.add_argument("--write-html", default=None, + help="Write HTML (table) version if given") + args = parser.parse_args() + + main( + repos_file=args.repos_file, + issues_file=args.issues_file, + write_md=args.write_md, + write_html=args.write_html + ) diff --git a/workflows/documentation_issues/issues.csv b/workflows/documentation_issues/issues.csv new file mode 100644 index 0000000..3dd8ef6 --- /dev/null +++ b/workflows/documentation_issues/issues.csv @@ -0,0 +1,107 @@ +"repo","number","title","url" +"jupyter/jupyter","683","Add persona centric docs","https://github.com/jupyter/jupyter/issues/683" +"jupyter/jupyter","667","Use excalidraw for our manually-created diagrams","https://github.com/jupyter/jupyter/issues/667" +"jupyter/jupyter","657","Refactor the documentation to use the main branch","https://github.com/jupyter/jupyter/issues/657" +"jupyter/jupyter","620","A11y - Jupyter logo does not have enough contrast in dark mode","https://github.com/jupyter/jupyter/issues/620" +"jupyter/jupyter","581","Why have an Advanced Topics section when there is only one ""topic?""","https://github.com/jupyter/jupyter/issues/581" +"jupyter/jupyter","511","Anyone want to help with a round of documentation improvements?","https://github.com/jupyter/jupyter/issues/511" +"jupyter/jupyter","430","Translating Official Documentation to Spanish","https://github.com/jupyter/jupyter/issues/430" +"jupyter/jupyter","424","Notebook server API documentation lacks information about trust","https://github.com/jupyter/jupyter/issues/424" +"jupyter/jupyter","412","Some things we can improve in the documentation","https://github.com/jupyter/jupyter/issues/412" +"jupyter/jupyter","306","Create a man page","https://github.com/jupyter/jupyter/issues/306" +"jupyter/jupyter","242","Document JSON config format","https://github.com/jupyter/jupyter/issues/242" +"jupyter/jupyter","220","Glossary in docs","https://github.com/jupyter/jupyter/issues/220" +"jupyter/jupyter","216","Review top-level docs for prospective kernel authors","https://github.com/jupyter/jupyter/issues/216" +"jupyter/jupyter","190","Citing Jupyter","https://github.com/jupyter/jupyter/issues/190" +"jupyter/jupyter","159","[docs/theme] Pay attention to the ""width"" of screenshot.","https://github.com/jupyter/jupyter/issues/159" +"jupyter/jupyter","137","Too many documentation kill the documentation ?","https://github.com/jupyter/jupyter/issues/137" +"jupyter/jupyter","128","Create a developer guide - action item from dev mtg","https://github.com/jupyter/jupyter/issues/128" +"jupyter/jupyter","109","Link to dev-install from Install section.","https://github.com/jupyter/jupyter/issues/109" +"jupyter/jupyter","66","[Docs] list supported mimetype ","https://github.com/jupyter/jupyter/issues/66" +"jupyter/jupyter","51","Create a better way to manage subproject docs","https://github.com/jupyter/jupyter/issues/51" +"jupyter/notebook","7149","Provide access to the documentation for older version","https://github.com/jupyter/notebook/issues/7149" +"jupyter/notebook","7148","Installation guide (android, termux)","https://github.com/jupyter/notebook/issues/7148" +"jupyter/notebook","7029","Add guidelines for setting up development environment using yarn and npm in CONTRIBUTING.md","https://github.com/jupyter/notebook/issues/7029" +"jupyter/notebook","7015","Missing notebook.auth submodule?","https://github.com/jupyter/notebook/issues/7015" +"jupyter/notebook","6987","JN 7 → Code Folding starts at the first line regardless the type","https://github.com/jupyter/notebook/issues/6987" +"jupyter/notebook","6981","Rework Notebook 7 docs accessibility section","https://github.com/jupyter/notebook/issues/6981" +"jupyter/notebook","6891","`@web.authenticated` decorator with IPythonHandler is not working on nbclassic","https://github.com/jupyter/notebook/issues/6891" +"jupyter/notebook","6875","Get versioned Notebook framework trove classifiers on PyPI","https://github.com/jupyter/notebook/issues/6875" +"jupyter/notebook","6849","Revise `pyzmq` requirements in documentation","https://github.com/jupyter/notebook/issues/6849" +"jupyter/notebook","6848","Very poor navigation in new readthedocs builds","https://github.com/jupyter/notebook/issues/6848" +"jupyter/notebook","6680","Add a large deprecation notice to the front-end extensions documentation","https://github.com/jupyter/notebook/issues/6680" +"jupyter/notebook","6659","Document .ipynb_checkpoints directory","https://github.com/jupyter/notebook/issues/6659" +"jupyter/notebook","6644","Updates to the contributor.rst file and addition of CONFIGURATION.md file","https://github.com/jupyter/notebook/pull/6644" +"jupyter/notebook","6486","feature request: add run buttons like ipynb extension for vscode","https://github.com/jupyter/notebook/issues/6486" +"jupyter/notebook","4304","Running `jupyter notebook` opens visual studio code, not a browser","https://github.com/jupyter/notebook/issues/4304" +"jupyter/notebook","4178","Buttons don't show up properly in Sphinx docs","https://github.com/jupyter/notebook/issues/4178" +"jupyter/notebook","3550","Add faq entry about installing on python without sqlite extensions","https://github.com/jupyter/notebook/issues/3550" +"jupyter/notebook","1744","Safari can't connect to kernel","https://github.com/jupyter/notebook/issues/1744" +"jupyter/notebook","1643","Run cells from script or the command line?","https://github.com/jupyter/notebook/issues/1643" +"jupyter/notebook","1473","Translating notebook contents","https://github.com/jupyter/notebook/issues/1473" +"jupyter/notebook","916","File save hooks—docs & question","https://github.com/jupyter/notebook/issues/916" +"jupyter/notebook","811","Internal links / references to outputs","https://github.com/jupyter/notebook/issues/811" +"jupyter/notebook","788","Add a doc page for tips on using Spark","https://github.com/jupyter/notebook/issues/788" +"jupyter/notebook","660","Update public server document with troubleshooting and additional resources","https://github.com/jupyter/notebook/issues/660" +"jupyterhub/jupyterhub","4682","Note that you can throw a 403 from check_allowed","https://github.com/jupyterhub/jupyterhub/pull/4682" +"jupyterhub/jupyterhub","4673","Document / better support for separating user domains from the Hub domain","https://github.com/jupyterhub/jupyterhub/issues/4673" +"jupyterhub/jupyterhub","4669","try redocly for REST API","https://github.com/jupyterhub/jupyterhub/issues/4669" +"jupyterhub/jupyterhub","4656","FastAPI service example - Authorization header not sent in subsequent requests","https://github.com/jupyterhub/jupyterhub/issues/4656" +"jupyterhub/jupyterhub","4653","Minor broken docs: reference to wiki","https://github.com/jupyterhub/jupyterhub/issues/4653" +"jupyterhub/jupyterhub","4610","Better documentation on how to customize the home page","https://github.com/jupyterhub/jupyterhub/issues/4610" +"jupyterhub/jupyterhub","4253","docs: simplify api docs generation for comparison","https://github.com/jupyterhub/jupyterhub/pull/4253" +"jupyterhub/jupyterhub","4252","docs: classes generated docs sometimes include non-traits members, and sometimes do","https://github.com/jupyterhub/jupyterhub/issues/4252" +"jupyterhub/jupyterhub","4241","More documentation on the implications of `server.name`","https://github.com/jupyterhub/jupyterhub/issues/4241" +"jupyterhub/jupyterhub","4213","`post_auth_hook` documentation update","https://github.com/jupyterhub/jupyterhub/issues/4213" +"jupyterhub/jupyterhub","4203","PAM Authentication failed","https://github.com/jupyterhub/jupyterhub/issues/4203" +"jupyterhub/jupyterhub","4200","Doc fix","https://github.com/jupyterhub/jupyterhub/pull/4200" +"jupyterhub/jupyterhub","4197","Unaligned Text Blocks on JupyterHub REST API Page (Mobile View)","https://github.com/jupyterhub/jupyterhub/issues/4197" +"jupyterhub/jupyterhub","4138","404 Error when try to ""edit this page"" on JupyterHub home page","https://github.com/jupyterhub/jupyterhub/issues/4138" +"jupyterhub/jupyterhub","4108","I corrected errors and made an update to api-only.md","https://github.com/jupyterhub/jupyterhub/pull/4108" +"jupyterhub/jupyterhub","3814","Update JupyterHub REST API permission examples with jupyterhub-idle-culler","https://github.com/jupyterhub/jupyterhub/issues/3814" +"jupyterhub/jupyterhub","3801","Illustrate create() classmethod idea","https://github.com/jupyterhub/jupyterhub/pull/3801" +"jupyterhub/jupyterhub","3710","Unify the documentation for idle-culler","https://github.com/jupyterhub/jupyterhub/issues/3710" +"jupyterhub/jupyterhub","3684","More detailed docs on direct network interactions","https://github.com/jupyterhub/jupyterhub/issues/3684" +"jupyterhub/jupyterhub","3313","Documentation of jupyterhub.dbutil and alembic revisions","https://github.com/jupyterhub/jupyterhub/issues/3313" +"jupyterhub/jupyterhub","3113","Missing HTTP security headers","https://github.com/jupyterhub/jupyterhub/issues/3113" +"jupyterhub/jupyterhub","3080","Add a documentation section describing the structure of this repository","https://github.com/jupyterhub/jupyterhub/issues/3080" +"jupyterhub/jupyterhub","2855","Auto-generate docs for telemetry events","https://github.com/jupyterhub/jupyterhub/issues/2855" +"jupyterhub/jupyterhub","2726","Jupyter(Hub) conceptual intro","https://github.com/jupyterhub/jupyterhub/pull/2726" +"jupyterhub/jupyterhub","2593","Include the instruction `WorkingDirectory=/etc/jupyterhub` in system service Wiki","https://github.com/jupyterhub/jupyterhub/issues/2593" +"jupyterhub/jupyterhub","2481","Include Debian package in documentation ? ","https://github.com/jupyterhub/jupyterhub/issues/2481" +"jupyterhub/jupyterhub","2134","Docs: Unclear / confusing DB upgrade instructions","https://github.com/jupyterhub/jupyterhub/issues/2134" +"jupyterhub/jupyterhub","2049","Docs: Missing a chapter on monitoring / observability","https://github.com/jupyterhub/jupyterhub/issues/2049" +"jupyterhub/jupyterhub","1310","Customize DockerHub documentation for JupyterHub","https://github.com/jupyterhub/jupyterhub/issues/1310" +"jupyterlab/jupyterlab","15749","Improve documentation for `jupyter.lab.transform`","https://github.com/jupyterlab/jupyterlab/issues/15749" +"jupyterlab/jupyterlab","15743","Add a link to postmortem for 3.6.7 release","https://github.com/jupyterlab/jupyterlab/pull/15743" +"jupyterlab/jupyterlab","15724","Update maintainers affiliation","https://github.com/jupyterlab/jupyterlab/pull/15724" +"jupyterlab/jupyterlab","15626","Update lifecycle info for JupyterLab major versions","https://github.com/jupyterlab/jupyterlab/pull/15626" +"jupyterlab/jupyterlab","15623","Dark High Contrast Theme for JupyterLab with Improved Sidebar Focus Indication","https://github.com/jupyterlab/jupyterlab/pull/15623" +"jupyterlab/jupyterlab","15483","Reopen recently opened/closed files and modal navigation","https://github.com/jupyterlab/jupyterlab/pull/15483" +"jupyterlab/jupyterlab","15425","Should proxy environment variables be documented?","https://github.com/jupyterlab/jupyterlab/issues/15425" +"jupyterlab/jupyterlab","15417","Add dedicated plugin system document","https://github.com/jupyterlab/jupyterlab/pull/15417" +"jupyterlab/jupyterlab","15375","Some galata improvements","https://github.com/jupyterlab/jupyterlab/pull/15375" +"jupyterlab/jupyterlab","15139","Mermaid Usage Instructions Missing","https://github.com/jupyterlab/jupyterlab/issues/15139" +"jupyterlab/jupyterlab","15099","JupyterLab documentation wishlist","https://github.com/jupyterlab/jupyterlab/issues/15099" +"jupyterlab/jupyterlab","14964","Add a screenshot with shell areas overview","https://github.com/jupyterlab/jupyterlab/pull/14964" +"jupyterlab/jupyterlab","14934","Links are broken in Notebooks documentation ","https://github.com/jupyterlab/jupyterlab/issues/14934" +"jupyterlab/jupyterlab","14838","Lab/NB7 extension compatibility docs","https://github.com/jupyterlab/jupyterlab/pull/14838" +"jupyterlab/jupyterlab","14826","Document process of adding new commands to the command palette ","https://github.com/jupyterlab/jupyterlab/issues/14826" +"jupyterlab/jupyterlab","14775","3.6.5: documentation build fails","https://github.com/jupyterlab/jupyterlab/issues/14775" +"jupyterlab/jupyterlab","14730","How to add/insert a new cell with pre defined content to cellList in 4.0.2","https://github.com/jupyterlab/jupyterlab/issues/14730" +"jupyterlab/jupyterlab","14679","Default ""open"" application when opening files inside Jupyterlab","https://github.com/jupyterlab/jupyterlab/issues/14679" +"jupyterlab/jupyterlab","14675","Automatic download links per OS","https://github.com/jupyterlab/jupyterlab/pull/14675" +"jupyterlab/jupyterlab","14669","Extension tutorial enhancement","https://github.com/jupyterlab/jupyterlab/pull/14669" +"jupyterlab/jupyterlab","14594","Failed validating settings","https://github.com/jupyterlab/jupyterlab/issues/14594" +"jupyterlab/jupyterlab","14445","better document the metadata-related changes in jlab4 extension API","https://github.com/jupyterlab/jupyterlab/issues/14445" +"jupyterlab/jupyterlab","14428","Updating extension status in migration guide","https://github.com/jupyterlab/jupyterlab/pull/14428" +"jupyterlab/jupyterlab","14396","Create an accessibility section in the user JupyterLab documentation","https://github.com/jupyterlab/jupyterlab/issues/14396" +"jupyterlab/jupyterlab","14386","Support interactivity for python source files (ipython's cell magics and live execution)","https://github.com/jupyterlab/jupyterlab/issues/14386" +"jupyterlab/jupyterlab","14351","Documenting the requirements of `OK` extension status","https://github.com/jupyterlab/jupyterlab/issues/14351" +"jupyterlab/jupyterlab","14294","Better messaging around conflicts with sharedPackages","https://github.com/jupyterlab/jupyterlab/issues/14294" +"jupyterlab/jupyterlab","14283","Trying to disable build check, current instructions not working as expected","https://github.com/jupyterlab/jupyterlab/issues/14283" +"jupyterlab/jupyterlab","14258","Lumino Widgets >= 2.0.0 is incompatible with JupyterLab Extension Tutorial example code","https://github.com/jupyterlab/jupyterlab/issues/14258" +"jupyterlab/jupyterlab","14046","Clean up license","https://github.com/jupyterlab/jupyterlab/pull/14046" +"jupyterlab/jupyterlab-desktop","666","Support Windows Subsystem for Linux (WSL)","https://github.com/jupyterlab/jupyterlab-desktop/issues/666" +"jupyterlab/jupyterlab-desktop","654","conversation starter for introductory docs","https://github.com/jupyterlab/jupyterlab-desktop/pull/654" +"jupyterlab/jupyterlab-desktop","577","After upgrading JupyterLab using pip, I started jupyter-lab from the windows command and got an error.","https://github.com/jupyterlab/jupyterlab-desktop/issues/577" diff --git a/workflows/documentation_issues/repos.txt b/workflows/documentation_issues/repos.txt new file mode 100644 index 0000000..8db5b26 --- /dev/null +++ b/workflows/documentation_issues/repos.txt @@ -0,0 +1,10 @@ +# List of repositories to query/source. +# Those repositories will be queried for "documentation" issues. +# +# Commented (#) and blank lines in this file are ignored. + +jupyter/jupyter +jupyter/notebook +jupyterhub/jupyterhub +jupyterlab/jupyterlab +jupyterlab/jupyterlab-desktop