Meeting Purpose
Review project status, discuss new proposals, and clear the PR queue.
Key Takeaways
- UTF-8 Support Ready: PR #2512, which adds full UTF-8 support to the Medley load-up, is stable and ready for merge.
- Issue Cleanup Initiative: To address the growing backlog of ~580 open issues, reporters will now verify and close their own issues, starting this week.
- Repo Restructuring: The obsolete/ directory will be moved to a separate repo to declutter the main Medley repo. A new font-sources repo will also be created for font development assets.
- Build System Updates: The libbsd build for Ubuntu 24.04 requires specific flags (-I/usr/include/bsd, -D_DEFAULT_SOURCE) to enable "overlay mode," which correctly includes BSD-specific headers and prevents pointer-size errors.
Topics
Project & Admin Updates
- HTMLStream Fix: A panic in HTMLStream was fixed.
- Cause: Incorrectly calling a fgetwith macro on a font spec list instead of the expected car set info object.
- Outcome: The fix was pushed to the HTMLStream repo, resolving the crashes.
- Student Onboarding: A student, Kabir, is struggling with the distinction between Lisp packages and pseudo-hosts.
- Impact: This confusion causes lost setup work between Medley sessions.
- Resolution: Herb is providing guidance and resources (e.g., the IRM) to help clarify the concepts.
- Documentation & Outreach:
- XCCS Spec: To provide a stable, permanent link for IANA, the XCCS spec will be uploaded to the Internet Archive.
- Xerox Standards: Herb is contacting Stanford Libraries to locate their collection of Xerox network standards documents.
- Fellowship Application: A letter of endorsement was submitted for student Ellie's ACM Computer History Fellowship application, which focuses on the email archive.
Issue & PR Management
- Problem: The project has ~580 open issues, with many likely fixed but not closed.
- Proposed Solution: A quarterly "bug bash" week to focus on issue cleanup.
- Immediate Action: All team members will review and close their own open issues, starting this week.
- Process Improvement: To prevent future disconnects, all PRs should reference the issues they address (e.g., Addresses #123).
Build System & Infrastructure
- libbsd Build Fix (Ubuntu 24.04):
- Problem: The standard -lbsd flag is insufficient for building on Ubuntu 24.04.
- Cause: BSD-specific functions (e.g., stricat) require headers from bsd/string.h, not string.h. Without the correct include path, the compiler defaults to integer arguments, causing 64-bit pointer truncation errors.
- Solution: Use specific CMake/compiler flags to enable "overlay mode":
- -I/usr/include/bsd
- -D_DEFAULT_SOURCE
- -lbsd
-
online.interlisp.org Server Automation:
- Goal: Automate server configuration to simplify upgrades from the current Ubuntu 20.04 system.
- Tool: Ansible was suggested as a lightweight, SSH-based option.
- Status: Frank is developing GitHub Actions to streamline the process of deploying draft Medley releases to the test server.
Repo Restructuring & Font Management
- Problem: The obsolete/ directory in the main Medley repo clutters the workspace and complicates development.
- Solution: Move the obsolete/ directory to a new, separate obsolete repo.
- Rationale: This declutters the main repo while preserving the history of the moved files in the new repo.
- Future Font Management:
- Goal: Create a dedicated font-sources repo for all font development assets (BDFs, PDFs, scripts).
- Rationale: This separates active release files from source files needed only for rebuilding fonts.
- Status: Ron is developing a new import-fonts package to generalize the font import process.
PR Review & Merges
- PR #2512 (UTF-8 Load-up):
- Status: Stable and ready for merge.
- Functionality: Adds full UTF-8 support to the Medley load-up, including compiler modes and a new starter sysout.
- PR #2518 (UTF-8 File Converter):
- Status: Ready for merge.
- Functionality: A utility function to convert individual files to UTF-8.
- Side Benefit: The conversion process identifies files with incorrect CL compile file properties, which cause silent compiler failures.
- PR #2503 (Move obsolete/):
- Status: Approved.
- Action: Merging will move the obsolete/ directory to its new repo.
- PR #2522 (directorynameP Fix):
- Status: Ready for merge.
- Functionality: Fixes directorynameP to correctly return true for the top-level core directory.
- Other PRs: Several older, minor PRs were closed to clean up the queue.
Next Steps
- All: Review and close your own open issues this week.
- Larry: Merge PRs #2512, #2518, #2503, and #2522.
- Larry: Investigate Ansible for server automation.
- Ron: Continue developing the import-fonts package.
- Frank: Test the libbsd CMake changes on macOS.
- Frank: Complete the GitHub Actions for deploying draft releases.
- Herb: Upload the XCCS spec to the Internet Archive.