From 9763c679ce5db7ec98088c9e7695b45a98afbcd5 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 17:53:05 -0500 Subject: [PATCH 01/51] . t Working setup - directory structure, pytest, approvalTests. --- .gitignore | 3 ++- .rustup/settings.toml | 4 ++++ .../cleanup_session_notes.pl | 0 .../cleanup_session_notes.prompt | 0 .../session_notes_cleanup}/doit | 0 .../session_notes_cleaner.py | 18 +++++++++++++++++- ...ner.test_import_approvalTests.approved.txt | 1 + tests/__init__.py | 0 tests/test_session_notes_cleaner.py | 19 +++++++++++++++++++ 9 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 .rustup/settings.toml rename {session-notes/cleanup-notes => src/session_notes_cleanup}/cleanup_session_notes.pl (100%) rename {session-notes/cleanup-notes => src/session_notes_cleanup}/cleanup_session_notes.prompt (100%) rename {session-notes/cleanup-notes => src/session_notes_cleanup}/doit (100%) rename session-notes/cleanup-notes/cleanup_session_notes.py => src/session_notes_cleanup/session_notes_cleaner.py (93%) create mode 100644 tests/TestSessionNotesCleaner.test_import_approvalTests.approved.txt create mode 100644 tests/__init__.py create mode 100644 tests/test_session_notes_cleaner.py diff --git a/.gitignore b/.gitignore index 723ef36..21f0e41 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -.idea \ No newline at end of file +.idea +Library/Caches diff --git a/.rustup/settings.toml b/.rustup/settings.toml new file mode 100644 index 0000000..1551bc9 --- /dev/null +++ b/.rustup/settings.toml @@ -0,0 +1,4 @@ +profile = "default" +version = "12" + +[overrides] diff --git a/session-notes/cleanup-notes/cleanup_session_notes.pl b/src/session_notes_cleanup/cleanup_session_notes.pl similarity index 100% rename from session-notes/cleanup-notes/cleanup_session_notes.pl rename to src/session_notes_cleanup/cleanup_session_notes.pl diff --git a/session-notes/cleanup-notes/cleanup_session_notes.prompt b/src/session_notes_cleanup/cleanup_session_notes.prompt similarity index 100% rename from session-notes/cleanup-notes/cleanup_session_notes.prompt rename to src/session_notes_cleanup/cleanup_session_notes.prompt diff --git a/session-notes/cleanup-notes/doit b/src/session_notes_cleanup/doit similarity index 100% rename from session-notes/cleanup-notes/doit rename to src/session_notes_cleanup/doit diff --git a/session-notes/cleanup-notes/cleanup_session_notes.py b/src/session_notes_cleanup/session_notes_cleaner.py similarity index 93% rename from session-notes/cleanup-notes/cleanup_session_notes.py rename to src/session_notes_cleanup/session_notes_cleaner.py index 47f40a6..5a83fa6 100644 --- a/session-notes/cleanup-notes/cleanup_session_notes.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -5,10 +5,17 @@ import shutil import sys + +class SessionNotesCleaner: + def __init__(self): + pass + + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) return match.group(1) if match else None + def slurp_file(filename): try: with open(filename, 'r') as file: @@ -16,21 +23,28 @@ def slurp_file(filename): except FileNotFoundError: return None + def contains_inactive_coauthors(contents): return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) + def contains_active_coauthors(contents): return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) + def contains_session_date(contents): return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) + def delete_inactive_coauthors(contents): - return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) + return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, + flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) + def normalize_coauthor_heading(contents): return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) + def cleanup_file(filename): original_contents = slurp_file(filename) if original_contents is None: @@ -61,9 +75,11 @@ def cleanup_file(filename): os.rename(new_filename, filename) print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") + def main(): for filename in sys.argv[1:]: cleanup_file(filename) + if __name__ == "__main__": main() diff --git a/tests/TestSessionNotesCleaner.test_import_approvalTests.approved.txt b/tests/TestSessionNotesCleaner.test_import_approvalTests.approved.txt new file mode 100644 index 0000000..2e6945c --- /dev/null +++ b/tests/TestSessionNotesCleaner.test_import_approvalTests.approved.txt @@ -0,0 +1 @@ +approvalTests::verify is imported diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py new file mode 100644 index 0000000..94b1fec --- /dev/null +++ b/tests/test_session_notes_cleaner.py @@ -0,0 +1,19 @@ +# test_session_notes_cleaner.py +import unittest +from approvaltests import verify + +from src.session_notes_cleanup.session_notes_cleaner import SessionNotesCleaner + + +class TestSessionNotesCleaner(unittest.TestCase): + def test_initialization(self): + cleaner = SessionNotesCleaner() + # Add assertions here to test initial conditions + self.assertIsNotNone(cleaner) + + def test_import_approvalTests(self): + verify("approvalTests::verify is imported\n") + + +if __name__ == '__main__': + unittest.main() From c14d1365c0f0313d90a178627e31f9ebc5cdcdc7 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 18:03:52 -0500 Subject: [PATCH 02/51] . t Added .ignore entries for 'Python' and 'macOS' --- .gitignore | 197 +++++++++++++++++- .idea/.gitignore | 3 + .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 4 + .idea/mob-programming-rpg_gregorriegler.iml | 12 ++ .idea/modules.xml | 8 + .idea/vcs.xml | 6 + 7 files changed, 234 insertions(+), 2 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/mob-programming-rpg_gregorriegler.iml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml diff --git a/.gitignore b/.gitignore index 21f0e41..8f72e10 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,195 @@ -.idea -Library/Caches +# Copied from https://github.com/github/gitignore/blob/main/Python.gitignore +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +# 2023-12-04. MRW commented out at suggestion of Python.gitignore +# .idea + + + +# 2023-12-04 - Copied from https://github.com/github/gitignore/blob/main/Global/macOS.gitignore +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ +<component name="InspectionProjectProfileManager"> + <settings> + <option name="USE_PROJECT_PROFILE" value="false" /> + <version value="1.0" /> + </settings> +</component> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..ea2923c --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10 (mob-programming-rpg_gregorriegler)" project-jdk-type="Python SDK" /> +</project> \ No newline at end of file diff --git a/.idea/mob-programming-rpg_gregorriegler.iml b/.idea/mob-programming-rpg_gregorriegler.iml new file mode 100644 index 0000000..3d7e4be --- /dev/null +++ b/.idea/mob-programming-rpg_gregorriegler.iml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="PYTHON_MODULE" version="4"> + <component name="NewModuleRootManager"> + <content url="file://$MODULE_DIR$"> + <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> + <sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" /> + <excludeFolder url="file://$MODULE_DIR$/venv" /> + </content> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> +</module> \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..2787959 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/mob-programming-rpg_gregorriegler.iml" filepath="$PROJECT_DIR$/.idea/mob-programming-rpg_gregorriegler.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="" vcs="Git" /> + </component> +</project> \ No newline at end of file From 4ab3e568bf385ad6a453b737ccc8128ab41f1d3e Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 18:05:36 -0500 Subject: [PATCH 03/51] . t Moved files from session-notes/cleanup-notes to src --- session-notes/cleanup-notes/.idea/.gitignore | 3 +++ session-notes/cleanup-notes/.idea/cleanup-notes.iml | 10 ++++++++++ .../.idea/inspectionProfiles/profiles_settings.xml | 6 ++++++ session-notes/cleanup-notes/.idea/misc.xml | 4 ++++ session-notes/cleanup-notes/.idea/modules.xml | 8 ++++++++ session-notes/cleanup-notes/.idea/vcs.xml | 6 ++++++ 6 files changed, 37 insertions(+) create mode 100644 session-notes/cleanup-notes/.idea/.gitignore create mode 100644 session-notes/cleanup-notes/.idea/cleanup-notes.iml create mode 100644 session-notes/cleanup-notes/.idea/inspectionProfiles/profiles_settings.xml create mode 100644 session-notes/cleanup-notes/.idea/misc.xml create mode 100644 session-notes/cleanup-notes/.idea/modules.xml create mode 100644 session-notes/cleanup-notes/.idea/vcs.xml diff --git a/session-notes/cleanup-notes/.idea/.gitignore b/session-notes/cleanup-notes/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/session-notes/cleanup-notes/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/session-notes/cleanup-notes/.idea/cleanup-notes.iml b/session-notes/cleanup-notes/.idea/cleanup-notes.iml new file mode 100644 index 0000000..74d515a --- /dev/null +++ b/session-notes/cleanup-notes/.idea/cleanup-notes.iml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="PYTHON_MODULE" version="4"> + <component name="NewModuleRootManager"> + <content url="file://$MODULE_DIR$"> + <excludeFolder url="file://$MODULE_DIR$/venv" /> + </content> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> +</module> \ No newline at end of file diff --git a/session-notes/cleanup-notes/.idea/inspectionProfiles/profiles_settings.xml b/session-notes/cleanup-notes/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/session-notes/cleanup-notes/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ +<component name="InspectionProjectProfileManager"> + <settings> + <option name="USE_PROJECT_PROFILE" value="false" /> + <version value="1.0" /> + </settings> +</component> \ No newline at end of file diff --git a/session-notes/cleanup-notes/.idea/misc.xml b/session-notes/cleanup-notes/.idea/misc.xml new file mode 100644 index 0000000..cd3a88e --- /dev/null +++ b/session-notes/cleanup-notes/.idea/misc.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10 (cleanup-notes)" project-jdk-type="Python SDK" /> +</project> \ No newline at end of file diff --git a/session-notes/cleanup-notes/.idea/modules.xml b/session-notes/cleanup-notes/.idea/modules.xml new file mode 100644 index 0000000..3855ef9 --- /dev/null +++ b/session-notes/cleanup-notes/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/cleanup-notes.iml" filepath="$PROJECT_DIR$/.idea/cleanup-notes.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/session-notes/cleanup-notes/.idea/vcs.xml b/session-notes/cleanup-notes/.idea/vcs.xml new file mode 100644 index 0000000..b2bdec2 --- /dev/null +++ b/session-notes/cleanup-notes/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="$PROJECT_DIR$/../.." vcs="Git" /> + </component> +</project> \ No newline at end of file From 469c09235aa7acbf21e4e3caa936dad08423b81c Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 18:58:18 -0500 Subject: [PATCH 04/51] . t Ignore tests/*.received.* files --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 8f72e10..f28bd65 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ +# ApprovalTests +tests/*.approved.* + + # Copied from https://github.com/github/gitignore/blob/main/Python.gitignore # Byte-compiled / optimized / DLL files __pycache__/ From b6bfadb1bda85e7d2c1c8010a2adadd00b367561 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 18:59:29 -0500 Subject: [PATCH 05/51] . t Passing test - test_strip_trailing_whitespace --- tests/test_session_notes_cleaner.py | 99 +++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 94b1fec..f1ca6b1 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -1,4 +1,5 @@ # test_session_notes_cleaner.py +import re import unittest from approvaltests import verify @@ -14,6 +15,104 @@ def test_initialization(self): def test_import_approvalTests(self): verify("approvalTests::verify is imported\n") + def strip_trailing_whitespace(self, text): + # Regular expression pattern to match trailing horizontal whitespace on each line, excluding newline + pattern = r'[ \t]+\n' + # Replace matched patterns with nothing (i.e., remove them) + return re.sub(pattern, '\n', text) + + def sample_file_contents(self): + return '''# Session Date: 2023-12-07 + + ## Active Co-Authors + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + + + ## Inactive Co-Authors + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: arrockt <cariari385@gmail.com> + Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> + Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> + Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> + Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> + Co-Authored-By: Idan Melamed <idanmel@gmail.com> + Co-Authored-By: Rea <reasu@protonmail.com> + Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> + Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + Co-Authored-By: David Campey <campey@gmail.com> + Co-Authored-by: Zac Ball <zac156@gmail.com> + Co-Authored-By: Kitastro <admin@metafor.co.za> + Co-Authored-By: Woody Zuill <wzuill@yahoo.com> + Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + + # Agenda + + ## Bond (30 min.) + + - Try a [warmup exercise](../docs/warmup-exercises.md) + + ## Do ? + FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + + ## Mid Session Retro (10 min.) + Tips: + - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY + - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can + + How did that feel (1-2 words / 30 sec)? + - frustrating, fulfilling, overwhelmed + - exciting, playful + - curious, scared, fulfilled + - rocky, relieved + - resfreshing, collaborative + + What did you like so much you want to do more of it / do it again? + - clojure + - everybody involved + - observation doing thinking for another person + - practicing thinking out loud +1 + - Nn8 doing like a pro: + - I feel overwhelmed + - Modeled being honest and verbalizing where he was and what he was thinking. + - Stream of thought + - Modeling how we can get off track and on track + - Copying an old test case to create a new one + + What might you want to try differently / experiment? + - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) + + ## Do ? + Continue FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + # 2nd Retro (END OF SESSION) + + What to do next? Vote on Proposals: + - Proposals: + - 1. spending less time deciding on what we're doing (more time coding) + - 2. shared leadership, dedicated facilitation + - 3. consider a checklist for newcomers (was a discussion about this) + - 4. consider items in the backlog (reminders, what are we working on, etc. +''' + + def test_strip_trailing_whitespace(self): + text = self.sample_file_contents() + stripped_text = self.strip_trailing_whitespace(text) + verify(stripped_text) + if __name__ == '__main__': unittest.main() From be0cdf686bb082d3be4cfbe34b571242fe4117f4 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 18:59:41 -0500 Subject: [PATCH 06/51] . t Passing test - test_strip_trailing_whitespace --- ...est_strip_trailing_whitespace.approved.txt | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt diff --git a/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt b/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt new file mode 100644 index 0000000..dbf1a5a --- /dev/null +++ b/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt @@ -0,0 +1,84 @@ +# Session Date: 2023-12-07 + + ## Active Co-Authors + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + + + ## Inactive Co-Authors + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: arrockt <cariari385@gmail.com> + Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> + Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> + Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> + Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> + Co-Authored-By: Idan Melamed <idanmel@gmail.com> + Co-Authored-By: Rea <reasu@protonmail.com> + Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> + Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + Co-Authored-By: David Campey <campey@gmail.com> + Co-Authored-by: Zac Ball <zac156@gmail.com> + Co-Authored-By: Kitastro <admin@metafor.co.za> + Co-Authored-By: Woody Zuill <wzuill@yahoo.com> + Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + + # Agenda + + ## Bond (30 min.) + + - Try a [warmup exercise](../docs/warmup-exercises.md) + + ## Do ? + FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + + ## Mid Session Retro (10 min.) + Tips: + - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY + - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can + + How did that feel (1-2 words / 30 sec)? + - frustrating, fulfilling, overwhelmed + - exciting, playful + - curious, scared, fulfilled + - rocky, relieved + - resfreshing, collaborative + + What did you like so much you want to do more of it / do it again? + - clojure + - everybody involved + - observation doing thinking for another person + - practicing thinking out loud +1 + - Nn8 doing like a pro: + - I feel overwhelmed + - Modeled being honest and verbalizing where he was and what he was thinking. + - Stream of thought + - Modeling how we can get off track and on track + - Copying an old test case to create a new one + + What might you want to try differently / experiment? + - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) + + ## Do ? + Continue FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + # 2nd Retro (END OF SESSION) + + What to do next? Vote on Proposals: + - Proposals: + - 1. spending less time deciding on what we're doing (more time coding) + - 2. shared leadership, dedicated facilitation + - 3. consider a checklist for newcomers (was a discussion about this) + - 4. consider items in the backlog (reminders, what are we working on, etc. From 510f0586938427fca7e2dc4e117773516b2cd3e4 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 19:06:54 -0500 Subject: [PATCH 07/51] . t Simpler input to test_strip_trailing_whitespace --- ...est_strip_trailing_whitespace.approved.txt | 89 ++----------------- tests/test_session_notes_cleaner.py | 16 +++- 2 files changed, 22 insertions(+), 83 deletions(-) diff --git a/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt b/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt index dbf1a5a..5223074 100644 --- a/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt +++ b/tests/TestSessionNotesCleaner.test_strip_trailing_whitespace.approved.txt @@ -1,84 +1,11 @@ -# Session Date: 2023-12-07 +Line with trailing spaces +Line with trailing tabs + Line with 4 leading spaces + Line with 2 leading tabs +Following line is empty - ## Active Co-Authors - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> +Following line has 3 tabs +Following line has 4 spaces - ## Inactive Co-Authors - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: arrockt <cariari385@gmail.com> - Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> - Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> - Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> - Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> - Co-Authored-By: Idan Melamed <idanmel@gmail.com> - Co-Authored-By: Rea <reasu@protonmail.com> - Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> - Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - Co-Authored-By: David Campey <campey@gmail.com> - Co-Authored-by: Zac Ball <zac156@gmail.com> - Co-Authored-By: Kitastro <admin@metafor.co.za> - Co-Authored-By: Woody Zuill <wzuill@yahoo.com> - Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - - # Agenda - - ## Bond (30 min.) - - - Try a [warmup exercise](../docs/warmup-exercises.md) - - ## Do ? - FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - - ## Mid Session Retro (10 min.) - Tips: - - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY - - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can - - How did that feel (1-2 words / 30 sec)? - - frustrating, fulfilling, overwhelmed - - exciting, playful - - curious, scared, fulfilled - - rocky, relieved - - resfreshing, collaborative - - What did you like so much you want to do more of it / do it again? - - clojure - - everybody involved - - observation doing thinking for another person - - practicing thinking out loud +1 - - Nn8 doing like a pro: - - I feel overwhelmed - - Modeled being honest and verbalizing where he was and what he was thinking. - - Stream of thought - - Modeling how we can get off track and on track - - Copying an old test case to create a new one - - What might you want to try differently / experiment? - - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) - - ## Do ? - Continue FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - # 2nd Retro (END OF SESSION) - - What to do next? Vote on Proposals: - - Proposals: - - 1. spending less time deciding on what we're doing (more time coding) - - 2. shared leadership, dedicated facilitation - - 3. consider a checklist for newcomers (was a discussion about this) - - 4. consider items in the backlog (reminders, what are we working on, etc. +This is last line. diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index f1ca6b1..a29411b 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -22,7 +22,7 @@ def strip_trailing_whitespace(self, text): return re.sub(pattern, '\n', text) def sample_file_contents(self): - return '''# Session Date: 2023-12-07 + text = '''# Session Date: 2023-12-07 ## Active Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> @@ -107,9 +107,21 @@ def sample_file_contents(self): - 3. consider a checklist for newcomers (was a discussion about this) - 4. consider items in the backlog (reminders, what are we working on, etc. ''' + return self.strip_trailing_whitespace(text) def test_strip_trailing_whitespace(self): - text = self.sample_file_contents() + text = '''Line with trailing spaces +Line with trailing tabs + Line with 4 leading spaces + Line with 2 leading tabs +Following line is empty + +Following line has 3 tabs + +Following line has 4 spaces + +This is last line. +''' stripped_text = self.strip_trailing_whitespace(text) verify(stripped_text) From 9b944052dbc40629e890859f00a0ed675ce439e4 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 19:11:47 -0500 Subject: [PATCH 08/51] . t New test - test_sample_file_has_no_trailing_whitespace(self) --- tests/test_session_notes_cleaner.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index a29411b..576427b 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -125,6 +125,10 @@ def test_strip_trailing_whitespace(self): stripped_text = self.strip_trailing_whitespace(text) verify(stripped_text) + def test_sample_file_has_no_trailing_whitespace(self): + text = self.sample_file_contents() + stripped_text = self.strip_trailing_whitespace(text) + self.assertEquals(text, stripped_text) if __name__ == '__main__': unittest.main() From 44c9e01e97d838f6212e8f4083d7b024e295bcb9 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 19:57:18 -0500 Subject: [PATCH 09/51] . t 2 new tests for inactive_coauthors - test_contains_inactive_coauthors(self): - def test_delete_inactive_coauthors(self): --- ...t_contains_inactive_coauthors.received.txt | 84 ++++++++ tests/test_session_notes_cleaner.py | 184 ++++++++++-------- 2 files changed, 182 insertions(+), 86 deletions(-) create mode 100644 tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt diff --git a/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt b/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt new file mode 100644 index 0000000..dbf1a5a --- /dev/null +++ b/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt @@ -0,0 +1,84 @@ +# Session Date: 2023-12-07 + + ## Active Co-Authors + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + + + ## Inactive Co-Authors + Co-Authored-By: Blaise Pabon <blaise@gmail.com> + Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> + Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> + Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> + Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> + Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> + Co-Authored-By: arrockt <cariari385@gmail.com> + Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> + Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> + Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> + Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> + Co-Authored-By: Idan Melamed <idanmel@gmail.com> + Co-Authored-By: Rea <reasu@protonmail.com> + Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> + Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + Co-Authored-By: David Campey <campey@gmail.com> + Co-Authored-by: Zac Ball <zac156@gmail.com> + Co-Authored-By: Kitastro <admin@metafor.co.za> + Co-Authored-By: Woody Zuill <wzuill@yahoo.com> + Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + + # Agenda + + ## Bond (30 min.) + + - Try a [warmup exercise](../docs/warmup-exercises.md) + + ## Do ? + FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + + ## Mid Session Retro (10 min.) + Tips: + - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY + - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can + + How did that feel (1-2 words / 30 sec)? + - frustrating, fulfilling, overwhelmed + - exciting, playful + - curious, scared, fulfilled + - rocky, relieved + - resfreshing, collaborative + + What did you like so much you want to do more of it / do it again? + - clojure + - everybody involved + - observation doing thinking for another person + - practicing thinking out loud +1 + - Nn8 doing like a pro: + - I feel overwhelmed + - Modeled being honest and verbalizing where he was and what he was thinking. + - Stream of thought + - Modeling how we can get off track and on track + - Copying an old test case to create a new one + + What might you want to try differently / experiment? + - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) + + ## Do ? + Continue FizzBuzz in Clojure + https://cyber-dojo.org/kata/edit/EtbGU6 + + # 2nd Retro (END OF SESSION) + + What to do next? Vote on Proposals: + - Proposals: + - 1. spending less time deciding on what we're doing (more time coding) + - 2. shared leadership, dedicated facilitation + - 3. consider a checklist for newcomers (was a discussion about this) + - 4. consider items in the backlog (reminders, what are we working on, etc. diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 576427b..316b21f 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -15,6 +15,22 @@ def test_initialization(self): def test_import_approvalTests(self): verify("approvalTests::verify is imported\n") + def test_sample_file_has_no_trailing_whitespace(self): + text = self.sample_file_contents() + stripped_text = self.strip_trailing_whitespace(text) + self.assertEquals(text, stripped_text) + + def test_contains_inactive_coauthors(self): + text = self.sample_file_contents() + cleaner = SessionNotesCleaner() + self.assertTrue(cleaner.contains_inactive_coauthors(text)) + + def test_delete_inactive_coauthors(self): + cleaner = SessionNotesCleaner() + text = self.sample_file_contents() + clean_text = cleaner.delete_inactive_coauthors(text) + verify(clean_text) + def strip_trailing_whitespace(self, text): # Regular expression pattern to match trailing horizontal whitespace on each line, excluding newline pattern = r'[ \t]+\n' @@ -24,88 +40,88 @@ def strip_trailing_whitespace(self, text): def sample_file_contents(self): text = '''# Session Date: 2023-12-07 - ## Active Co-Authors - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> - - - ## Inactive Co-Authors - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: arrockt <cariari385@gmail.com> - Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> - Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> - Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> - Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> - Co-Authored-By: Idan Melamed <idanmel@gmail.com> - Co-Authored-By: Rea <reasu@protonmail.com> - Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> - Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - Co-Authored-By: David Campey <campey@gmail.com> - Co-Authored-by: Zac Ball <zac156@gmail.com> - Co-Authored-By: Kitastro <admin@metafor.co.za> - Co-Authored-By: Woody Zuill <wzuill@yahoo.com> - Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - - # Agenda - - ## Bond (30 min.) - - - Try a [warmup exercise](../docs/warmup-exercises.md) - - ## Do ? - FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - - ## Mid Session Retro (10 min.) - Tips: - - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY - - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can - - How did that feel (1-2 words / 30 sec)? - - frustrating, fulfilling, overwhelmed - - exciting, playful - - curious, scared, fulfilled - - rocky, relieved - - resfreshing, collaborative - - What did you like so much you want to do more of it / do it again? - - clojure - - everybody involved - - observation doing thinking for another person - - practicing thinking out loud +1 - - Nn8 doing like a pro: - - I feel overwhelmed - - Modeled being honest and verbalizing where he was and what he was thinking. - - Stream of thought - - Modeling how we can get off track and on track - - Copying an old test case to create a new one - - What might you want to try differently / experiment? - - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) - - ## Do ? - Continue FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - # 2nd Retro (END OF SESSION) - - What to do next? Vote on Proposals: - - Proposals: - - 1. spending less time deciding on what we're doing (more time coding) - - 2. shared leadership, dedicated facilitation - - 3. consider a checklist for newcomers (was a discussion about this) - - 4. consider items in the backlog (reminders, what are we working on, etc. +## Active Co-Authors +Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> +Co-Authored-By: Blaise Pabon <blaise@gmail.com> +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> + + +## Inactive Co-Authors +Co-Authored-By: Blaise Pabon <blaise@gmail.com> +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> +Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + +# Agenda + +## Bond (30 min.) + +- Try a [warmup exercise](../docs/warmup-exercises.md) + +## Do ? +FizzBuzz in Clojure +https://cyber-dojo.org/kata/edit/EtbGU6 + + +## Mid Session Retro (10 min.) +Tips: +- TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY +- Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can + +How did that feel (1-2 words / 30 sec)? +- frustrating, fulfilling, overwhelmed +- exciting, playful +- curious, scared, fulfilled +- rocky, relieved +- resfreshing, collaborative + +What did you like so much you want to do more of it / do it again? +- clojure +- everybody involved +- observation doing thinking for another person +- practicing thinking out loud +1 +- Nn8 doing like a pro: + - I feel overwhelmed + - Modeled being honest and verbalizing where he was and what he was thinking. + - Stream of thought +- Modeling how we can get off track and on track +- Copying an old test case to create a new one + +What might you want to try differently / experiment? +- Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) + +## Do ? +Continue FizzBuzz in Clojure +https://cyber-dojo.org/kata/edit/EtbGU6 + +# 2nd Retro (END OF SESSION) + +What to do next? Vote on Proposals: +- Proposals: + - 1. spending less time deciding on what we're doing (more time coding) + - 2. shared leadership, dedicated facilitation + - 3. consider a checklist for newcomers (was a discussion about this) + - 4. consider items in the backlog (reminders, what are we working on, etc. ''' return self.strip_trailing_whitespace(text) @@ -125,10 +141,6 @@ def test_strip_trailing_whitespace(self): stripped_text = self.strip_trailing_whitespace(text) verify(stripped_text) - def test_sample_file_has_no_trailing_whitespace(self): - text = self.sample_file_contents() - stripped_text = self.strip_trailing_whitespace(text) - self.assertEquals(text, stripped_text) if __name__ == '__main__': unittest.main() From 07c9fe3ce0b2c9c4c90680ed6fd099c398ca45b4 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 19:59:03 -0500 Subject: [PATCH 10/51] Delete session_notes_cleaner.py --- .../session_notes_cleaner.py | 85 ------------------- 1 file changed, 85 deletions(-) delete mode 100644 src/session_notes_cleanup/session_notes_cleaner.py diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py deleted file mode 100644 index 5a83fa6..0000000 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ /dev/null @@ -1,85 +0,0 @@ -# Python code for the specified tasks - -import re -import os -import shutil -import sys - - -class SessionNotesCleaner: - def __init__(self): - pass - - -def get_date_from_filename(filename): - match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) - return match.group(1) if match else None - - -def slurp_file(filename): - try: - with open(filename, 'r') as file: - return file.read() - except FileNotFoundError: - return None - - -def contains_inactive_coauthors(contents): - return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) - - -def contains_active_coauthors(contents): - return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) - - -def contains_session_date(contents): - return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) - - -def delete_inactive_coauthors(contents): - return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, - flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) - - -def normalize_coauthor_heading(contents): - return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) - - -def cleanup_file(filename): - original_contents = slurp_file(filename) - if original_contents is None: - print(f"File not found: {filename}") - return - - contents = original_contents - date_as_string = get_date_from_filename(filename) - - if not contains_session_date(contents): - contents = f"# Session Date: {date_as_string}\n" + contents - - if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): - contents = delete_inactive_coauthors(contents) - - contents = normalize_coauthor_heading(contents) - - if contents == original_contents: - print(f"No changes were needed for the file: {filename}") - else: - print(f"Changes were made to the file: {filename}") - new_filename = filename + ".new" - with open(new_filename, 'w') as new_file: - new_file.write(contents) - shutil.copystat(filename, new_filename) - original_backup_filename = filename + ".original" - os.rename(filename, original_backup_filename) - os.rename(new_filename, filename) - print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") - - -def main(): - for filename in sys.argv[1:]: - cleanup_file(filename) - - -if __name__ == "__main__": - main() From da1fedd1653e443532e1b9f873c76079eda92931 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:06:55 -0500 Subject: [PATCH 11/51] Revert "Delete session_notes_cleaner.py" This reverts commit 07c9fe3ce0b2c9c4c90680ed6fd099c398ca45b4. --- .../session_notes_cleaner.py | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 src/session_notes_cleanup/session_notes_cleaner.py diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py new file mode 100644 index 0000000..5a83fa6 --- /dev/null +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -0,0 +1,85 @@ +# Python code for the specified tasks + +import re +import os +import shutil +import sys + + +class SessionNotesCleaner: + def __init__(self): + pass + + +def get_date_from_filename(filename): + match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) + return match.group(1) if match else None + + +def slurp_file(filename): + try: + with open(filename, 'r') as file: + return file.read() + except FileNotFoundError: + return None + + +def contains_inactive_coauthors(contents): + return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) + + +def contains_active_coauthors(contents): + return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) + + +def contains_session_date(contents): + return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) + + +def delete_inactive_coauthors(contents): + return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, + flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) + + +def normalize_coauthor_heading(contents): + return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) + + +def cleanup_file(filename): + original_contents = slurp_file(filename) + if original_contents is None: + print(f"File not found: {filename}") + return + + contents = original_contents + date_as_string = get_date_from_filename(filename) + + if not contains_session_date(contents): + contents = f"# Session Date: {date_as_string}\n" + contents + + if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): + contents = delete_inactive_coauthors(contents) + + contents = normalize_coauthor_heading(contents) + + if contents == original_contents: + print(f"No changes were needed for the file: {filename}") + else: + print(f"Changes were made to the file: {filename}") + new_filename = filename + ".new" + with open(new_filename, 'w') as new_file: + new_file.write(contents) + shutil.copystat(filename, new_filename) + original_backup_filename = filename + ".original" + os.rename(filename, original_backup_filename) + os.rename(new_filename, filename) + print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") + + +def main(): + for filename in sys.argv[1:]: + cleanup_file(filename) + + +if __name__ == "__main__": + main() From 9feb03d7ae1b56f87cd7dd57d77debd8a4761f05 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:22:05 -0500 Subject: [PATCH 12/51] . t Replace lost methods for inactive coauthors --- src/session_notes_cleanup/session_notes_cleaner.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 5a83fa6..23928e4 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -10,6 +10,13 @@ class SessionNotesCleaner: def __init__(self): pass + def contains_inactive_coauthors(self, text): + return bool(re.search(r'^#+\s*Inactive Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + + def delete_inactive_coauthors(self, text): + return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', text, + flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) From 3e3440e98a088f4ea9faa361543d139c00e5fdff Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:26:56 -0500 Subject: [PATCH 13/51] . t New test - test_contains_active_coauthors() --- src/session_notes_cleanup/session_notes_cleaner.py | 3 +++ tests/test_session_notes_cleaner.py | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 23928e4..bdb352c 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -17,6 +17,9 @@ def delete_inactive_coauthors(self, text): return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', text, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) + def contains_active_coauthors(self, text): + return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 316b21f..e841cca 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -20,6 +20,11 @@ def test_sample_file_has_no_trailing_whitespace(self): stripped_text = self.strip_trailing_whitespace(text) self.assertEquals(text, stripped_text) + def test_contains_active_coauthors(self): + text = self.sample_file_contents() + cleaner = SessionNotesCleaner() + self.assertTrue(cleaner.contains_active_coauthors(text)) + def test_contains_inactive_coauthors(self): text = self.sample_file_contents() cleaner = SessionNotesCleaner() From 6722e2d3308f17e0a2883495237a8765d7f07839 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:46:28 -0500 Subject: [PATCH 14/51] . t New - test_cleanup_contents(self): --- .../session_notes_cleaner.py | 25 +++++++++++++------ tests/test_session_notes_cleaner.py | 6 +++++ 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index bdb352c..fe17789 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -20,6 +20,14 @@ def delete_inactive_coauthors(self, text): def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + def cleanup_contents(self, contents, param): + if not contains_session_date(contents): + contents = f"# Session Date: {param}\n" + contents + if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): + contents = delete_inactive_coauthors(contents) + contents = normalize_coauthor_heading(contents) + return contents + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) @@ -64,13 +72,7 @@ def cleanup_file(filename): contents = original_contents date_as_string = get_date_from_filename(filename) - if not contains_session_date(contents): - contents = f"# Session Date: {date_as_string}\n" + contents - - if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): - contents = delete_inactive_coauthors(contents) - - contents = normalize_coauthor_heading(contents) + contents = applesauce(contents, date_as_string) if contents == original_contents: print(f"No changes were needed for the file: {filename}") @@ -86,6 +88,15 @@ def cleanup_file(filename): print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") +def applesauce(contents, date_from_filename): + if not contains_session_date(contents): + contents = f"# Session Date: {date_from_filename}\n" + contents + if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): + contents = delete_inactive_coauthors(contents) + contents = normalize_coauthor_heading(contents) + return contents + + def main(): for filename in sys.argv[1:]: cleanup_file(filename) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index e841cca..62da8c2 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -36,6 +36,12 @@ def test_delete_inactive_coauthors(self): clean_text = cleaner.delete_inactive_coauthors(text) verify(clean_text) + def test_cleanup_contents(self): + cleaner = SessionNotesCleaner() + text = self.sample_file_contents() + clean_text = cleaner.cleanup_contents(text, "2023-12-07") + verify(clean_text) + def strip_trailing_whitespace(self, text): # Regular expression pattern to match trailing horizontal whitespace on each line, excluding newline pattern = r'[ \t]+\n' From f4c4c817dba30b63e222883b19377f4c230fb01e Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:53:37 -0500 Subject: [PATCH 15/51] . t New class method - normalize_coauthor_heading(self, contents) --- src/session_notes_cleanup/session_notes_cleaner.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index fe17789..5dc7054 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -23,11 +23,16 @@ def contains_active_coauthors(self, text): def cleanup_contents(self, contents, param): if not contains_session_date(contents): contents = f"# Session Date: {param}\n" + contents - if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): - contents = delete_inactive_coauthors(contents) - contents = normalize_coauthor_heading(contents) + if self.contains_active_coauthors(contents) and self.contains_inactive_coauthors(contents): + contents = self.delete_inactive_coauthors(contents) + contents = self.normalize_coauthor_heading(contents) return contents + def normalize_coauthor_heading(self, contents): + return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', + contents, + flags=re.IGNORECASE | re.MULTILINE) + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) From f53f5a3d9ce33c170bf1618787232f29fcfca03e Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 20:55:24 -0500 Subject: [PATCH 16/51] . r Consistent parameter name - 'text' --- .../session_notes_cleaner.py | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 5dc7054..35744f3 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -20,17 +20,17 @@ def delete_inactive_coauthors(self, text): def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) - def cleanup_contents(self, contents, param): - if not contains_session_date(contents): - contents = f"# Session Date: {param}\n" + contents - if self.contains_active_coauthors(contents) and self.contains_inactive_coauthors(contents): - contents = self.delete_inactive_coauthors(contents) - contents = self.normalize_coauthor_heading(contents) - return contents - - def normalize_coauthor_heading(self, contents): + def cleanup_contents(self, text, session_date): + if not contains_session_date(text): + text = f"# Session Date: {session_date}\n" + text + if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): + text = self.delete_inactive_coauthors(text) + text = self.normalize_coauthor_heading(text) + return text + + def normalize_coauthor_heading(self, text): return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', - contents, + text, flags=re.IGNORECASE | re.MULTILINE) From d82eb340d6cf3f86e062272e9f328ae392b3078a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 21:23:34 -0500 Subject: [PATCH 17/51] . r New - test_normalize_coauthor_heading(self) --- tests/test_session_notes_cleaner.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 62da8c2..6c863c9 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -1,6 +1,7 @@ # test_session_notes_cleaner.py import re import unittest + from approvaltests import verify from src.session_notes_cleanup.session_notes_cleaner import SessionNotesCleaner @@ -36,6 +37,13 @@ def test_delete_inactive_coauthors(self): clean_text = cleaner.delete_inactive_coauthors(text) verify(clean_text) + def test_normalize_coauthor_heading(self): + cleaner = SessionNotesCleaner() + text = "## Coauthors\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" + clean_text = cleaner.normalize_coauthor_heading(text) + acceptance_text = f'Before\n{text}\n\nAfter\n{clean_text}' + verify(acceptance_text) + def test_cleanup_contents(self): cleaner = SessionNotesCleaner() text = self.sample_file_contents() From e419a694fd81a61b6b419dfa8087a1264adcf1fd Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 21:23:59 -0500 Subject: [PATCH 18/51] . r Reformatting --- src/session_notes_cleanup/session_notes_cleaner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 35744f3..087112a 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -1,7 +1,7 @@ # Python code for the specified tasks -import re import os +import re import shutil import sys @@ -29,7 +29,7 @@ def cleanup_contents(self, text, session_date): return text def normalize_coauthor_heading(self, text): - return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', + return re.sub(r'^#+\s*.*Co-?Author.*', '## Co-Authors', text, flags=re.IGNORECASE | re.MULTILINE) From bdd4f8e999716950aa0054917146d02b87b6badc Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <michael@Michaels-MacBook-2.local> Date: Thu, 14 Dec 2023 21:26:15 -0500 Subject: [PATCH 19/51] . t Removed *received* file --- ...t_contains_inactive_coauthors.received.txt | 84 ------------------- 1 file changed, 84 deletions(-) delete mode 100644 tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt diff --git a/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt b/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt deleted file mode 100644 index dbf1a5a..0000000 --- a/tests/TestSessionNotesCleaner.test_contains_inactive_coauthors.received.txt +++ /dev/null @@ -1,84 +0,0 @@ -# Session Date: 2023-12-07 - - ## Active Co-Authors - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> - - - ## Inactive Co-Authors - Co-Authored-By: Blaise Pabon <blaise@gmail.com> - Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> - Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> - Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> - Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> - Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> - Co-Authored-By: arrockt <cariari385@gmail.com> - Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> - Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> - Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> - Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> - Co-Authored-By: Idan Melamed <idanmel@gmail.com> - Co-Authored-By: Rea <reasu@protonmail.com> - Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> - Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - Co-Authored-By: David Campey <campey@gmail.com> - Co-Authored-by: Zac Ball <zac156@gmail.com> - Co-Authored-By: Kitastro <admin@metafor.co.za> - Co-Authored-By: Woody Zuill <wzuill@yahoo.com> - Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - - # Agenda - - ## Bond (30 min.) - - - Try a [warmup exercise](../docs/warmup-exercises.md) - - ## Do ? - FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - - ## Mid Session Retro (10 min.) - Tips: - - TRY FOR 10 MIN. LIMIT. HAVE A HELPER ALSO TIME. AT END OF TIME, VOTE TO EXTEND IF NEEDED ONLY - - Remember "Kindness, consideration and respect" - assume good intent; everyone is doing the best they can - - How did that feel (1-2 words / 30 sec)? - - frustrating, fulfilling, overwhelmed - - exciting, playful - - curious, scared, fulfilled - - rocky, relieved - - resfreshing, collaborative - - What did you like so much you want to do more of it / do it again? - - clojure - - everybody involved - - observation doing thinking for another person - - practicing thinking out loud +1 - - Nn8 doing like a pro: - - I feel overwhelmed - - Modeled being honest and verbalizing where he was and what he was thinking. - - Stream of thought - - Modeling how we can get off track and on track - - Copying an old test case to create a new one - - What might you want to try differently / experiment? - - Remind newcomers to enter their author info (eg. Co-Authored-By: Blaise Pabon <blaise@gmail.com>) - - ## Do ? - Continue FizzBuzz in Clojure - https://cyber-dojo.org/kata/edit/EtbGU6 - - # 2nd Retro (END OF SESSION) - - What to do next? Vote on Proposals: - - Proposals: - - 1. spending less time deciding on what we're doing (more time coding) - - 2. shared leadership, dedicated facilitation - - 3. consider a checklist for newcomers (was a discussion about this) - - 4. consider items in the backlog (reminders, what are we working on, etc. From 498b86e94862624fbfa59a991f8fb04f26bf1d1c Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 21:44:35 -0500 Subject: [PATCH 20/51] . r Use assertEqual instead of assertEquals --- tests/test_session_notes_cleaner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 6c863c9..166ddc7 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -19,7 +19,7 @@ def test_import_approvalTests(self): def test_sample_file_has_no_trailing_whitespace(self): text = self.sample_file_contents() stripped_text = self.strip_trailing_whitespace(text) - self.assertEquals(text, stripped_text) + self.assertEqual(text, stripped_text) def test_contains_active_coauthors(self): text = self.sample_file_contents() From 09eb491e6672837fdf507b392043d2266f1e0664 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 21:48:01 -0500 Subject: [PATCH 21/51] . f @staticmethod strip_trailing_whitespace(text) --- tests/test_session_notes_cleaner.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 166ddc7..80445ac 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -50,7 +50,8 @@ def test_cleanup_contents(self): clean_text = cleaner.cleanup_contents(text, "2023-12-07") verify(clean_text) - def strip_trailing_whitespace(self, text): + @staticmethod + def strip_trailing_whitespace(text): # Regular expression pattern to match trailing horizontal whitespace on each line, excluding newline pattern = r'[ \t]+\n' # Replace matched patterns with nothing (i.e., remove them) From 5e0deb9f45b8ee6d04bbea9565520d12930c19fe Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:19:25 -0500 Subject: [PATCH 22/51] . r Rename all functions to fn_*. Move cleanup_file() into class. --- .../session_notes_cleaner.py | 68 ++++++++++++------- 1 file changed, 42 insertions(+), 26 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 087112a..bc5f237 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -21,7 +21,7 @@ def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) def cleanup_contents(self, text, session_date): - if not contains_session_date(text): + if not fn_contains_session_date(text): text = f"# Session Date: {session_date}\n" + text if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): text = self.delete_inactive_coauthors(text) @@ -33,13 +33,35 @@ def normalize_coauthor_heading(self, text): text, flags=re.IGNORECASE | re.MULTILINE) + def cleanup_file(self, filename): + original_contents = fn_slurp_file(filename) + if original_contents is None: + print(f"File not found: {filename}") + return + + contents = original_contents + date_as_string = get_date_from_filename(filename) + contents = self.cleanup_contents(contents, date_as_string) + if contents == original_contents: + print(f"No changes were needed for the file: {filename}") + else: + print(f"Changes were made to the file: {filename}") + new_filename = filename + ".new" + with open(new_filename, 'w') as new_file: + new_file.write(contents) + shutil.copystat(filename, new_filename) + original_backup_filename = filename + ".original" + os.rename(filename, original_backup_filename) + os.rename(new_filename, filename) + print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") + def get_date_from_filename(filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) return match.group(1) if match else None -def slurp_file(filename): +def fn_slurp_file(filename): try: with open(filename, 'r') as file: return file.read() @@ -47,38 +69,31 @@ def slurp_file(filename): return None -def contains_inactive_coauthors(contents): - return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) - - -def contains_active_coauthors(contents): - return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) +# def fn_contains_inactive_coauthors(contents): +# return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) +# +# +# def fn_contains_active_coauthors(contents): +# return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) -def contains_session_date(contents): +def fn_contains_session_date(contents): return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) -def delete_inactive_coauthors(contents): +def fn_delete_inactive_coauthors(contents): return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) -def normalize_coauthor_heading(contents): +def fn_normalize_coauthor_heading(contents): return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) -def cleanup_file(filename): - original_contents = slurp_file(filename) - if original_contents is None: - print(f"File not found: {filename}") - return - +def method_name(filename, original_contents): contents = original_contents date_as_string = get_date_from_filename(filename) - - contents = applesauce(contents, date_as_string) - + contents = fn_applesauce(contents, date_as_string) if contents == original_contents: print(f"No changes were needed for the file: {filename}") else: @@ -93,18 +108,19 @@ def cleanup_file(filename): print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") -def applesauce(contents, date_from_filename): - if not contains_session_date(contents): +def fn_applesauce(contents, date_from_filename): + if not fn_contains_session_date(contents): contents = f"# Session Date: {date_from_filename}\n" + contents - if contains_active_coauthors(contents) and contains_inactive_coauthors(contents): - contents = delete_inactive_coauthors(contents) - contents = normalize_coauthor_heading(contents) + if fn_contains_active_coauthors(contents) and fn_contains_inactive_coauthors(contents): + contents = fn_delete_inactive_coauthors(contents) + contents = fn_normalize_coauthor_heading(contents) return contents def main(): + cleaner = SessionNotesCleaner() for filename in sys.argv[1:]: - cleanup_file(filename) + cleaner.cleanup_file(filename) if __name__ == "__main__": From e1fbe841eacbc595415cccd42946d9b768ed416a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:25:50 -0500 Subject: [PATCH 23/51] . r Move into class - get_date_from_filename() --- src/session_notes_cleanup/session_notes_cleaner.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index bc5f237..a8a1e24 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -40,7 +40,7 @@ def cleanup_file(self, filename): return contents = original_contents - date_as_string = get_date_from_filename(filename) + date_as_string = self.get_date_from_filename(filename) contents = self.cleanup_contents(contents, date_as_string) if contents == original_contents: print(f"No changes were needed for the file: {filename}") @@ -55,10 +55,9 @@ def cleanup_file(self, filename): os.rename(new_filename, filename) print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") - -def get_date_from_filename(filename): - match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) - return match.group(1) if match else None + def get_date_from_filename(self, filename): + match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) + return match.group(1) if match else None def fn_slurp_file(filename): @@ -92,7 +91,7 @@ def fn_normalize_coauthor_heading(contents): def method_name(filename, original_contents): contents = original_contents - date_as_string = get_date_from_filename(filename) + date_as_string = SessionNotesCleaner().get_date_from_filename(filename) contents = fn_applesauce(contents, date_as_string) if contents == original_contents: print(f"No changes were needed for the file: {filename}") @@ -111,7 +110,8 @@ def method_name(filename, original_contents): def fn_applesauce(contents, date_from_filename): if not fn_contains_session_date(contents): contents = f"# Session Date: {date_from_filename}\n" + contents - if fn_contains_active_coauthors(contents) and fn_contains_inactive_coauthors(contents): + if SessionNotesCleaner().contains_active_coauthors(contents) and \ + SessionNotesCleaner().contains_inactive_coauthors(contents): contents = fn_delete_inactive_coauthors(contents) contents = fn_normalize_coauthor_heading(contents) return contents From 83db980670328e9a6046f09ab9225dd5d2fe1fed Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:27:12 -0500 Subject: [PATCH 24/51] ! r Remove dead code --- src/session_notes_cleanup/session_notes_cleaner.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index a8a1e24..a806c6d 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -68,14 +68,6 @@ def fn_slurp_file(filename): return None -# def fn_contains_inactive_coauthors(contents): -# return bool(re.search(r'^#+\s*Inactive Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) -# -# -# def fn_contains_active_coauthors(contents): -# return bool(re.search(r'^#+\s*Active Co-Authors', contents, re.IGNORECASE | re.MULTILINE)) - - def fn_contains_session_date(contents): return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) From 7bc45017b484116dbc92b0bf087fdea6054f50d0 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:31:40 -0500 Subject: [PATCH 25/51] . r Move into class - contains_session_date(self, contents) --- src/session_notes_cleanup/session_notes_cleaner.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index a806c6d..036e9e9 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -21,7 +21,7 @@ def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) def cleanup_contents(self, text, session_date): - if not fn_contains_session_date(text): + if not self.contains_session_date(text): text = f"# Session Date: {session_date}\n" + text if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): text = self.delete_inactive_coauthors(text) @@ -33,6 +33,9 @@ def normalize_coauthor_heading(self, text): text, flags=re.IGNORECASE | re.MULTILINE) + def contains_session_date(self, contents): + return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) + def cleanup_file(self, filename): original_contents = fn_slurp_file(filename) if original_contents is None: @@ -68,10 +71,6 @@ def fn_slurp_file(filename): return None -def fn_contains_session_date(contents): - return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) - - def fn_delete_inactive_coauthors(contents): return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) @@ -100,7 +99,7 @@ def method_name(filename, original_contents): def fn_applesauce(contents, date_from_filename): - if not fn_contains_session_date(contents): + if not SessionNotesCleaner().contains_session_date(contents): contents = f"# Session Date: {date_from_filename}\n" + contents if SessionNotesCleaner().contains_active_coauthors(contents) and \ SessionNotesCleaner().contains_inactive_coauthors(contents): From 13aec609de221cc95fe446776f9ccbbcc37f14ce Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:33:44 -0500 Subject: [PATCH 26/51] . r Move into class - slurp_file(self, filename) --- .../session_notes_cleaner.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 036e9e9..1615738 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -37,7 +37,7 @@ def contains_session_date(self, contents): return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) def cleanup_file(self, filename): - original_contents = fn_slurp_file(filename) + original_contents = SessionNotesCleaner().slurp_file(filename) if original_contents is None: print(f"File not found: {filename}") return @@ -62,13 +62,12 @@ def get_date_from_filename(self, filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) return match.group(1) if match else None - -def fn_slurp_file(filename): - try: - with open(filename, 'r') as file: - return file.read() - except FileNotFoundError: - return None + def slurp_file(self, filename): + try: + with open(filename, 'r') as file: + return file.read() + except FileNotFoundError: + return None def fn_delete_inactive_coauthors(contents): From 4154f0f21b8986f14f76f58e1adb76643bade94a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:35:48 -0500 Subject: [PATCH 27/51] . r Move into class - delete_inactive_coauthors(self, text) --- src/session_notes_cleanup/session_notes_cleaner.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 1615738..95a8845 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -70,11 +70,6 @@ def slurp_file(self, filename): return None -def fn_delete_inactive_coauthors(contents): - return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', contents, - flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) - - def fn_normalize_coauthor_heading(contents): return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) @@ -102,7 +97,7 @@ def fn_applesauce(contents, date_from_filename): contents = f"# Session Date: {date_from_filename}\n" + contents if SessionNotesCleaner().contains_active_coauthors(contents) and \ SessionNotesCleaner().contains_inactive_coauthors(contents): - contents = fn_delete_inactive_coauthors(contents) + contents = SessionNotesCleaner().delete_inactive_coauthors(contents) contents = fn_normalize_coauthor_heading(contents) return contents From 2243b290ce2340f8372884846e73b78bbcb0f320 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:38:30 -0500 Subject: [PATCH 28/51] . r Remove dead code --- .../session_notes_cleaner.py | 32 ------------------- 1 file changed, 32 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 95a8845..66e75b5 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -70,38 +70,6 @@ def slurp_file(self, filename): return None -def fn_normalize_coauthor_heading(contents): - return re.sub(r'^#+\s*.*Co-Author.*', '## Co-Authors', contents, flags=re.IGNORECASE | re.MULTILINE) - - -def method_name(filename, original_contents): - contents = original_contents - date_as_string = SessionNotesCleaner().get_date_from_filename(filename) - contents = fn_applesauce(contents, date_as_string) - if contents == original_contents: - print(f"No changes were needed for the file: {filename}") - else: - print(f"Changes were made to the file: {filename}") - new_filename = filename + ".new" - with open(new_filename, 'w') as new_file: - new_file.write(contents) - shutil.copystat(filename, new_filename) - original_backup_filename = filename + ".original" - os.rename(filename, original_backup_filename) - os.rename(new_filename, filename) - print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") - - -def fn_applesauce(contents, date_from_filename): - if not SessionNotesCleaner().contains_session_date(contents): - contents = f"# Session Date: {date_from_filename}\n" + contents - if SessionNotesCleaner().contains_active_coauthors(contents) and \ - SessionNotesCleaner().contains_inactive_coauthors(contents): - contents = SessionNotesCleaner().delete_inactive_coauthors(contents) - contents = fn_normalize_coauthor_heading(contents) - return contents - - def main(): cleaner = SessionNotesCleaner() for filename in sys.argv[1:]: From 6045453aa0227525c17011386152fd0c3450a664 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:42:42 -0500 Subject: [PATCH 29/51] . r Reorder methods. --- .../session_notes_cleaner.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 66e75b5..3e0db6d 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -1,5 +1,3 @@ -# Python code for the specified tasks - import os import re import shutil @@ -20,14 +18,6 @@ def delete_inactive_coauthors(self, text): def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) - def cleanup_contents(self, text, session_date): - if not self.contains_session_date(text): - text = f"# Session Date: {session_date}\n" + text - if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): - text = self.delete_inactive_coauthors(text) - text = self.normalize_coauthor_heading(text) - return text - def normalize_coauthor_heading(self, text): return re.sub(r'^#+\s*.*Co-?Author.*', '## Co-Authors', text, @@ -36,6 +26,14 @@ def normalize_coauthor_heading(self, text): def contains_session_date(self, contents): return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) + def cleanup_contents(self, text, session_date): + if not self.contains_session_date(text): + text = f"# Session Date: {session_date}\n" + text + if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): + text = self.delete_inactive_coauthors(text) + text = self.normalize_coauthor_heading(text) + return text + def cleanup_file(self, filename): original_contents = SessionNotesCleaner().slurp_file(filename) if original_contents is None: From faa7e82cd2e4fc4662522b0039a44f1d481ca66f Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:44:00 -0500 Subject: [PATCH 30/51] . r Reorder methods. --- .../session_notes_cleaner.py | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 3e0db6d..17e491b 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -23,8 +23,19 @@ def normalize_coauthor_heading(self, text): text, flags=re.IGNORECASE | re.MULTILINE) - def contains_session_date(self, contents): - return bool(re.search(r'^#+\s*Session Date', contents, re.IGNORECASE | re.MULTILINE)) + def get_date_from_filename(self, filename): + match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) + return match.group(1) if match else None + + def slurp_file(self, filename): + try: + with open(filename, 'r') as file: + return file.read() + except FileNotFoundError: + return None + + def contains_session_date(self, text): + return bool(re.search(r'^#+\s*Session Date', text, re.IGNORECASE | re.MULTILINE)) def cleanup_contents(self, text, session_date): if not self.contains_session_date(text): @@ -56,17 +67,6 @@ def cleanup_file(self, filename): os.rename(new_filename, filename) print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") - def get_date_from_filename(self, filename): - match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) - return match.group(1) if match else None - - def slurp_file(self, filename): - try: - with open(filename, 'r') as file: - return file.read() - except FileNotFoundError: - return None - def main(): cleaner = SessionNotesCleaner() From 4536d454ab50edac62ee020b10a8bccf272007e7 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 22:46:21 -0500 Subject: [PATCH 31/51] . r Rename method to: standardize_coauthor_heading(self, text) --- src/session_notes_cleanup/session_notes_cleaner.py | 4 ++-- tests/test_session_notes_cleaner.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 17e491b..97b408a 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -18,7 +18,7 @@ def delete_inactive_coauthors(self, text): def contains_active_coauthors(self, text): return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) - def normalize_coauthor_heading(self, text): + def standardize_coauthor_heading(self, text): return re.sub(r'^#+\s*.*Co-?Author.*', '## Co-Authors', text, flags=re.IGNORECASE | re.MULTILINE) @@ -42,7 +42,7 @@ def cleanup_contents(self, text, session_date): text = f"# Session Date: {session_date}\n" + text if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): text = self.delete_inactive_coauthors(text) - text = self.normalize_coauthor_heading(text) + text = self.standardize_coauthor_heading(text) return text def cleanup_file(self, filename): diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 80445ac..414fa01 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -40,7 +40,7 @@ def test_delete_inactive_coauthors(self): def test_normalize_coauthor_heading(self): cleaner = SessionNotesCleaner() text = "## Coauthors\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" - clean_text = cleaner.normalize_coauthor_heading(text) + clean_text = cleaner.standardize_coauthor_heading(text) acceptance_text = f'Before\n{text}\n\nAfter\n{clean_text}' verify(acceptance_text) From 16969b35038e61eda0a98afe805da4db66971e5a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 23:42:45 -0500 Subject: [PATCH 32/51] Update doit . t Update helper function 'doit' with new project structure --- src/session_notes_cleanup/doit | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/session_notes_cleanup/doit b/src/session_notes_cleanup/doit index 01b569f..d2a93aa 100644 --- a/src/session_notes_cleanup/doit +++ b/src/session_notes_cleanup/doit @@ -2,11 +2,8 @@ git_toplevel="$(git rev-parse --show-toplevel)" note_directory="${git_toplevel}/session-notes" -script_directory="${note_directory}/cleanup-notes" -script_path="${script_directory}/cleanup_session_notes.py" - -cd "${note_directory}" || exit 2 - +script_directory="${git_toplevel}/src/session_notes_cleanup" +script_path="${script_directory}/session_notes_cleaner.py" for arg in "$@" @@ -18,7 +15,7 @@ do filename="$arg" fi - . "${script_directory}/venv/bin/activate" || exit 3 + # . "${git_toplevel}/venv/bin/activate" || exit 3 python "${script_path}" "${filename}" done From 25d117141d73e039e46e7440b1582b916e7fa8a7 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Thu, 14 Dec 2023 23:43:53 -0500 Subject: [PATCH 33/51] . t New - test_remove_coauthor_headings() --- .../session_notes_cleaner.py | 21 ++++++++++++++++--- tests/test_session_notes_cleaner.py | 9 +++++++- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 97b408a..8d01518 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -23,6 +23,21 @@ def standardize_coauthor_heading(self, text): text, flags=re.IGNORECASE | re.MULTILINE) + import re + + def remove_coauthor_headings(self, text): + # Regular expression to match 1st and 2nd level headings with "Co-Authors" + # Assumes Markdown formatting where 1st level is '# ' and 2nd level is '## ' + standard_text = self.standardize_coauthor_heading(text) + pattern = r'^#{1,2}\s*Co-Authors.*$\n?' + cleaned_text = re.sub(pattern, '', standard_text, flags=re.MULTILINE) + + return cleaned_text + + def applesauce(self, text): + pattern = r'^#+\s*Co-Author$' + re.sub(pattern, text,flags=re.IGNORECASE ) + def get_date_from_filename(self, filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) return match.group(1) if match else None @@ -55,9 +70,9 @@ def cleanup_file(self, filename): date_as_string = self.get_date_from_filename(filename) contents = self.cleanup_contents(contents, date_as_string) if contents == original_contents: - print(f"No changes were needed for the file: {filename}") + print(f"# No changes were needed for the file: {filename}") else: - print(f"Changes were made to the file: {filename}") + print(f"# Changes were made to the file: {filename}") new_filename = filename + ".new" with open(new_filename, 'w') as new_file: new_file.write(contents) @@ -65,7 +80,7 @@ def cleanup_file(self, filename): original_backup_filename = filename + ".original" os.rename(filename, original_backup_filename) os.rename(new_filename, filename) - print(f"You can view changes by issuing this command: diff -u {original_backup_filename} {filename}") + print(f"# You can view changes by issuing this command:\ndiff -u {original_backup_filename} {filename}") def main(): diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 414fa01..614d8cc 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -41,7 +41,14 @@ def test_normalize_coauthor_heading(self): cleaner = SessionNotesCleaner() text = "## Coauthors\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" clean_text = cleaner.standardize_coauthor_heading(text) - acceptance_text = f'Before\n{text}\n\nAfter\n{clean_text}' + acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' + verify(acceptance_text) + + def test_remove_coauthor_headings(self): + cleaner = SessionNotesCleaner() + text = "## Coauthors\n## Facilitator\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" + clean_text = cleaner.remove_coauthor_headings(text) + acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text) def test_cleanup_contents(self): From cb8a9594eb747d88372e0b61bb5519a7049bfd6a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Fri, 15 Dec 2023 00:29:46 -0500 Subject: [PATCH 34/51] . t New - test_add_coauthor_heading_before_co_authored_by_list(self): --- src/session_notes_cleanup/session_notes_cleaner.py | 13 ++++++++++++- tests/test_session_notes_cleaner.py | 13 +++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 8d01518..eaa3903 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -30,10 +30,19 @@ def remove_coauthor_headings(self, text): # Assumes Markdown formatting where 1st level is '# ' and 2nd level is '## ' standard_text = self.standardize_coauthor_heading(text) pattern = r'^#{1,2}\s*Co-Authors.*$\n?' - cleaned_text = re.sub(pattern, '', standard_text, flags=re.MULTILINE) + cleaned_text = re.sub(pattern, '', standard_text, flags=re.IGNORECASE | re.MULTILINE) return cleaned_text + + def add_coauthor_heading_before_co_authored_by_list(self, text): + search_pattern = r'^(Co-Authored-By.*)$' + replace_pattern = r'## Co-Authors\n\1' + cleaned_text = re.sub(search_pattern, replace_pattern, text, + count=1, + flags=re.IGNORECASE | re.MULTILINE) + return cleaned_text + def applesauce(self, text): pattern = r'^#+\s*Co-Author$' re.sub(pattern, text,flags=re.IGNORECASE ) @@ -58,6 +67,8 @@ def cleanup_contents(self, text, session_date): if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): text = self.delete_inactive_coauthors(text) text = self.standardize_coauthor_heading(text) + text = self.remove_coauthor_headings(text) + text = self.add_coauthor_heading_before_co_authored_by_list(text) return text def cleanup_file(self, filename): diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 614d8cc..8263a69 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -51,6 +51,19 @@ def test_remove_coauthor_headings(self): acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text) + def test_add_coauthor_heading_before_co_authored_by_list(self): + cleaner = SessionNotesCleaner() + text = "" + text += "## Facilitator\n" + text += "Everyone\n" + text += "\n" + text += "Co-Authored-By: Manny\n" + text += "Co-Authored-By: Moe\n" + text += "Co-Authored-By: Jack\n" + clean_text = cleaner.add_coauthor_heading_before_co_authored_by_list(text) + acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' + verify(acceptance_text) + def test_cleanup_contents(self): cleaner = SessionNotesCleaner() text = self.sample_file_contents() From b7952f4fd040a17a37c94a6819c9386fbcd40f5e Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Fri, 15 Dec 2023 01:32:05 -0500 Subject: [PATCH 35/51] . r Standardize headers before removing sections. Tweak regep's to match various "(in)active co-author" headers --- .../session_notes_cleaner.py | 17 +++++------------ tests/test_session_notes_cleaner.py | 1 + 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index eaa3903..a9d7c95 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -9,22 +9,20 @@ def __init__(self): pass def contains_inactive_coauthors(self, text): - return bool(re.search(r'^#+\s*Inactive Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + return bool(re.search(r'^#+\s*Inactive( Co-Authors)?', text, re.IGNORECASE | re.MULTILINE)) def delete_inactive_coauthors(self, text): - return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', text, + return re.sub(r'^#+\s*Inactive( Co-Authors)?.*?(?=^#|\Z)', '', text, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) def contains_active_coauthors(self, text): - return bool(re.search(r'^#+\s*Active Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + return bool(re.search(r'^#+\s*(Active )?Co-Authors', text, re.IGNORECASE | re.MULTILINE)) def standardize_coauthor_heading(self, text): - return re.sub(r'^#+\s*.*Co-?Author.*', '## Co-Authors', + return re.sub(r'^#+\s*.*?((?:Inactive\s+)?)\s*Co-?Author.*', r'## \1Co-Authors', text, flags=re.IGNORECASE | re.MULTILINE) - import re - def remove_coauthor_headings(self, text): # Regular expression to match 1st and 2nd level headings with "Co-Authors" # Assumes Markdown formatting where 1st level is '# ' and 2nd level is '## ' @@ -34,7 +32,6 @@ def remove_coauthor_headings(self, text): return cleaned_text - def add_coauthor_heading_before_co_authored_by_list(self, text): search_pattern = r'^(Co-Authored-By.*)$' replace_pattern = r'## Co-Authors\n\1' @@ -43,10 +40,6 @@ def add_coauthor_heading_before_co_authored_by_list(self, text): flags=re.IGNORECASE | re.MULTILINE) return cleaned_text - def applesauce(self, text): - pattern = r'^#+\s*Co-Author$' - re.sub(pattern, text,flags=re.IGNORECASE ) - def get_date_from_filename(self, filename): match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) return match.group(1) if match else None @@ -64,9 +57,9 @@ def contains_session_date(self, text): def cleanup_contents(self, text, session_date): if not self.contains_session_date(text): text = f"# Session Date: {session_date}\n" + text + text = self.standardize_coauthor_heading(text) if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): text = self.delete_inactive_coauthors(text) - text = self.standardize_coauthor_heading(text) text = self.remove_coauthor_headings(text) text = self.add_coauthor_heading_before_co_authored_by_list(text) return text diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 8263a69..4d24b53 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -40,6 +40,7 @@ def test_delete_inactive_coauthors(self): def test_normalize_coauthor_heading(self): cleaner = SessionNotesCleaner() text = "## Coauthors\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" + text += "## Inactive\n## Inactive Co-Authors\n## Inactive CoAuthors\n" clean_text = cleaner.standardize_coauthor_heading(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text) From 026f02c22e3517273cea7cfd884ac060aada2c6f Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Fri, 15 Dec 2023 02:54:24 -0500 Subject: [PATCH 36/51] . . Reverting files to b03bc8a035f61199035fffc12ab957658e42089c, before PR #9 --- session-notes/session-notes-2022-10-13.md | 1 - session-notes/session-notes-2022-10-20.md | 1 - session-notes/session-notes-2022-11-03.md | 1 - session-notes/session-notes-2022-11-10.md | 1 - session-notes/session-notes-2022-11-24.md | 1 - session-notes/session-notes-2022-12-01.md | 1 - session-notes/session-notes-2022-12-08.md | 1 - session-notes/session-notes-2022-12-15.md | 1 - session-notes/session-notes-2022-12-22.md | 1 - session-notes/session-notes-2023-01-05.md | 1 - session-notes/session-notes-2023-01-12.md | 1 - session-notes/session-notes-2023-01-19.md | 1 - session-notes/session-notes-2023-01-26.md | 1 - session-notes/session-notes-2023-02-02.md | 1 - session-notes/session-notes-2023-02-09.md | 1 - session-notes/session-notes-2023-02-16.md | 1 - session-notes/session-notes-2023-02-23.md | 1 - session-notes/session-notes-2023-03-02.md | 1 - session-notes/session-notes-2023-03-09.md | 1 - session-notes/session-notes-2023-03-16.md | 1 - .../session-notes-2023-03-16.session2.md | 1 - session-notes/session-notes-2023-03-23.md | 1 - session-notes/session-notes-2023-03-30.md | 1 - session-notes/session-notes-2023-04-06.md | 1 - session-notes/session-notes-2023-04-13.md | 1 - session-notes/session-notes-2023-04-27.md | 17 ++++++++++--- session-notes/session-notes-2023-05-04.md | 16 ++++++++++--- session-notes/session-notes-2023-05-11.md | 5 ++-- session-notes/session-notes-2023-05-18.md | 18 +++++++++++--- session-notes/session-notes-2023-05-25.md | 18 +++++++++++--- session-notes/session-notes-2023-06-01.md | 19 ++++++++++++--- session-notes/session-notes-2023-06-08.md | 20 +++++++++++++--- session-notes/session-notes-2023-06-15.md | 20 +++++++++++++--- session-notes/session-notes-2023-06-22.md | 20 +++++++++++++--- session-notes/session-notes-2023-07-06.md | 20 +++++++++++++--- session-notes/session-notes-2023-07-13.md | 20 +++++++++++++--- session-notes/session-notes-2023-07-20.md | 19 ++++++++++++--- session-notes/session-notes-2023-07-27.md | 5 ++-- session-notes/session-notes-2023-08-17.md | 22 ++++++++++++++--- session-notes/session-notes-2023-08-24.md | 19 ++++++++++++++- session-notes/session-notes-2023-08-31.md | 18 +++++++++++++- session-notes/session-notes-2023-09-07.md | 2 +- session-notes/session-notes-2023-09-14.md | 18 +++++++++++++- session-notes/session-notes-2023-09-21.md | 19 ++++++++++++++- session-notes/session-notes-2023-09-28.md | 18 +++++++++++++- session-notes/session-notes-2023-10-05.md | 18 +++++++++++++- session-notes/session-notes-2023-10-12.md | 2 +- session-notes/session-notes-2023-10-19.md | 3 +-- session-notes/session-notes-2023-11-09.md | 16 ++++++++++++- session-notes/session-notes-2023-11-16.md | 18 +++++++++++++- session-notes/session-notes-2023-11-23.md | 20 +++++++++++++++- session-notes/session-notes-2023-12-07.md | 24 ++++++++++++++++++- session-notes/session-notes-YYYY-MM-DD.md | 4 ++-- 53 files changed, 380 insertions(+), 83 deletions(-) diff --git a/session-notes/session-notes-2022-10-13.md b/session-notes/session-notes-2022-10-13.md index 0847a00..040685a 100644 --- a/session-notes/session-notes-2022-10-13.md +++ b/session-notes/session-notes-2022-10-13.md @@ -1,4 +1,3 @@ -# Session Date: 2022-10-13 # How did that feel? - Liked the Game, is cool. Works well as a timer (has bugs). Like a mini retro all the time. - Great Time diff --git a/session-notes/session-notes-2022-10-20.md b/session-notes/session-notes-2022-10-20.md index 32c8030..7cf4e47 100644 --- a/session-notes/session-notes-2022-10-20.md +++ b/session-notes/session-notes-2022-10-20.md @@ -1,4 +1,3 @@ -# Session Date: 2022-10-20 # How did that feel? - Nice +1 - Interesting diff --git a/session-notes/session-notes-2022-11-03.md b/session-notes/session-notes-2022-11-03.md index e0e1818..8acf3b9 100644 --- a/session-notes/session-notes-2022-11-03.md +++ b/session-notes/session-notes-2022-11-03.md @@ -1,4 +1,3 @@ -# Session Date: 2022-11-03 # How did that feel? - Enjoyed it, a bit of small talk in the beggining - Felt productive, made good progress diff --git a/session-notes/session-notes-2022-11-10.md b/session-notes/session-notes-2022-11-10.md index 448a7bc..4a60379 100644 --- a/session-notes/session-notes-2022-11-10.md +++ b/session-notes/session-notes-2022-11-10.md @@ -1,4 +1,3 @@ -# Session Date: 2022-11-10 # How did that feel? - I like working on Testinfrastructure - Nice engineering challenge diff --git a/session-notes/session-notes-2022-11-24.md b/session-notes/session-notes-2022-11-24.md index 2620bb0..831a77b 100644 --- a/session-notes/session-notes-2022-11-24.md +++ b/session-notes/session-notes-2022-11-24.md @@ -1,4 +1,3 @@ -# Session Date: 2022-11-24 # How did that feel? - frustrating +1 - happy that we found the cause in the end +1 diff --git a/session-notes/session-notes-2022-12-01.md b/session-notes/session-notes-2022-12-01.md index dca2fe0..09e26a3 100644 --- a/session-notes/session-notes-2022-12-01.md +++ b/session-notes/session-notes-2022-12-01.md @@ -1,4 +1,3 @@ -# Session Date: 2022-12-01 # How did that feel? - Challenging +100 - Not Stable, constantly port in use diff --git a/session-notes/session-notes-2022-12-08.md b/session-notes/session-notes-2022-12-08.md index 4d0f053..5f90996 100644 --- a/session-notes/session-notes-2022-12-08.md +++ b/session-notes/session-notes-2022-12-08.md @@ -1,4 +1,3 @@ -# Session Date: 2022-12-08 # Goal - Fix inconsistent test failures around the wsserver diff --git a/session-notes/session-notes-2022-12-15.md b/session-notes/session-notes-2022-12-15.md index 3c0803b..dadb559 100644 --- a/session-notes/session-notes-2022-12-15.md +++ b/session-notes/session-notes-2022-12-15.md @@ -1,4 +1,3 @@ -# Session Date: 2022-12-15 # Goal - curios to test the rotation issue again manually diff --git a/session-notes/session-notes-2022-12-22.md b/session-notes/session-notes-2022-12-22.md index cfe14ca..4e526eb 100644 --- a/session-notes/session-notes-2022-12-22.md +++ b/session-notes/session-notes-2022-12-22.md @@ -1,4 +1,3 @@ -# Session Date: 2022-12-22 # Goal - [X] !! potential bug: rotate button should not use rotateToTarget diff --git a/session-notes/session-notes-2023-01-05.md b/session-notes/session-notes-2023-01-05.md index 684fa5a..9b1f19c 100644 --- a/session-notes/session-notes-2023-01-05.md +++ b/session-notes/session-notes-2023-01-05.md @@ -1,4 +1,3 @@ -# Session Date: 2023-01-05 # Goal - [x] For next time we could take a look at this one: diff --git a/session-notes/session-notes-2023-01-12.md b/session-notes/session-notes-2023-01-12.md index 6863504..7022d1c 100644 --- a/session-notes/session-notes-2023-01-12.md +++ b/session-notes/session-notes-2023-01-12.md @@ -1,4 +1,3 @@ -# Session Date: 2023-01-12 # Goal - Bug: Game ID should be in the URL - Exploratory testing diff --git a/session-notes/session-notes-2023-01-19.md b/session-notes/session-notes-2023-01-19.md index 0071db8..0280569 100644 --- a/session-notes/session-notes-2023-01-19.md +++ b/session-notes/session-notes-2023-01-19.md @@ -1,4 +1,3 @@ -# Session Date: 2023-01-19 # Goal - Limit number of points to 3 per role - Exploratory testing diff --git a/session-notes/session-notes-2023-01-26.md b/session-notes/session-notes-2023-01-26.md index 7697616..12d55a5 100644 --- a/session-notes/session-notes-2023-01-26.md +++ b/session-notes/session-notes-2023-01-26.md @@ -1,4 +1,3 @@ -# Session Date: 2023-01-26 # Goal - Exploratory testing - A: which part? Q: all the app diff --git a/session-notes/session-notes-2023-02-02.md b/session-notes/session-notes-2023-02-02.md index 840f677..c83ba12 100644 --- a/session-notes/session-notes-2023-02-02.md +++ b/session-notes/session-notes-2023-02-02.md @@ -1,4 +1,3 @@ -# Session Date: 2023-02-02 Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-02-09.md b/session-notes/session-notes-2023-02-09.md index 2b51920..0d33c23 100644 --- a/session-notes/session-notes-2023-02-09.md +++ b/session-notes/session-notes-2023-02-09.md @@ -1,4 +1,3 @@ -# Session Date: 2023-02-09 Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Rea <reasu@protonmail.com> diff --git a/session-notes/session-notes-2023-02-16.md b/session-notes/session-notes-2023-02-16.md index 9309b55..deca73e 100644 --- a/session-notes/session-notes-2023-02-16.md +++ b/session-notes/session-notes-2023-02-16.md @@ -1,4 +1,3 @@ -# Session Date: 2023-02-16 Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-02-23.md b/session-notes/session-notes-2023-02-23.md index d05de48..a57b769 100644 --- a/session-notes/session-notes-2023-02-23.md +++ b/session-notes/session-notes-2023-02-23.md @@ -1,4 +1,3 @@ -# Session Date: 2023-02-23 Co-Authored-By: Rea <reasu@protonmail.com> Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-03-02.md b/session-notes/session-notes-2023-03-02.md index eb3f699..56abc86 100644 --- a/session-notes/session-notes-2023-03-02.md +++ b/session-notes/session-notes-2023-03-02.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-02 Co-Authored-By: arrockt <cariari385@gmail.com> Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> diff --git a/session-notes/session-notes-2023-03-09.md b/session-notes/session-notes-2023-03-09.md index 7e8bd96..76fe770 100644 --- a/session-notes/session-notes-2023-03-09.md +++ b/session-notes/session-notes-2023-03-09.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-09 Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-03-16.md b/session-notes/session-notes-2023-03-16.md index 4eb2169..df3ef61 100644 --- a/session-notes/session-notes-2023-03-16.md +++ b/session-notes/session-notes-2023-03-16.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-16 Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-03-16.session2.md b/session-notes/session-notes-2023-03-16.session2.md index 5718844..464882e 100644 --- a/session-notes/session-notes-2023-03-16.session2.md +++ b/session-notes/session-notes-2023-03-16.session2.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-16 Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> # Agenda diff --git a/session-notes/session-notes-2023-03-23.md b/session-notes/session-notes-2023-03-23.md index e247f3f..6d3b070 100644 --- a/session-notes/session-notes-2023-03-23.md +++ b/session-notes/session-notes-2023-03-23.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-23 Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-03-30.md b/session-notes/session-notes-2023-03-30.md index c74fd3c..6aaafc2 100644 --- a/session-notes/session-notes-2023-03-30.md +++ b/session-notes/session-notes-2023-03-30.md @@ -1,4 +1,3 @@ -# Session Date: 2023-03-30 Session 1: Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> diff --git a/session-notes/session-notes-2023-04-06.md b/session-notes/session-notes-2023-04-06.md index cacac98..18d83b5 100644 --- a/session-notes/session-notes-2023-04-06.md +++ b/session-notes/session-notes-2023-04-06.md @@ -1,4 +1,3 @@ -# Session Date: 2023-04-06 ## Active Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> diff --git a/session-notes/session-notes-2023-04-13.md b/session-notes/session-notes-2023-04-13.md index ebccccf..93c9abe 100644 --- a/session-notes/session-notes-2023-04-13.md +++ b/session-notes/session-notes-2023-04-13.md @@ -1,4 +1,3 @@ -# Session Date: 2023-04-13 Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-04-27.md b/session-notes/session-notes-2023-04-27.md index 368b9d8..fb78505 100644 --- a/session-notes/session-notes-2023-04-27.md +++ b/session-notes/session-notes-2023-04-27.md @@ -1,12 +1,23 @@ -# Session Date: 2023-04-27 -## Co-Authors +# Co-Authors (This Session) Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -## Co-Authors +## Active Co-Authors + +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> # Agenda diff --git a/session-notes/session-notes-2023-05-04.md b/session-notes/session-notes-2023-05-04.md index 48abb3d..64983ce 100644 --- a/session-notes/session-notes-2023-05-04.md +++ b/session-notes/session-notes-2023-05-04.md @@ -1,7 +1,6 @@ -# Session Date: 2023-05-04 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> @@ -9,6 +8,17 @@ Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-05-11.md b/session-notes/session-notes-2023-05-11.md index 3edfa94..bf0a18a 100644 --- a/session-notes/session-notes-2023-05-11.md +++ b/session-notes/session-notes-2023-05-11.md @@ -1,7 +1,6 @@ -# Session Date: 2023-05-11 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-05-18.md b/session-notes/session-notes-2023-05-18.md index d25e6c8..c05b157 100644 --- a/session-notes/session-notes-2023-05-18.md +++ b/session-notes/session-notes-2023-05-18.md @@ -1,12 +1,24 @@ -# Session Date: 2023-05-18 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-05-25.md b/session-notes/session-notes-2023-05-25.md index 0e1a0b4..74f2945 100644 --- a/session-notes/session-notes-2023-05-25.md +++ b/session-notes/session-notes-2023-05-25.md @@ -1,13 +1,25 @@ -# Session Date: 2023-05-25 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-01.md b/session-notes/session-notes-2023-06-01.md index 3d8ccfd..f0ccc50 100644 --- a/session-notes/session-notes-2023-06-01.md +++ b/session-notes/session-notes-2023-06-01.md @@ -1,7 +1,6 @@ -# Session Date: 2023-06-01 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -9,6 +8,20 @@ Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: David Campey <campey@gmail.com> Co-Authored-by: Zac Ball <zac156@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-08.md b/session-notes/session-notes-2023-06-08.md index 8cc9ac1..a3bc2c4 100644 --- a/session-notes/session-notes-2023-06-08.md +++ b/session-notes/session-notes-2023-06-08.md @@ -1,7 +1,6 @@ -# Session Date: 2023-06-08 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -9,6 +8,21 @@ Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: David Campey <campey@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-15.md b/session-notes/session-notes-2023-06-15.md index 7bd5fdd..52143ab 100644 --- a/session-notes/session-notes-2023-06-15.md +++ b/session-notes/session-notes-2023-06-15.md @@ -1,7 +1,6 @@ -# Session Date: 2023-06-15 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> @@ -9,6 +8,21 @@ Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Nathaniel ... +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-22.md b/session-notes/session-notes-2023-06-22.md index a34e316..5bcf65c 100644 --- a/session-notes/session-notes-2023-06-22.md +++ b/session-notes/session-notes-2023-06-22.md @@ -1,13 +1,27 @@ -# Session Date: 2023-06-22 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-06.md b/session-notes/session-notes-2023-07-06.md index f0eda94..fbb5f7c 100644 --- a/session-notes/session-notes-2023-07-06.md +++ b/session-notes/session-notes-2023-07-06.md @@ -1,13 +1,27 @@ -# Session Date: 2023-07-06 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-13.md b/session-notes/session-notes-2023-07-13.md index 9b88900..9f5cda2 100644 --- a/session-notes/session-notes-2023-07-13.md +++ b/session-notes/session-notes-2023-07-13.md @@ -1,13 +1,27 @@ -# Session Date: 2023-07-13 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-20.md b/session-notes/session-notes-2023-07-20.md index 824074d..bb35606 100644 --- a/session-notes/session-notes-2023-07-20.md +++ b/session-notes/session-notes-2023-07-20.md @@ -1,7 +1,6 @@ -# Session Date: 2023-07-20 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> @@ -9,6 +8,20 @@ Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-27.md b/session-notes/session-notes-2023-07-27.md index ee64b32..51cf1db 100644 --- a/session-notes/session-notes-2023-07-27.md +++ b/session-notes/session-notes-2023-07-27.md @@ -1,7 +1,6 @@ -# Session Date: 2023-07-27 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> diff --git a/session-notes/session-notes-2023-08-17.md b/session-notes/session-notes-2023-08-17.md index c53787d..ea4fd96 100644 --- a/session-notes/session-notes-2023-08-17.md +++ b/session-notes/session-notes-2023-08-17.md @@ -1,12 +1,28 @@ -# Session Date: 2023-08-17 -## Co-Authors +# Co-Authors (This Session) -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-08-24.md b/session-notes/session-notes-2023-08-24.md index 97c55c2..11f1c9d 100644 --- a/session-notes/session-notes-2023-08-24.md +++ b/session-notes/session-notes-2023-08-24.md @@ -1,11 +1,28 @@ # Session Date: 2023-08-24 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-08-31.md b/session-notes/session-notes-2023-08-31.md index ccb2e86..527ce6b 100644 --- a/session-notes/session-notes-2023-08-31.md +++ b/session-notes/session-notes-2023-08-31.md @@ -1,12 +1,28 @@ # Session Date: 2023-08-31 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-07.md b/session-notes/session-notes-2023-09-07.md index 3cf106a..c8274b5 100644 --- a/session-notes/session-notes-2023-09-07.md +++ b/session-notes/session-notes-2023-09-07.md @@ -1,6 +1,6 @@ # Session Date: 2023-09-07 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> diff --git a/session-notes/session-notes-2023-09-14.md b/session-notes/session-notes-2023-09-14.md index 0c2bac9..0bca662 100644 --- a/session-notes/session-notes-2023-09-14.md +++ b/session-notes/session-notes-2023-09-14.md @@ -1,12 +1,28 @@ # Session Date: 2023-09-14 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-21.md b/session-notes/session-notes-2023-09-21.md index 662ea25..4ddc199 100644 --- a/session-notes/session-notes-2023-09-21.md +++ b/session-notes/session-notes-2023-09-21.md @@ -1,10 +1,27 @@ # Session Date: 2023-09-21 -## Co-Authors +## Active Co-Authors Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +## Inactive Co-Authors + +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-28.md b/session-notes/session-notes-2023-09-28.md index 1d5266e..71654ae 100644 --- a/session-notes/session-notes-2023-09-28.md +++ b/session-notes/session-notes-2023-09-28.md @@ -1,6 +1,6 @@ # Session Date: 2023-09-28 -## Co-Authors +## Active Co-Authors Co-Authored-By: Woody Zuill <wzuill@yahoo.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -8,6 +8,22 @@ Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-10-05.md b/session-notes/session-notes-2023-10-05.md index a75622e..04cc94a 100644 --- a/session-notes/session-notes-2023-10-05.md +++ b/session-notes/session-notes-2023-10-05.md @@ -1,6 +1,6 @@ # Session Date: 2023-10-12 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -8,6 +8,22 @@ Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors + +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-10-12.md b/session-notes/session-notes-2023-10-12.md index ba52ab0..4974922 100644 --- a/session-notes/session-notes-2023-10-12.md +++ b/session-notes/session-notes-2023-10-12.md @@ -1,6 +1,6 @@ # Session Date: 2023-10-12 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-10-19.md b/session-notes/session-notes-2023-10-19.md index 0712a39..d43ed9f 100644 --- a/session-notes/session-notes-2023-10-19.md +++ b/session-notes/session-notes-2023-10-19.md @@ -1,6 +1,5 @@ -# Session Date: 2023-10-19 -## Co-Authors +## Active Co-Authors Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> diff --git a/session-notes/session-notes-2023-11-09.md b/session-notes/session-notes-2023-11-09.md index 1e64114..4c328d8 100644 --- a/session-notes/session-notes-2023-11-09.md +++ b/session-notes/session-notes-2023-11-09.md @@ -1,6 +1,6 @@ # Session Date: 2023-11-09 -## Co-Authors +## Active Co-Authors Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -10,6 +10,20 @@ Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Idan Melamed <idanmel@gmail.com> Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> +## Inactive Co-Authors +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-11-16.md b/session-notes/session-notes-2023-11-16.md index 348ee66..5ae17dd 100644 --- a/session-notes/session-notes-2023-11-16.md +++ b/session-notes/session-notes-2023-11-16.md @@ -1,6 +1,6 @@ # Session Date: 2023-11-16 -## Co-Authors +## Active Co-Authors Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -8,6 +8,22 @@ Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Idan Melamed <idanmel@gmail.com> +## Inactive Co-Authors +Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> +Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-11-23.md b/session-notes/session-notes-2023-11-23.md index 5dbd342..c248a4a 100644 --- a/session-notes/session-notes-2023-11-23.md +++ b/session-notes/session-notes-2023-11-23.md @@ -1,11 +1,29 @@ # Session Date: 2023-11-23 -## Co-Authors +## Active Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +## Inactive Co-Authors +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: Blaise Pabon <blaise@gmail.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> +Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-12-07.md b/session-notes/session-notes-2023-12-07.md index 8409e27..1b96160 100644 --- a/session-notes/session-notes-2023-12-07.md +++ b/session-notes/session-notes-2023-12-07.md @@ -1,6 +1,6 @@ # Session Date: 2023-12-07 -## Co-Authors +## Active Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> @@ -10,6 +10,28 @@ Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> +## Inactive Co-Authors +Co-Authored-By: Blaise Pabon <blaise@gmail.com> +Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> +Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> +Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> +Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> +Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> +Co-Authored-By: arrockt <cariari385@gmail.com> +Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> +Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> +Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> +Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> +Co-Authored-By: Idan Melamed <idanmel@gmail.com> +Co-Authored-By: Rea <reasu@protonmail.com> +Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> +Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> +Co-Authored-By: David Campey <campey@gmail.com> +Co-Authored-by: Zac Ball <zac156@gmail.com> +Co-Authored-By: Kitastro <admin@metafor.co.za> +Co-Authored-By: Woody Zuill <wzuill@yahoo.com> +Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> + # Agenda ## Bond (30 min.) diff --git a/session-notes/session-notes-YYYY-MM-DD.md b/session-notes/session-notes-YYYY-MM-DD.md index 244c014..c568887 100644 --- a/session-notes/session-notes-YYYY-MM-DD.md +++ b/session-notes/session-notes-YYYY-MM-DD.md @@ -1,5 +1,5 @@ -# Session Date: YYYY-MM-DD -## Co-Authors + +## Active Co-Authors ## Inactive Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> From a41358a7153b70f8b6c7fcbcf1ff996259d74707 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Fri, 15 Dec 2023 04:26:32 -0500 Subject: [PATCH 37/51] . r Tweak heder regex's and reuse them across functions. --- .../session_notes_cleaner.py | 42 +++++++++++++++---- tests/test_session_notes_cleaner.py | 16 +++++-- 2 files changed, 46 insertions(+), 12 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index a9d7c95..afe67ba 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -3,32 +3,55 @@ import shutil import sys +inactive_co_author_header_pattern = r'^#+\s*Inactive\s(Co-Authors)?.*$' + +active_co_author_header_pattern = r'^#+\s*(Active Co-Authors|Co-Authors \(This Session\)).*$' + class SessionNotesCleaner: def __init__(self): pass def contains_inactive_coauthors(self, text): - return bool(re.search(r'^#+\s*Inactive( Co-Authors)?', text, re.IGNORECASE | re.MULTILINE)) + return bool(re.search(inactive_co_author_header_pattern, text, + flags=re.IGNORECASE | re.MULTILINE)) def delete_inactive_coauthors(self, text): - return re.sub(r'^#+\s*Inactive( Co-Authors)?.*?(?=^#|\Z)', '', text, + return re.sub(r'^#+\s*Inactive Co-Authors.*?(?=^#|\Z)', '', text, flags=re.IGNORECASE | re.MULTILINE | re.DOTALL) def contains_active_coauthors(self, text): - return bool(re.search(r'^#+\s*(Active )?Co-Authors', text, re.IGNORECASE | re.MULTILINE)) + return bool(re.search(active_co_author_header_pattern, text, + flags=re.IGNORECASE | re.MULTILINE)) def standardize_coauthor_heading(self, text): - return re.sub(r'^#+\s*.*?((?:Inactive\s+)?)\s*Co-?Author.*', r'## \1Co-Authors', - text, - flags=re.IGNORECASE | re.MULTILINE) + # Co-Authors (This Session) + # Active Co-Authors + # active_co_author_search_pattern = r'^#+\s*((?:Active\s+)?)Co-?Authors.*$' + active_co_author_search_pattern = active_co_author_header_pattern + active_co_author_replace_pattern = r'## Co-Authors' + standardized_text_for_active_authors = \ + re.sub(active_co_author_search_pattern, active_co_author_replace_pattern, text, + flags=re.IGNORECASE | re.MULTILINE) + + # Inactive Co-Authors + # Inactive + inactive_co_author_search_pattern = inactive_co_author_header_pattern + inactive_co_author_replace_pattern = r'## Inactive Co-Authors' + standardized_text_for_active_and_inactive_authors \ + = re.sub(inactive_co_author_search_pattern, inactive_co_author_replace_pattern, + standardized_text_for_active_authors, + flags=re.IGNORECASE | re.MULTILINE) + + return standardized_text_for_active_and_inactive_authors def remove_coauthor_headings(self, text): # Regular expression to match 1st and 2nd level headings with "Co-Authors" # Assumes Markdown formatting where 1st level is '# ' and 2nd level is '## ' standard_text = self.standardize_coauthor_heading(text) pattern = r'^#{1,2}\s*Co-Authors.*$\n?' - cleaned_text = re.sub(pattern, '', standard_text, flags=re.IGNORECASE | re.MULTILINE) + cleaned_text = re.sub(pattern, '', standard_text, + flags=re.IGNORECASE | re.MULTILINE) return cleaned_text @@ -58,8 +81,9 @@ def cleanup_contents(self, text, session_date): if not self.contains_session_date(text): text = f"# Session Date: {session_date}\n" + text text = self.standardize_coauthor_heading(text) - if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): - text = self.delete_inactive_coauthors(text) + # if self.contains_active_coauthors(text) and self.contains_inactive_coauthors(text): + text = self.delete_inactive_coauthors(text) + text = self.remove_coauthor_headings(text) text = self.add_coauthor_heading_before_co_authored_by_list(text) return text diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 4d24b53..4452c13 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -38,16 +38,26 @@ def test_delete_inactive_coauthors(self): verify(clean_text) def test_normalize_coauthor_heading(self): + text = "" + text += "## Co-Authors (This Session)\n" + text += "## Active Co-Authors\n" + text += "\n" + text += "## Inactive Co-Authors\n" + text += "## Inactive\n" + cleaner = SessionNotesCleaner() - text = "## Coauthors\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" - text += "## Inactive\n## Inactive Co-Authors\n## Inactive CoAuthors\n" clean_text = cleaner.standardize_coauthor_heading(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text) def test_remove_coauthor_headings(self): cleaner = SessionNotesCleaner() - text = "## Coauthors\n## Facilitator\n## Active Co-Authors\n## Today's Co-Authors\n## Co-Authors (today)\n" + text = "" + text += "## Co-Authors (This Session)\n" + text += "## Active Co-Authors\n" + text += "\n" + text += "## Inactive Co-Authors\n" + text += "## Inactive\n" clean_text = cleaner.remove_coauthor_headings(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text) From 987bef4135cb189b6234e5e7779f071d28ce43cc Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Fri, 15 Dec 2023 04:35:42 -0500 Subject: [PATCH 38/51] . F Cleaned all session files!!!! Task DONE! --- session-notes/session-notes-2022-10-13.md | 1 + session-notes/session-notes-2022-10-20.md | 1 + session-notes/session-notes-2022-11-03.md | 1 + session-notes/session-notes-2022-11-10.md | 1 + session-notes/session-notes-2022-11-24.md | 1 + session-notes/session-notes-2022-12-01.md | 1 + session-notes/session-notes-2022-12-08.md | 1 + session-notes/session-notes-2022-12-15.md | 1 + session-notes/session-notes-2022-12-22.md | 1 + session-notes/session-notes-2023-01-05.md | 1 + session-notes/session-notes-2023-01-12.md | 1 + session-notes/session-notes-2023-01-19.md | 1 + session-notes/session-notes-2023-01-26.md | 1 + session-notes/session-notes-2023-02-02.md | 2 ++ session-notes/session-notes-2023-02-09.md | 2 ++ session-notes/session-notes-2023-02-16.md | 2 ++ session-notes/session-notes-2023-02-23.md | 2 ++ session-notes/session-notes-2023-03-02.md | 2 ++ session-notes/session-notes-2023-03-09.md | 2 ++ session-notes/session-notes-2023-03-16.md | 2 ++ .../session-notes-2023-03-16.session2.md | 2 ++ session-notes/session-notes-2023-03-23.md | 2 ++ session-notes/session-notes-2023-03-30.md | 2 ++ session-notes/session-notes-2023-04-06.md | 15 ++---------- session-notes/session-notes-2023-04-13.md | 2 ++ session-notes/session-notes-2023-04-27.md | 16 ++----------- session-notes/session-notes-2023-05-04.md | 15 ++---------- session-notes/session-notes-2023-05-11.md | 4 ++-- session-notes/session-notes-2023-05-18.md | 17 ++----------- session-notes/session-notes-2023-05-25.md | 17 ++----------- session-notes/session-notes-2023-06-01.md | 18 ++------------ session-notes/session-notes-2023-06-08.md | 19 ++------------- session-notes/session-notes-2023-06-15.md | 19 ++------------- session-notes/session-notes-2023-06-22.md | 19 ++------------- session-notes/session-notes-2023-07-06.md | 19 ++------------- session-notes/session-notes-2023-07-13.md | 19 ++------------- session-notes/session-notes-2023-07-20.md | 18 ++------------ session-notes/session-notes-2023-07-27.md | 4 ++-- session-notes/session-notes-2023-08-17.md | 21 ++-------------- session-notes/session-notes-2023-08-24.md | 19 +-------------- session-notes/session-notes-2023-08-31.md | 18 +------------- session-notes/session-notes-2023-09-07.md | 2 +- session-notes/session-notes-2023-09-14.md | 18 +------------- session-notes/session-notes-2023-09-21.md | 19 +-------------- session-notes/session-notes-2023-09-28.md | 18 +------------- session-notes/session-notes-2023-10-05.md | 18 +------------- session-notes/session-notes-2023-10-12.md | 2 +- session-notes/session-notes-2023-10-19.md | 3 ++- session-notes/session-notes-2023-11-09.md | 16 +------------ session-notes/session-notes-2023-11-16.md | 18 +------------- session-notes/session-notes-2023-11-23.md | 20 +--------------- session-notes/session-notes-2023-12-07.md | 24 +------------------ session-notes/session-notes-2023-12-14.md | 2 +- 53 files changed, 80 insertions(+), 392 deletions(-) diff --git a/session-notes/session-notes-2022-10-13.md b/session-notes/session-notes-2022-10-13.md index 040685a..0847a00 100644 --- a/session-notes/session-notes-2022-10-13.md +++ b/session-notes/session-notes-2022-10-13.md @@ -1,3 +1,4 @@ +# Session Date: 2022-10-13 # How did that feel? - Liked the Game, is cool. Works well as a timer (has bugs). Like a mini retro all the time. - Great Time diff --git a/session-notes/session-notes-2022-10-20.md b/session-notes/session-notes-2022-10-20.md index 7cf4e47..32c8030 100644 --- a/session-notes/session-notes-2022-10-20.md +++ b/session-notes/session-notes-2022-10-20.md @@ -1,3 +1,4 @@ +# Session Date: 2022-10-20 # How did that feel? - Nice +1 - Interesting diff --git a/session-notes/session-notes-2022-11-03.md b/session-notes/session-notes-2022-11-03.md index 8acf3b9..e0e1818 100644 --- a/session-notes/session-notes-2022-11-03.md +++ b/session-notes/session-notes-2022-11-03.md @@ -1,3 +1,4 @@ +# Session Date: 2022-11-03 # How did that feel? - Enjoyed it, a bit of small talk in the beggining - Felt productive, made good progress diff --git a/session-notes/session-notes-2022-11-10.md b/session-notes/session-notes-2022-11-10.md index 4a60379..448a7bc 100644 --- a/session-notes/session-notes-2022-11-10.md +++ b/session-notes/session-notes-2022-11-10.md @@ -1,3 +1,4 @@ +# Session Date: 2022-11-10 # How did that feel? - I like working on Testinfrastructure - Nice engineering challenge diff --git a/session-notes/session-notes-2022-11-24.md b/session-notes/session-notes-2022-11-24.md index 831a77b..2620bb0 100644 --- a/session-notes/session-notes-2022-11-24.md +++ b/session-notes/session-notes-2022-11-24.md @@ -1,3 +1,4 @@ +# Session Date: 2022-11-24 # How did that feel? - frustrating +1 - happy that we found the cause in the end +1 diff --git a/session-notes/session-notes-2022-12-01.md b/session-notes/session-notes-2022-12-01.md index 09e26a3..dca2fe0 100644 --- a/session-notes/session-notes-2022-12-01.md +++ b/session-notes/session-notes-2022-12-01.md @@ -1,3 +1,4 @@ +# Session Date: 2022-12-01 # How did that feel? - Challenging +100 - Not Stable, constantly port in use diff --git a/session-notes/session-notes-2022-12-08.md b/session-notes/session-notes-2022-12-08.md index 5f90996..4d0f053 100644 --- a/session-notes/session-notes-2022-12-08.md +++ b/session-notes/session-notes-2022-12-08.md @@ -1,3 +1,4 @@ +# Session Date: 2022-12-08 # Goal - Fix inconsistent test failures around the wsserver diff --git a/session-notes/session-notes-2022-12-15.md b/session-notes/session-notes-2022-12-15.md index dadb559..3c0803b 100644 --- a/session-notes/session-notes-2022-12-15.md +++ b/session-notes/session-notes-2022-12-15.md @@ -1,3 +1,4 @@ +# Session Date: 2022-12-15 # Goal - curios to test the rotation issue again manually diff --git a/session-notes/session-notes-2022-12-22.md b/session-notes/session-notes-2022-12-22.md index 4e526eb..cfe14ca 100644 --- a/session-notes/session-notes-2022-12-22.md +++ b/session-notes/session-notes-2022-12-22.md @@ -1,3 +1,4 @@ +# Session Date: 2022-12-22 # Goal - [X] !! potential bug: rotate button should not use rotateToTarget diff --git a/session-notes/session-notes-2023-01-05.md b/session-notes/session-notes-2023-01-05.md index 9b1f19c..684fa5a 100644 --- a/session-notes/session-notes-2023-01-05.md +++ b/session-notes/session-notes-2023-01-05.md @@ -1,3 +1,4 @@ +# Session Date: 2023-01-05 # Goal - [x] For next time we could take a look at this one: diff --git a/session-notes/session-notes-2023-01-12.md b/session-notes/session-notes-2023-01-12.md index 7022d1c..6863504 100644 --- a/session-notes/session-notes-2023-01-12.md +++ b/session-notes/session-notes-2023-01-12.md @@ -1,3 +1,4 @@ +# Session Date: 2023-01-12 # Goal - Bug: Game ID should be in the URL - Exploratory testing diff --git a/session-notes/session-notes-2023-01-19.md b/session-notes/session-notes-2023-01-19.md index 0280569..0071db8 100644 --- a/session-notes/session-notes-2023-01-19.md +++ b/session-notes/session-notes-2023-01-19.md @@ -1,3 +1,4 @@ +# Session Date: 2023-01-19 # Goal - Limit number of points to 3 per role - Exploratory testing diff --git a/session-notes/session-notes-2023-01-26.md b/session-notes/session-notes-2023-01-26.md index 12d55a5..7697616 100644 --- a/session-notes/session-notes-2023-01-26.md +++ b/session-notes/session-notes-2023-01-26.md @@ -1,3 +1,4 @@ +# Session Date: 2023-01-26 # Goal - Exploratory testing - A: which part? Q: all the app diff --git a/session-notes/session-notes-2023-02-02.md b/session-notes/session-notes-2023-02-02.md index c83ba12..1c43b37 100644 --- a/session-notes/session-notes-2023-02-02.md +++ b/session-notes/session-notes-2023-02-02.md @@ -1,3 +1,5 @@ +# Session Date: 2023-02-02 +## Co-Authors Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-02-09.md b/session-notes/session-notes-2023-02-09.md index 0d33c23..831a825 100644 --- a/session-notes/session-notes-2023-02-09.md +++ b/session-notes/session-notes-2023-02-09.md @@ -1,3 +1,5 @@ +# Session Date: 2023-02-09 +## Co-Authors Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Rea <reasu@protonmail.com> diff --git a/session-notes/session-notes-2023-02-16.md b/session-notes/session-notes-2023-02-16.md index deca73e..c65be34 100644 --- a/session-notes/session-notes-2023-02-16.md +++ b/session-notes/session-notes-2023-02-16.md @@ -1,3 +1,5 @@ +# Session Date: 2023-02-16 +## Co-Authors Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-02-23.md b/session-notes/session-notes-2023-02-23.md index a57b769..b84c3f2 100644 --- a/session-notes/session-notes-2023-02-23.md +++ b/session-notes/session-notes-2023-02-23.md @@ -1,3 +1,5 @@ +# Session Date: 2023-02-23 +## Co-Authors Co-Authored-By: Rea <reasu@protonmail.com> Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-03-02.md b/session-notes/session-notes-2023-03-02.md index 56abc86..fd0215a 100644 --- a/session-notes/session-notes-2023-03-02.md +++ b/session-notes/session-notes-2023-03-02.md @@ -1,3 +1,5 @@ +# Session Date: 2023-03-02 +## Co-Authors Co-Authored-By: arrockt <cariari385@gmail.com> Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> diff --git a/session-notes/session-notes-2023-03-09.md b/session-notes/session-notes-2023-03-09.md index 76fe770..1581570 100644 --- a/session-notes/session-notes-2023-03-09.md +++ b/session-notes/session-notes-2023-03-09.md @@ -1,3 +1,5 @@ +# Session Date: 2023-03-09 +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-03-16.md b/session-notes/session-notes-2023-03-16.md index df3ef61..aa9a26d 100644 --- a/session-notes/session-notes-2023-03-16.md +++ b/session-notes/session-notes-2023-03-16.md @@ -1,3 +1,5 @@ +# Session Date: 2023-03-16 +## Co-Authors Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-03-16.session2.md b/session-notes/session-notes-2023-03-16.session2.md index 464882e..47c0202 100644 --- a/session-notes/session-notes-2023-03-16.session2.md +++ b/session-notes/session-notes-2023-03-16.session2.md @@ -1,3 +1,5 @@ +# Session Date: 2023-03-16 +## Co-Authors Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> # Agenda diff --git a/session-notes/session-notes-2023-03-23.md b/session-notes/session-notes-2023-03-23.md index 6d3b070..35671a6 100644 --- a/session-notes/session-notes-2023-03-23.md +++ b/session-notes/session-notes-2023-03-23.md @@ -1,3 +1,5 @@ +# Session Date: 2023-03-23 +## Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-03-30.md b/session-notes/session-notes-2023-03-30.md index 6aaafc2..7eeed6d 100644 --- a/session-notes/session-notes-2023-03-30.md +++ b/session-notes/session-notes-2023-03-30.md @@ -1,4 +1,6 @@ +# Session Date: 2023-03-30 Session 1: +## Co-Authors Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-04-06.md b/session-notes/session-notes-2023-04-06.md index 18d83b5..c31ca32 100644 --- a/session-notes/session-notes-2023-04-06.md +++ b/session-notes/session-notes-2023-04-06.md @@ -1,22 +1,11 @@ +# Session Date: 2023-04-06 ## Active +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive - -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (~~15~~60 min.) diff --git a/session-notes/session-notes-2023-04-13.md b/session-notes/session-notes-2023-04-13.md index 93c9abe..e47d2fd 100644 --- a/session-notes/session-notes-2023-04-13.md +++ b/session-notes/session-notes-2023-04-13.md @@ -1,3 +1,5 @@ +# Session Date: 2023-04-13 +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-04-27.md b/session-notes/session-notes-2023-04-27.md index fb78505..95d6520 100644 --- a/session-notes/session-notes-2023-04-27.md +++ b/session-notes/session-notes-2023-04-27.md @@ -1,23 +1,11 @@ -# Co-Authors (This Session) +# Session Date: 2023-04-27 +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -## Active Co-Authors - -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> # Agenda diff --git a/session-notes/session-notes-2023-05-04.md b/session-notes/session-notes-2023-05-04.md index 64983ce..6c7075f 100644 --- a/session-notes/session-notes-2023-05-04.md +++ b/session-notes/session-notes-2023-05-04.md @@ -1,24 +1,13 @@ -# Co-Authors (This Session) +# Session Date: 2023-05-04 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-05-11.md b/session-notes/session-notes-2023-05-11.md index bf0a18a..6cc68e1 100644 --- a/session-notes/session-notes-2023-05-11.md +++ b/session-notes/session-notes-2023-05-11.md @@ -1,7 +1,7 @@ -# Co-Authors (This Session) +# Session Date: 2023-05-11 -## Active Co-Authors +## Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-05-18.md b/session-notes/session-notes-2023-05-18.md index c05b157..a7400d1 100644 --- a/session-notes/session-notes-2023-05-18.md +++ b/session-notes/session-notes-2023-05-18.md @@ -1,24 +1,11 @@ -# Co-Authors (This Session) +# Session Date: 2023-05-18 -## Active Co-Authors +## Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-05-25.md b/session-notes/session-notes-2023-05-25.md index 74f2945..cf74a0b 100644 --- a/session-notes/session-notes-2023-05-25.md +++ b/session-notes/session-notes-2023-05-25.md @@ -1,25 +1,12 @@ -# Co-Authors (This Session) +# Session Date: 2023-05-25 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-01.md b/session-notes/session-notes-2023-06-01.md index f0ccc50..9e58252 100644 --- a/session-notes/session-notes-2023-06-01.md +++ b/session-notes/session-notes-2023-06-01.md @@ -1,27 +1,13 @@ -# Co-Authors (This Session) +# Session Date: 2023-06-01 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: David Campey <campey@gmail.com> Co-Authored-by: Zac Ball <zac156@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-08.md b/session-notes/session-notes-2023-06-08.md index a3bc2c4..42844d3 100644 --- a/session-notes/session-notes-2023-06-08.md +++ b/session-notes/session-notes-2023-06-08.md @@ -1,28 +1,13 @@ -# Co-Authors (This Session) +# Session Date: 2023-06-08 -## Active Co-Authors +## Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: David Campey <campey@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-15.md b/session-notes/session-notes-2023-06-15.md index 52143ab..7d36888 100644 --- a/session-notes/session-notes-2023-06-15.md +++ b/session-notes/session-notes-2023-06-15.md @@ -1,28 +1,13 @@ -# Co-Authors (This Session) +# Session Date: 2023-06-15 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Nathaniel ... -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-06-22.md b/session-notes/session-notes-2023-06-22.md index 5bcf65c..e644514 100644 --- a/session-notes/session-notes-2023-06-22.md +++ b/session-notes/session-notes-2023-06-22.md @@ -1,27 +1,12 @@ -# Co-Authors (This Session) +# Session Date: 2023-06-22 -## Active Co-Authors +## Co-Authors Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-06.md b/session-notes/session-notes-2023-07-06.md index fbb5f7c..cf3c991 100644 --- a/session-notes/session-notes-2023-07-06.md +++ b/session-notes/session-notes-2023-07-06.md @@ -1,27 +1,12 @@ -# Co-Authors (This Session) +# Session Date: 2023-07-06 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-13.md b/session-notes/session-notes-2023-07-13.md index 9f5cda2..1340c88 100644 --- a/session-notes/session-notes-2023-07-13.md +++ b/session-notes/session-notes-2023-07-13.md @@ -1,27 +1,12 @@ -# Co-Authors (This Session) +# Session Date: 2023-07-13 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-20.md b/session-notes/session-notes-2023-07-20.md index bb35606..3af7975 100644 --- a/session-notes/session-notes-2023-07-20.md +++ b/session-notes/session-notes-2023-07-20.md @@ -1,27 +1,13 @@ -# Co-Authors (This Session) +# Session Date: 2023-07-20 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-07-27.md b/session-notes/session-notes-2023-07-27.md index 51cf1db..03c2527 100644 --- a/session-notes/session-notes-2023-07-27.md +++ b/session-notes/session-notes-2023-07-27.md @@ -1,6 +1,6 @@ -# Co-Authors (This Session) +# Session Date: 2023-07-27 -## Active Co-Authors +## Co-Authors Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> diff --git a/session-notes/session-notes-2023-08-17.md b/session-notes/session-notes-2023-08-17.md index ea4fd96..aa5cbe7 100644 --- a/session-notes/session-notes-2023-08-17.md +++ b/session-notes/session-notes-2023-08-17.md @@ -1,28 +1,11 @@ -# Co-Authors (This Session) +# Session Date: 2023-08-17 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-08-24.md b/session-notes/session-notes-2023-08-24.md index 11f1c9d..d2ac8e7 100644 --- a/session-notes/session-notes-2023-08-24.md +++ b/session-notes/session-notes-2023-08-24.md @@ -1,28 +1,11 @@ # Session Date: 2023-08-24 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-08-31.md b/session-notes/session-notes-2023-08-31.md index 527ce6b..cb7a086 100644 --- a/session-notes/session-notes-2023-08-31.md +++ b/session-notes/session-notes-2023-08-31.md @@ -1,28 +1,12 @@ # Session Date: 2023-08-31 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-07.md b/session-notes/session-notes-2023-09-07.md index c8274b5..7638fdc 100644 --- a/session-notes/session-notes-2023-09-07.md +++ b/session-notes/session-notes-2023-09-07.md @@ -1,7 +1,7 @@ # Session Date: 2023-09-07 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> diff --git a/session-notes/session-notes-2023-09-14.md b/session-notes/session-notes-2023-09-14.md index 0bca662..50386fb 100644 --- a/session-notes/session-notes-2023-09-14.md +++ b/session-notes/session-notes-2023-09-14.md @@ -1,28 +1,12 @@ # Session Date: 2023-09-14 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-21.md b/session-notes/session-notes-2023-09-21.md index 4ddc199..662ea25 100644 --- a/session-notes/session-notes-2023-09-21.md +++ b/session-notes/session-notes-2023-09-21.md @@ -1,27 +1,10 @@ # Session Date: 2023-09-21 -## Active Co-Authors +## Co-Authors Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -## Inactive Co-Authors - -Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-09-28.md b/session-notes/session-notes-2023-09-28.md index 71654ae..e5fa14c 100644 --- a/session-notes/session-notes-2023-09-28.md +++ b/session-notes/session-notes-2023-09-28.md @@ -1,29 +1,13 @@ # Session Date: 2023-09-28 -## Active Co-Authors +## Co-Authors Co-Authored-By: Woody Zuill <wzuill@yahoo.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> -Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-10-05.md b/session-notes/session-notes-2023-10-05.md index 04cc94a..d82cb8f 100644 --- a/session-notes/session-notes-2023-10-05.md +++ b/session-notes/session-notes-2023-10-05.md @@ -1,29 +1,13 @@ # Session Date: 2023-10-12 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors - -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> -Co-Authored-By: Woody Zuill <wzuill@yahoo.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-10-12.md b/session-notes/session-notes-2023-10-12.md index 4974922..ba52ab0 100644 --- a/session-notes/session-notes-2023-10-12.md +++ b/session-notes/session-notes-2023-10-12.md @@ -1,6 +1,6 @@ # Session Date: 2023-10-12 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> diff --git a/session-notes/session-notes-2023-10-19.md b/session-notes/session-notes-2023-10-19.md index d43ed9f..0712a39 100644 --- a/session-notes/session-notes-2023-10-19.md +++ b/session-notes/session-notes-2023-10-19.md @@ -1,5 +1,6 @@ +# Session Date: 2023-10-19 -## Active Co-Authors +## Co-Authors Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> diff --git a/session-notes/session-notes-2023-11-09.md b/session-notes/session-notes-2023-11-09.md index 4c328d8..1e64114 100644 --- a/session-notes/session-notes-2023-11-09.md +++ b/session-notes/session-notes-2023-11-09.md @@ -1,6 +1,6 @@ # Session Date: 2023-11-09 -## Active Co-Authors +## Co-Authors Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -10,20 +10,6 @@ Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Idan Melamed <idanmel@gmail.com> Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> -## Inactive Co-Authors -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> -Co-Authored-By: Woody Zuill <wzuill@yahoo.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-11-16.md b/session-notes/session-notes-2023-11-16.md index 5ae17dd..348ee66 100644 --- a/session-notes/session-notes-2023-11-16.md +++ b/session-notes/session-notes-2023-11-16.md @@ -1,6 +1,6 @@ # Session Date: 2023-11-16 -## Active Co-Authors +## Co-Authors Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> @@ -8,22 +8,6 @@ Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Idan Melamed <idanmel@gmail.com> -## Inactive Co-Authors -Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> -Co-Authored-By: Woody Zuill <wzuill@yahoo.com> -Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-11-23.md b/session-notes/session-notes-2023-11-23.md index c248a4a..5dbd342 100644 --- a/session-notes/session-notes-2023-11-23.md +++ b/session-notes/session-notes-2023-11-23.md @@ -1,29 +1,11 @@ # Session Date: 2023-11-23 -## Active Co-Authors +## Co-Authors Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -## Inactive Co-Authors -Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: Blaise Pabon <blaise@gmail.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> -Co-Authored-By: Woody Zuill <wzuill@yahoo.com> -Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - # Agenda ## Bond (15 min.) diff --git a/session-notes/session-notes-2023-12-07.md b/session-notes/session-notes-2023-12-07.md index 1b96160..8409e27 100644 --- a/session-notes/session-notes-2023-12-07.md +++ b/session-notes/session-notes-2023-12-07.md @@ -1,6 +1,6 @@ # Session Date: 2023-12-07 -## Active Co-Authors +## Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> @@ -10,28 +10,6 @@ Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> -## Inactive Co-Authors -Co-Authored-By: Blaise Pabon <blaise@gmail.com> -Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> -Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> -Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> -Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: 4dsherwood <4dsherwood@users.noreply.github.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> -Co-Authored-By: David Campey <campey@gmail.com> -Co-Authored-by: Zac Ball <zac156@gmail.com> -Co-Authored-By: Kitastro <admin@metafor.co.za> -Co-Authored-By: Woody Zuill <wzuill@yahoo.com> -Co-Authored-By: Llewellyn Falco <llewellyn.falco@gmail.com> - # Agenda ## Bond (30 min.) diff --git a/session-notes/session-notes-2023-12-14.md b/session-notes/session-notes-2023-12-14.md index 074e734..c0e7ed3 100644 --- a/session-notes/session-notes-2023-12-14.md +++ b/session-notes/session-notes-2023-12-14.md @@ -2,7 +2,7 @@ ## Facilitated by - Joel Silberman -## Active Co-Authors +## Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> Co-Authored-By: Blaise Pabon <blaise@gmail.com> Co-Authored-By: Gregor Riegler <rieglerg85@gmail.com> From e05a26430cab0b7a081bebccaad2ea5d4a35b60e Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Mon, 18 Dec 2023 18:23:57 -0500 Subject: [PATCH 39/51] . d Add TODO --- src/session_notes_cleanup/session_notes_cleaner.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index afe67ba..3c74fc0 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -4,9 +4,11 @@ import sys inactive_co_author_header_pattern = r'^#+\s*Inactive\s(Co-Authors)?.*$' - active_co_author_header_pattern = r'^#+\s*(Active Co-Authors|Co-Authors \(This Session\)).*$' +# TODO +# - Fix file that has no header before inactive co-authors +# - Return codes similar to diff(1) class SessionNotesCleaner: def __init__(self): From 0ef5a8e4da9146ce1fd0001dcec60d7c3a8ba09a Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Mon, 1 Jan 2024 18:44:08 -0500 Subject: [PATCH 40/51] Removed inactive contributer section that lacked header --- session-notes/session-notes-2023-04-13.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/session-notes/session-notes-2023-04-13.md b/session-notes/session-notes-2023-04-13.md index e47d2fd..08a89de 100644 --- a/session-notes/session-notes-2023-04-13.md +++ b/session-notes/session-notes-2023-04-13.md @@ -5,16 +5,6 @@ Co-Authored-By: Nitsan Avni <nitsanav@gmail.com> Co-Authored-By: Michael R. Wolf <MichaelRWolf@att.net> Co-Authored-By: Joel Silberman <42779942+jcs-instructor@users.noreply.github.com> -Co-Authored-By: arrockt <cariari385@gmail.com> -Co-Authored-By: Austin Chadwick <austin.chadwick11@gmail.com> -Co-Authored-By: Blessed538 <blesseddominic98@gmail.com> -Co-Authored-By: Eddie Bush <eddie@craftsmanshipcounts.com> -Co-Authored-By: Gabriel Mbaiorga <gabrielmbaiorga@gmail.com> -Co-Authored-By: Idan Melamed <idanmel@gmail.com> -Co-Authored-By: Rea <reasu@protonmail.com> -Co-Authored-By: Tsvetan Tsvetanov <cpi.cecko@gmail.com> -Co-Authored-By: Willem Larsen <willemlarsen@gmail.com> - # Agenda ## Bond (15 min.) From af6fbedcc1a9e95285ee884f8ac61d251bc37646 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Mon, 1 Jan 2024 20:32:28 -0500 Subject: [PATCH 41/51] Update test_session_notes_cleaner.py ! t ChatGPT generated tests. verify() uses MultiReporter --- tests/test_session_notes_cleaner.py | 81 ++++++++++++++++++++++------- 1 file changed, 63 insertions(+), 18 deletions(-) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 4452c13..adef59e 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -3,11 +3,25 @@ import unittest from approvaltests import verify - +# from approvaltests.core import approval +from approvaltests.reporters import GenericDiffReporterFactory, ClipboardReporter, MultiReporter from src.session_notes_cleanup.session_notes_cleaner import SessionNotesCleaner +default_reporter = GenericDiffReporterFactory().get_first_working() +# approval.DEFAULT_REPORTER = default_reporter + + +first_working_reporter = GenericDiffReporterFactory().get_first_working() +clipboard_reporter = ClipboardReporter() +# bc_reporter = GenericDiffReporterFactory().get("Beyond Compare") +preferred_multi_reporter = MultiReporter(first_working_reporter, clipboard_reporter) + class TestSessionNotesCleaner(unittest.TestCase): + # def setUp(self) -> None: + + # self.addCleanup(first_working_reporter.report) + def test_initialization(self): cleaner = SessionNotesCleaner() # Add assertions here to test initial conditions @@ -35,7 +49,7 @@ def test_delete_inactive_coauthors(self): cleaner = SessionNotesCleaner() text = self.sample_file_contents() clean_text = cleaner.delete_inactive_coauthors(text) - verify(clean_text) + verify(clean_text, preferred_multi_reporter) def test_normalize_coauthor_heading(self): text = "" @@ -48,7 +62,7 @@ def test_normalize_coauthor_heading(self): cleaner = SessionNotesCleaner() clean_text = cleaner.standardize_coauthor_heading(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' - verify(acceptance_text) + verify(acceptance_text, preferred_multi_reporter) def test_remove_coauthor_headings(self): cleaner = SessionNotesCleaner() @@ -60,7 +74,7 @@ def test_remove_coauthor_headings(self): text += "## Inactive\n" clean_text = cleaner.remove_coauthor_headings(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' - verify(acceptance_text) + verify(acceptance_text, preferred_multi_reporter) def test_add_coauthor_heading_before_co_authored_by_list(self): cleaner = SessionNotesCleaner() @@ -73,23 +87,53 @@ def test_add_coauthor_heading_before_co_authored_by_list(self): text += "Co-Authored-By: Jack\n" clean_text = cleaner.add_coauthor_heading_before_co_authored_by_list(text) acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' - verify(acceptance_text) + verify(acceptance_text, preferred_multi_reporter) + + # Import the function to be tested + # from your_script import get_date_from_filename + + # Test suite for 'get_date_from_filename' - def test_cleanup_contents(self): + def test_get_date_from_filename(self): cleaner = SessionNotesCleaner() - text = self.sample_file_contents() - clean_text = cleaner.cleanup_contents(text, "2023-12-07") - verify(clean_text) + + # Test with valid filenames + assert cleaner.get_date_from_filename("session-notes-2022-10-20.md") == "2022-10-20" + assert cleaner.get_date_from_filename("session-notes-2021-01-01.md") == "2021-01-01" + + # Test with filenames that do not follow the expected pattern + assert cleaner.get_date_from_filename("session-notes.md") is None + assert cleaner.get_date_from_filename("notes-2022-10-20.md") is None + assert cleaner.get_date_from_filename("session-2022-10-20.md") is None + + # Test with filenames that are close to the pattern but not exact + assert cleaner.get_date_from_filename("session-notes-2022-10-20.markdown") is None + assert cleaner.get_date_from_filename("session-notes-2022-13-01.md") is None # Invalid month + assert cleaner.get_date_from_filename("session-notes-2022-00-10.md") is None # Invalid month + + # Test with edge cases + assert cleaner.get_date_from_filename("") is None + assert cleaner.get_date_from_filename(" ") is None + + # Note: Replace 'your_script' with the name of the Python file where 'get_date_from_filename' is defined. + + +def test_cleanup_contents(self): + cleaner = SessionNotesCleaner() + text = self.sample_file_contents() + clean_text = cleaner.cleanup_contents(text, "2023-12-07") + verify(clean_text, preferred_multi_reporter) @staticmethod - def strip_trailing_whitespace(text): + def strip_trailing_whitespace(multi_line_text): # Regular expression pattern to match trailing horizontal whitespace on each line, excluding newline pattern = r'[ \t]+\n' # Replace matched patterns with nothing (i.e., remove them) - return re.sub(pattern, '\n', text) + return re.sub(pattern, '\n', multi_line_text) + - def sample_file_contents(self): - text = '''# Session Date: 2023-12-07 +def sample_file_contents(self): + text = '''# Session Date: 2023-12-07 ## Active Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> @@ -174,10 +218,11 @@ def sample_file_contents(self): - 3. consider a checklist for newcomers (was a discussion about this) - 4. consider items in the backlog (reminders, what are we working on, etc. ''' - return self.strip_trailing_whitespace(text) + return self.strip_trailing_whitespace(text) - def test_strip_trailing_whitespace(self): - text = '''Line with trailing spaces + +def test_strip_trailing_whitespace(self): + text = '''Line with trailing spaces Line with trailing tabs Line with 4 leading spaces Line with 2 leading tabs @@ -189,8 +234,8 @@ def test_strip_trailing_whitespace(self): This is last line. ''' - stripped_text = self.strip_trailing_whitespace(text) - verify(stripped_text) + stripped_text = self.strip_trailing_whitespace(text) + verify(stripped_text, preferred_multi_reporter) if __name__ == '__main__': From c569a1f677133a6e08339b859379101c786892e9 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 11:05:40 -0500 Subject: [PATCH 42/51] - f Tighten up RegExp to match date in filename --- src/session_notes_cleanup/session_notes_cleaner.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 3c74fc0..818eb90 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -7,7 +7,6 @@ active_co_author_header_pattern = r'^#+\s*(Active Co-Authors|Co-Authors \(This Session\)).*$' # TODO -# - Fix file that has no header before inactive co-authors # - Return codes similar to diff(1) class SessionNotesCleaner: @@ -66,7 +65,7 @@ def add_coauthor_heading_before_co_authored_by_list(self, text): return cleaned_text def get_date_from_filename(self, filename): - match = re.search(r'(\d{4}-\d{2}-\d{2})', filename, re.IGNORECASE) + match = re.search(r'^session-notes-(\d{4}-\d{2}-\d{2}).*[.]md$', filename) return match.group(1) if match else None def slurp_file(self, filename): From fd4896dbda9ddf2cca46bad4591f309b9cbb9d1d Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 11:07:55 -0500 Subject: [PATCH 43/51] - t Cleaned up AI-generated test cases --- tests/test_session_notes_cleaner.py | 56 ++++++++++++++--------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index adef59e..2e41e54 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -5,6 +5,7 @@ from approvaltests import verify # from approvaltests.core import approval from approvaltests.reporters import GenericDiffReporterFactory, ClipboardReporter, MultiReporter + from src.session_notes_cleanup.session_notes_cleaner import SessionNotesCleaner default_reporter = GenericDiffReporterFactory().get_first_working() @@ -98,31 +99,31 @@ def test_get_date_from_filename(self): cleaner = SessionNotesCleaner() # Test with valid filenames - assert cleaner.get_date_from_filename("session-notes-2022-10-20.md") == "2022-10-20" - assert cleaner.get_date_from_filename("session-notes-2021-01-01.md") == "2021-01-01" + self.assertEqual(cleaner.get_date_from_filename("session-notes-2022-10-20.md"), "2022-10-20") + self.assertEqual(cleaner.get_date_from_filename("session-notes-2021-01-01.md"), "2021-01-01") + self.assertEqual(cleaner.get_date_from_filename("session-notes-2021-01-01-part2.md"), "2021-01-01") # Test with filenames that do not follow the expected pattern - assert cleaner.get_date_from_filename("session-notes.md") is None - assert cleaner.get_date_from_filename("notes-2022-10-20.md") is None - assert cleaner.get_date_from_filename("session-2022-10-20.md") is None - - # Test with filenames that are close to the pattern but not exact - assert cleaner.get_date_from_filename("session-notes-2022-10-20.markdown") is None - assert cleaner.get_date_from_filename("session-notes-2022-13-01.md") is None # Invalid month - assert cleaner.get_date_from_filename("session-notes-2022-00-10.md") is None # Invalid month - - # Test with edge cases - assert cleaner.get_date_from_filename("") is None - assert cleaner.get_date_from_filename(" ") is None - - # Note: Replace 'your_script' with the name of the Python file where 'get_date_from_filename' is defined. - - -def test_cleanup_contents(self): - cleaner = SessionNotesCleaner() - text = self.sample_file_contents() - clean_text = cleaner.cleanup_contents(text, "2023-12-07") - verify(clean_text, preferred_multi_reporter) + self.assertIsNone(cleaner.get_date_from_filename("session-notes.md")) # no date + self.assertIsNone(cleaner.get_date_from_filename("Session-notes-2000-01-01.md")) # Incorrect capitalization + self.assertIsNone(cleaner.get_date_from_filename("session-notes-2000-01-01.txt")) # Incorrect extension + self.assertIsNone(cleaner.get_date_from_filename("notes-2022-10-20.md")) # incomplete leading part + self.assertIsNone(cleaner.get_date_from_filename("session-2022-10-20.md")) # incomplete leading part + + # # Test with filenames that are close to the pattern but not exact + # assert cleaner.get_date_from_filename("session-notes-2022-10-20.markdown") is None + # assert cleaner.get_date_from_filename("session-notes-2022-13-01.md") is None # Invalid month + # assert cleaner.get_date_from_filename("session-notes-2022-00-10.md") is None # Invalid month + # + # # Test with edge cases + # assert cleaner.get_date_from_filename("") is None + # assert cleaner.get_date_from_filename(" ") is None + + def test_cleanup_contents(self): + cleaner = SessionNotesCleaner() + text = self.sample_file_contents() + clean_text = cleaner.cleanup_contents(text, "2023-12-07") + verify(clean_text, preferred_multi_reporter) @staticmethod def strip_trailing_whitespace(multi_line_text): @@ -131,9 +132,8 @@ def strip_trailing_whitespace(multi_line_text): # Replace matched patterns with nothing (i.e., remove them) return re.sub(pattern, '\n', multi_line_text) - -def sample_file_contents(self): - text = '''# Session Date: 2023-12-07 + def sample_file_contents(self): + text = '''# Session Date: 2023-12-07 ## Active Co-Authors Co-Authored-By: Nathaniel Herman <nathaniel.herman@gmail.com> @@ -188,7 +188,7 @@ def sample_file_contents(self): - exciting, playful - curious, scared, fulfilled - rocky, relieved -- resfreshing, collaborative +- refreshing, collaborative What did you like so much you want to do more of it / do it again? - clojure @@ -218,7 +218,7 @@ def sample_file_contents(self): - 3. consider a checklist for newcomers (was a discussion about this) - 4. consider items in the backlog (reminders, what are we working on, etc. ''' - return self.strip_trailing_whitespace(text) + return self.strip_trailing_whitespace(text) def test_strip_trailing_whitespace(self): From d4d22ff0b6bced96d4fd68d40abc8bd7e805f2eb Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 11:37:16 -0500 Subject: [PATCH 44/51] - f Check for valid date in filename. Enable more AI-generated tests. --- .../session_notes_cleaner.py | 16 +++++++++++- tests/test_session_notes_cleaner.py | 25 ++++++++----------- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 818eb90..2fdcccf 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -2,10 +2,12 @@ import re import shutil import sys +from datetime import datetime inactive_co_author_header_pattern = r'^#+\s*Inactive\s(Co-Authors)?.*$' active_co_author_header_pattern = r'^#+\s*(Active Co-Authors|Co-Authors \(This Session\)).*$' + # TODO # - Return codes similar to diff(1) @@ -64,9 +66,21 @@ def add_coauthor_heading_before_co_authored_by_list(self, text): flags=re.IGNORECASE | re.MULTILINE) return cleaned_text + def get_date_from_filename(self, filename): match = re.search(r'^session-notes-(\d{4}-\d{2}-\d{2}).*[.]md$', filename) - return match.group(1) if match else None + + if match: + date_str = match.group(1) + try: + # Attempt to parse the date string into a datetime object + valid_date = datetime.strptime(date_str, '%Y-%m-%d') + return date_str + except ValueError: + # The date string is not a valid date + return None + + return None def slurp_file(self, filename): try: diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 2e41e54..5466c23 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -104,20 +104,17 @@ def test_get_date_from_filename(self): self.assertEqual(cleaner.get_date_from_filename("session-notes-2021-01-01-part2.md"), "2021-01-01") # Test with filenames that do not follow the expected pattern - self.assertIsNone(cleaner.get_date_from_filename("session-notes.md")) # no date - self.assertIsNone(cleaner.get_date_from_filename("Session-notes-2000-01-01.md")) # Incorrect capitalization - self.assertIsNone(cleaner.get_date_from_filename("session-notes-2000-01-01.txt")) # Incorrect extension - self.assertIsNone(cleaner.get_date_from_filename("notes-2022-10-20.md")) # incomplete leading part - self.assertIsNone(cleaner.get_date_from_filename("session-2022-10-20.md")) # incomplete leading part - - # # Test with filenames that are close to the pattern but not exact - # assert cleaner.get_date_from_filename("session-notes-2022-10-20.markdown") is None - # assert cleaner.get_date_from_filename("session-notes-2022-13-01.md") is None # Invalid month - # assert cleaner.get_date_from_filename("session-notes-2022-00-10.md") is None # Invalid month - # - # # Test with edge cases - # assert cleaner.get_date_from_filename("") is None - # assert cleaner.get_date_from_filename(" ") is None + self.assertIsNone(cleaner.get_date_from_filename("session-notes.md"), "Missing date part") + self.assertIsNone(cleaner.get_date_from_filename("Session-notes-2000-01-01.md"), "Incorrect capitalization") + self.assertIsNone(cleaner.get_date_from_filename("session-notes-2000-01-01.txt"), "Invalid extension") + + self.assertIsNone(cleaner.get_date_from_filename("notes-2022-10-20.md"), "Incorrect leading part") + + self.assertIsNone(cleaner.get_date_from_filename("session-notes-2022-13-01.md"), "Invalid month") + self.assertIsNone(cleaner.get_date_from_filename("session-notes-2022-00-10.md"), "Invalid month") + + self.assertIsNone(cleaner.get_date_from_filename(""), "Empty") + self.assertIsNone(cleaner.get_date_from_filename(" "), "Blank") def test_cleanup_contents(self): cleaner = SessionNotesCleaner() From 991d2b0abe1d7e195850ba06aa35e49785b23a7c Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 11:44:29 -0500 Subject: [PATCH 45/51] . d Create TODO for Reporter. (And remove dead code comments) --- tests/test_session_notes_cleaner.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index 5466c23..b75371a 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -3,15 +3,16 @@ import unittest from approvaltests import verify -# from approvaltests.core import approval from approvaltests.reporters import GenericDiffReporterFactory, ClipboardReporter, MultiReporter from src.session_notes_cleanup.session_notes_cleaner import SessionNotesCleaner +# Set up ApprovalTests reporter(s) default_reporter = GenericDiffReporterFactory().get_first_working() +# TODO - Set reporter for whole file/class +# from approvaltests.core import approval # approval.DEFAULT_REPORTER = default_reporter - first_working_reporter = GenericDiffReporterFactory().get_first_working() clipboard_reporter = ClipboardReporter() # bc_reporter = GenericDiffReporterFactory().get("Beyond Compare") @@ -90,11 +91,6 @@ def test_add_coauthor_heading_before_co_authored_by_list(self): acceptance_text = f'Before\n{text}====\nAfter\n{clean_text}====\n' verify(acceptance_text, preferred_multi_reporter) - # Import the function to be tested - # from your_script import get_date_from_filename - - # Test suite for 'get_date_from_filename' - def test_get_date_from_filename(self): cleaner = SessionNotesCleaner() From f3722724bd4e40cdf4aa4c4074fbef12736ca071 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 11:56:08 -0500 Subject: [PATCH 46/51] . - Removed dead code (as suggested by "code problems") --- src/session_notes_cleanup/session_notes_cleaner.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 2fdcccf..c1d1f42 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -66,15 +66,14 @@ def add_coauthor_heading_before_co_authored_by_list(self, text): flags=re.IGNORECASE | re.MULTILINE) return cleaned_text - def get_date_from_filename(self, filename): match = re.search(r'^session-notes-(\d{4}-\d{2}-\d{2}).*[.]md$', filename) if match: date_str = match.group(1) try: - # Attempt to parse the date string into a datetime object - valid_date = datetime.strptime(date_str, '%Y-%m-%d') + # Attempt to parse the date string + datetime.strptime(date_str, '%Y-%m-%d') return date_str except ValueError: # The date string is not a valid date From 7dd8c2c5575c1df955630e014205b8c11f05435f Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 12:01:22 -0500 Subject: [PATCH 47/51] . t Disabled (unworking) MultiReporter --- tests/test_session_notes_cleaner.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_session_notes_cleaner.py b/tests/test_session_notes_cleaner.py index b75371a..3647e15 100644 --- a/tests/test_session_notes_cleaner.py +++ b/tests/test_session_notes_cleaner.py @@ -17,6 +17,7 @@ clipboard_reporter = ClipboardReporter() # bc_reporter = GenericDiffReporterFactory().get("Beyond Compare") preferred_multi_reporter = MultiReporter(first_working_reporter, clipboard_reporter) +preferred_multi_reporter = first_working_reporter class TestSessionNotesCleaner(unittest.TestCase): From 87596f189a716ea247f7e2e500af3fe3fd803aea Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 12:07:47 -0500 Subject: [PATCH 48/51] . r Add explicit 'else' --- src/session_notes_cleanup/session_notes_cleaner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index c1d1f42..75be83e 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -78,8 +78,8 @@ def get_date_from_filename(self, filename): except ValueError: # The date string is not a valid date return None - - return None + else: + return None def slurp_file(self, filename): try: From 0b8629f71c203e29df46cc6b202ea802158dc265 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 12:10:44 -0500 Subject: [PATCH 49/51] . r Outdent incorrect 'else' --- src/session_notes_cleanup/session_notes_cleaner.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 75be83e..b0af67e 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -78,8 +78,8 @@ def get_date_from_filename(self, filename): except ValueError: # The date string is not a valid date return None - else: - return None + else: + return None def slurp_file(self, filename): try: From 8387b277ddef58118c3de7267287125737b54f74 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 12:12:50 -0500 Subject: [PATCH 50/51] . a Invert 'if' match --- src/session_notes_cleanup/session_notes_cleaner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index b0af67e..18ab68c 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -69,7 +69,9 @@ def add_coauthor_heading_before_co_authored_by_list(self, text): def get_date_from_filename(self, filename): match = re.search(r'^session-notes-(\d{4}-\d{2}-\d{2}).*[.]md$', filename) - if match: + if not match: + return None + else: date_str = match.group(1) try: # Attempt to parse the date string @@ -78,8 +80,6 @@ def get_date_from_filename(self, filename): except ValueError: # The date string is not a valid date return None - else: - return None def slurp_file(self, filename): try: From 386d39ea0ee0b57174c770e62ef92ba7472aa758 Mon Sep 17 00:00:00 2001 From: "Michael R. Wolf" <MichaelRWolf@att.net> Date: Wed, 3 Jan 2024 12:16:16 -0500 Subject: [PATCH 51/51] . r Move assignment closer to usage --- src/session_notes_cleanup/session_notes_cleaner.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/session_notes_cleanup/session_notes_cleaner.py b/src/session_notes_cleanup/session_notes_cleaner.py index 18ab68c..08b8e06 100644 --- a/src/session_notes_cleanup/session_notes_cleaner.py +++ b/src/session_notes_cleanup/session_notes_cleaner.py @@ -72,13 +72,11 @@ def get_date_from_filename(self, filename): if not match: return None else: - date_str = match.group(1) try: - # Attempt to parse the date string + date_str = match.group(1) datetime.strptime(date_str, '%Y-%m-%d') return date_str except ValueError: - # The date string is not a valid date return None def slurp_file(self, filename):