2025-11-08 MyCmd and MyProject Weekly Progress Report: 2025 Week 45

MyCmd and MyProject Weekly Progress Report: 2025 Week 45

I had to do a small update to MyProject this week, as I discovered a small bug when using it at work.

The Bug

In a MyProject task function, you can call myproject.execute_tasks to call other tasks. In MyProject, a task can be referenced in two ways. First, with the task name, and second, with the namespaced parts string. As an example, this task from MyProject’s own task definition files which is in the repo task definition file:

function clean_dist_directory() {
# Function definition elided for brevity ...


myproject.register_task clean-dist-directory clean_dist_directory

The name of this task is clean-dist-directory. And because it is in the repo task definition file, the namespaced parts string for the task is repo clean-dist-directory.

When calling other tasks using myproject.execute_tasks, you reference other tasks using the following rules:

The bug I discovered was when calling myproject.execute_tasks and the first task was in another task definition file but the second was in the same task definition file as the current task. I discovered that I wasn’t properly restoring the internal accounting of what the current task definition file was and so the tasks from the same task definition file were not found. This was a simple fix.

MyProject Updates

This week I pushed 2 commits to MyProject, with the fix to save and restore the internal tracking of the current task definition file when executing tasks, and bumping the MyProject version.

I created and published release v0.03.

MyCmd Homebrew Tap Updates

I pushed 2 commits to the MyCmd Homebrew Tap, updating the MyProject version to the new release.

Other Projects

I also created a new open source project recently, URLDataExtractor. It is a Python library for creating Matchers and Data Extractors. I have used this at work to create a tool to generate Markdown links for URLs from my browser for my daily work notes, based on patterns.

I do need to write some documentation for the project, but you can see extractor-test.py for an example of how you can use the library.

I haven’t yet added it to PyPi, but I can add it as a dependency for projects that use uv using something like the following:

uv add --script generate_markdown_links.py git+https://github.com/travisbhartwell/url_data_extractor.git

All of my MyCmd and MyProject Weekly Progress reports will be linked from here.