‹ Reports
The Dispatch

OSS Report: nikitabobko/AeroSpace


AeroSpace Project Faces Performance Challenges Amidst Active Development

AeroSpace, a tiling window manager for macOS, continues to evolve with active contributions from its maintainer, Nikita Bobko, focusing on feature enhancements and bug fixes.

Recent Activity

Recent issues and pull requests indicate a focus on performance improvements and user customization. High CPU usage (#527) and freezing during Xcode debugging (#526) are critical concerns. Pull requests like #472 and #464 show ongoing efforts to refine command functionality.

Development Team Activity

Of Note

  1. High CPU Usage Issue: Significant concern with Zoom in the background (#527).
  2. Xcode Debugging Freeze: Critical issue when using "My Mac (Designed for iPad)" destination (#526).
  3. Command Enhancements: New command-line options and improvements reflect user-centric development.
  4. Breaking Changes: Introduction of new flags affecting existing functionality.
  5. Documentation Focus: Continuous updates ensure clarity and usability for advanced users.

Quantified Reports

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 17 11 36 8 1
30 Days 76 50 159 38 1
90 Days 218 144 540 125 1
All Time 497 333 - - -

Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.

Quantify commits



Quantified Commit Activity Over 30 Days

Developer Avatar Branches PRs Commits Files Changes
Nikita Bobko 2 0/0/0 58 282 4687
Avrumy 1 1/0/1 1 7 40
Nikolai Perlt 1 1/0/1 1 4 33
Zhizhen He 1 1/1/0 1 1 4
Jake Langford 1 1/0/1 1 1 2

PRs: created by that dev and opened/merged/closed-unmerged during the period

Detailed Reports

Report On: Fetch issues



Recent Activity Analysis

The recent activity in the AeroSpace GitHub repository shows a total of 164 open issues, indicating ongoing user engagement and potential areas for improvement. Notably, there are several recurring themes, such as issues with window management, workspace assignments, and application-specific behavior. Many users report problems related to specific applications like Discord and Qutebrowser, highlighting inconsistencies in how these apps interact with the AeroSpace environment.

Several issues also point to performance concerns, particularly when switching workspaces or handling multiple monitors. The community appears active, with users frequently sharing their configurations and workarounds for common problems.

Issue Details

Recent Issues

  1. Issue #530: Installing latest code

    • Priority: Low
    • Status: Open
    • Created: 0 days ago
    • Updated: N/A
    • Summary: User inquires about installing the latest version directly from the HEAD.
  2. Issue #529: Is it possible to modify custom config location?

    • Priority: Low
    • Status: Open
    • Created: 0 days ago
    • Updated: N/A
    • Summary: User requests to change the location of their custom config file.
  3. Issue #527: High CPU Usage in Aerospace When Zoom Workspace Is in the Background

    • Priority: High
    • Status: Open
    • Created: 1 day ago
    • Updated: N/A
    • Summary: Reports significant CPU usage when Zoom is minimized.
  4. Issue #526: Aerospace freezes when debugging Xcode with "My Mac (Designed for iPad)" as destination

    • Priority: High
    • Status: Open
    • Created: 2 days ago
    • Updated: N/A
    • Summary: Freezing issue reported during Xcode debugging sessions.
  5. Issue #524: [Feature request] Reset to main binding after some time without touching keybinds

    • Priority: Medium
    • Status: Open
    • Created: 4 days ago
    • Updated: N/A
    • Summary: Suggestion for a feature to reset keybindings after inactivity.
  6. Issue #522: Workspace "10" created automatically

    • Priority: Medium
    • Status: Open
    • Created: 5 days ago
    • Updated: N/A
    • Summary: User reports unexpected workspace creation behavior.
  7. Issue #521: Can't use "focus" when all windows are float

    • Priority: High
    • Status: Open
    • Created: 5 days ago
    • Updated: 2 days ago (edited)
    • Summary: Focus command fails when all windows are set to float.
  8. Issue #520: Focused workspace not moving to assigned monitor

    • Priority: Medium
    • Status: Open
    • Created: 5 days ago
    • Updated: N/A
    • Summary: Issue with workspace assignment not functioning as expected.

Themes and Commonalities

  • There is a clear focus on performance-related issues, particularly concerning CPU usage and application responsiveness.
  • Users are actively seeking ways to customize their experience, whether through configuration changes or feature requests.
  • Problems with specific applications like Zoom, Discord, and Qutebrowser highlight compatibility challenges that may require targeted fixes or updates.
  • Requests for features such as workspace management improvements and more flexible keybinding options indicate a desire for enhanced usability and efficiency.

This analysis underscores the need for ongoing development efforts to address user concerns while also enhancing the overall functionality of AeroSpace.

Report On: Fetch pull requests



Overview

The AeroSpace project has a total of 30 closed pull requests, with a focus on bug fixes, feature additions, and documentation improvements. The pull requests are primarily merged by the project's maintainer, Nikita Bobko, indicating an active involvement in the project's development.

Summary of Pull Requests

Closed Pull Requests

  • PR #528: A simple typo fix in the documentation files. Merged quickly, showing attention to detail in documentation.
  • PR #480: Addresses an issue with launchctl calls in the startAtLogin routine. Although not merged, it led to valuable discussions about potential solutions and future improvements.
  • PR #472: Adds a new command-line option --no-outer-gaps to the fullscreen command. Merged after addressing review comments and making necessary adjustments.
  • PR #464: Introduces --dfs-index to the focus command, allowing users to focus on windows based on their index in a depth-first search of the window tree. Merged with a follow-up suggestion for further enhancement.
  • PR #424: A significant change aimed at improving the usage of Swift Package Manager (SPM). Although not merged, it sparked discussions about project structure and build processes.
  • PR #416: Another typo fix in documentation. Merged promptly.
  • PR #389: Proposed support for custom modifier keys (hyper and meh). Not merged, possibly due to concerns about complexity or compatibility.
  • PR #362: Suggested changing terminal opening behavior to avoid accumulating apps in the dock. Not merged, likely due to differing opinions on default behavior.
  • PR #334: A documentation improvement based on personal experience with different monitor resolutions. Not merged, possibly due to lack of consensus on its necessity.
  • PR #290: Introduced a new command to set the same size for all windows sharing a common parent. Merged but lacks further context on its impact or usage.
  • PR #275: Aims to reduce flicker when switching workspaces. Merged but details on its effectiveness or any issues post-merge are not provided.
  • PR #255: Fixes a typo and adds links in default configuration documentation. Merged but lacks information on whether it was beneficial or if similar issues were found later.
  • PR #240, #234, #227, #213, #198, #172, #125, #118, #117, #113, #109, #99, #98, #81, #80, #38, and #22: Various minor fixes, documentation updates, and feature additions. Most are merged but lack detailed discussion or impact analysis.

Analysis of Pull Requests

The pull requests for the AeroSpace project reflect a healthy mix of bug fixes, feature enhancements, and documentation improvements. The quick merging of trivial changes like typo fixes (#528, #416) indicates an emphasis on maintaining high-quality documentation and code readability.

However, there are also instances where proposed changes were not merged despite being well-received (#480, #424). This could suggest either a shift in project direction or concerns about the implications of such changes on existing workflows or user experiences.

The discussions within pull requests often reveal insights into the project's development philosophy. For example, PR #472's discussion about command-line options highlights a careful consideration of user experience and command syntax consistency. Similarly, PR #464's introduction of new command arguments shows an openness to expanding functionality based on user needs.

Notably, some pull requests address specific issues raised by users (#480 related to issue #479), demonstrating responsiveness to community feedback. However, there are also rejected pull requests (#389, #362) that suggest a selective approach to feature additions, possibly prioritizing simplicity and maintainability over adding numerous features.

Overall, the AeroSpace project's pull request activity indicates an active development process with a focus on quality, user feedback integration, and careful consideration of changes' impacts on the overall system. The maintainer's involvement in discussions and decisions reflects a hands-on approach to project management and development oversight.

Report On: Fetch commits



Repo Commits Analysis

Development Team and Recent Activity

Team Members

  • Nikita Bobko (nikitabobko): Primary contributor with extensive recent activity.
  • Zhizhen He (hezhizhen): Minor contributions.
  • Avrumy (vrumger): Collaborated on a feature.
  • Jake Langford (jakenvac): Contributed to bug fixes and improvements.
  • Nikolai Perlt (Perlten): Worked on feature enhancements.

Recent Activities

Nikita Bobko

  • Recent Commits: 58 commits in the last 30 days, focusing on various aspects of the codebase.
  • Key Contributions:
    • Feature Development: Implemented several commands including move-mouse, focus-back-and-forth, and enhancements to existing commands.
    • Bug Fixes: Addressed multiple issues, such as fixing warnings in tests, improving command parsing, and resolving bugs related to workspace management.
    • Documentation Updates: Enhanced documentation across various files, ensuring clarity on command usage and configuration.
    • Refactoring: Conducted significant refactoring for better code organization and maintainability, including restructuring command arguments and simplifying logic in several components.
    • Breaking Changes: Introduced breaking changes for commands requiring new flags (--fail-if-noop), impacting existing functionality but aimed at improving user experience.

Zhizhen He

  • Recent Commit: Fixed a typo in documentation.

Avrumy

  • Recent Commit: Added support for --no-outer-gaps in the fullscreen command.

Jake Langford

  • Recent Commit: Removed broken launchctl calls from the login routine.

Nikolai Perlt

  • Recent Commit: Implemented focus --dfs-indx, enhancing focus command capabilities.

Patterns and Themes

  • High Activity Level: Nikita Bobko is the most active contributor, indicating strong leadership and ownership of the project.
  • Focus on Command Enhancements: A significant portion of recent commits revolves around improving command functionality and usability, reflecting a user-centric approach to development.
  • Collaboration: There are instances of collaboration among team members, particularly in addressing issues and implementing features, suggesting a cohesive team dynamic.
  • Documentation Emphasis: Continuous updates to documentation highlight the team's commitment to ensuring users have clear guidance on using the software effectively.
  • Breaking Changes Management: The introduction of breaking changes indicates an ongoing evolution of the software, with careful consideration for user impact.

Conclusion

The development team is actively enhancing AeroSpace with a focus on usability, command functionality, and documentation. Nikita Bobko leads this effort with substantial contributions, while other team members support through targeted fixes and feature implementations. The project is evolving rapidly as it approaches its first stable release.