‹ Reports
The Dispatch

OSS Report: jgraph/drawio-desktop


Drawio-Desktop Faces Usability and Stability Challenges Amid Recent Updates

Drawio-desktop, a diagramming tool developed by JGraph, is experiencing increased user-reported issues related to usability and stability following recent updates, with significant concerns about performance during export operations and interface behavior.

The application is a desktop version of the draw.io editor, designed for offline use. Its recent updates have led to a surge in user-reported issues, particularly around exporting PDFs (#1616), collapsing containers (#1666), and dark mode inconsistencies (#1600). Users have also reported data loss during file handling (#1758), indicating critical stability issues that need urgent attention.

Recent Activity

Recent issues highlight a trend of functionality regression post-updates, with users facing difficulties in basic operations such as saving files (#1857) and launching the application on specific platforms like Ubuntu 24 (#1861). The development team, consisting of David Benson and Mohamed Mohamedin, has been actively working on dependency updates, notably upgrading Electron to improve performance and compatibility. Their recent commits focus on dependency management and core functionality enhancements:

  1. David Benson (davidjgraph)

    • Merged commits into dev and release branches.
    • Updated Electron version and core functionalities.
    • Committed 3 times in the last 30 days with 2352 changes across 3 files.
  2. Mohamed Mohamedin (m-mohamedin)

    • Updated dependencies including Electron 32.
    • Fixed build action issues and added Windows ARM64 support.
    • Made 1 commit in the last 30 days with 1192 changes across 3 files.

Of Note

This analysis underscores the need for the development team to address critical usability and stability issues promptly to maintain user satisfaction and application reliability.

Quantified Reports

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 2 1 0 2 1
30 Days 19 14 27 16 1
90 Days 55 40 80 46 1
1 Year 272 200 554 188 1
All Time 1457 1346 - - -

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
David Benson 1 0/0/0 3 3 2352
Mohamed Mohamedin 1 0/0/0 1 3 1192

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 on the drawio-desktop GitHub repository shows a total of 111 open issues, with a mix of bug reports, feature requests, and user inquiries. Notably, there has been a surge in issues related to usability and functionality after recent updates, particularly concerning the handling of diagrams, export features, and interface behavior. A recurring theme is user frustration with the application's performance and stability, especially during operations like exporting files or managing custom libraries.

Several issues highlight significant bugs such as the inability to collapse containers (#1666), problems with exporting PDFs (#1616), and unexpected behavior when using keyboard shortcuts (#1479). Additionally, there are multiple reports of issues related to dark mode rendering inconsistencies (#1600) and problems with file handling that lead to data loss or corruption (#1758).

Issue Details

Here are some of the most recently created and updated issues:

  1. Issue #1862: Add option to set PDF version when exporting

    • Priority: Medium
    • Status: Open
    • Created: 4 days ago
    • Updated: 2 days ago
  2. Issue #1861: Unable to launch drawio snap app on Ubuntu 24

    • Priority: High
    • Status: Open
    • Created: 4 days ago
    • Updated: 4 days ago
  3. Issue #1857: Sometimes "save" doesn't work

    • Priority: High
    • Status: Open
    • Created: 10 days ago
    • Updated: 3 days ago
  4. Issue #1856: RTL as default writing direction

    • Priority: Low
    • Status: Open
    • Created: 11 days ago
    • Updated: 11 days ago
  5. Issue #1854: When I click the line connector, the position of the text on the line and the line shape always change.

    • Priority: Medium
    • Status: Open
    • Created: 11 days ago
    • Updated: 11 days ago
  6. Issue #1844: DrawIO v19 to v24 loses Win10/Win11 Jump List

    • Priority: Low
    • Status: Open
    • Created: 20 days ago
    • Updated: 5 days ago

Important Observations

  • A significant number of issues revolve around functionality that has regressed after updates, indicating potential stability concerns with recent releases.
  • Users are reporting difficulties in basic operations such as saving files, launching applications, and using keyboard shortcuts effectively.
  • The dark mode implementation is causing visual discrepancies that affect usability.
  • There is a clear demand for enhanced export options, particularly regarding PDF handling and maintaining formatting consistency.
  • The community appears engaged but frustrated with ongoing issues that affect their workflow.

This analysis indicates that while drawio-desktop remains a popular tool for diagramming, its recent updates have introduced several critical issues that need addressing to maintain user satisfaction and application reliability.

Report On: Fetch pull requests



Overview

The analysis of the pull requests (PRs) for the jgraph/drawio-desktop repository reveals a total of 35 closed PRs, with no open PRs at present. The most recent PR added support for Windows ARM64, while earlier PRs included minor fixes and enhancements.

Summary of Pull Requests

  1. PR #1804: Added Windows ARM64 Support
    Closed 35 days ago. This PR introduced support for Windows ARM64 architecture, significantly expanding the application's compatibility and usability on newer hardware platforms.

  2. PR #1695: chore: fix some typos in comments
    Closed 147 days ago. This PR aimed to correct minor typographical errors in the code comments but was not merged, indicating a possible lack of priority or relevance.

  3. PR #1655: Add PNG file association
    Closed 190 days ago. This PR added file association for PNG files, enhancing user experience by allowing double-clicking on PNG files to open them directly in the application.

  4. PR #1491: Do not package build-id metadata for RPM target
    Closed 336 days ago. This PR focused on optimizing the packaging process for RPM builds by excluding unnecessary metadata.

  5. PR #1414: Update README.md
    Closed 409 days ago. This PR updated documentation to reflect recent changes or improvements in the project.

  6. PR #1388: Zhulong dev
    Closed 425 days ago. Specific details about this PR are unclear, but it appears to be related to ongoing development efforts.

  7. PR #1381: Bump semver from 6.3.0 to 6.3.1
    Closed 427 days ago. This minor version bump was likely a routine maintenance task to keep dependencies up-to-date.

  8. PR #1283: Rub changes
    Closed 514 days ago. Details are sparse, but it suggests some form of refactoring or optimization.

  9. PR #939: [Snyk] Upgrade @electron/remote from 2.0.4 to 2.0.5
    Closed 912 days ago. A security-focused update managed by Snyk, indicating ongoing attention to dependency vulnerabilities.

  10. PR #916: [Snyk] Upgrade @electron/remote from 2.0.1 to 2.0.4
    Closed 938 days ago. Another Snyk-managed update emphasizing security and stability.

11-35: Various other PRs focused on dependency updates, minor fixes, and documentation improvements, reflecting a consistent effort towards maintaining code quality and security.

Analysis of Pull Requests

The pull request history for jgraph/drawio-desktop indicates a pattern of maintenance-focused contributions rather than significant feature additions or enhancements over time. The most notable recent change was the addition of Windows ARM64 support (PR #1804), which reflects an adaptation to evolving hardware trends and user needs in the desktop application landscape.

The presence of numerous closed PRs that were not merged—such as PR #1695 which addressed trivial typos—suggests a selective approach to contributions, likely influenced by the project's stated policy against external contributions due to its complexity and desire for quality control. This closed contribution model is atypical for open-source projects, where community engagement is often encouraged and facilitated through merging various contributions.

Additionally, many of the closed PRs are related to dependency updates managed by tools like Snyk and dependabot, highlighting a proactive stance on security and maintenance within the project team. However, this also raises questions about the sustainability of such an approach without broader community involvement; as the project evolves, reliance solely on internal contributors may limit innovation and responsiveness to user feedback.

The absence of open pull requests could indicate a lull in active development or a potential bottleneck in the review process, which could hinder future growth if not addressed promptly. Furthermore, while there is a significant number of closed issues (111), it remains unclear how many are actively being worked on or prioritized by the maintainers.

In summary, while jgraph/drawio-desktop maintains a robust focus on security and quality control through its closed contribution model and regular maintenance updates, it risks stagnation without more dynamic engagement with its user base and potential contributors in the future.

Report On: Fetch commits



Repo Commits Analysis

Development Team and Recent Activity

Team Members

  1. David Benson (davidjgraph)

    • Recent Activity:
    • Merged multiple commits into the dev and release branches, focusing on dependency updates and fixes.
    • Notable changes include updates to the Electron version and core functionalities (e.g., draw.io core updates).
    • Engaged in significant file modifications, including package.json and yarn.lock, indicating ongoing dependency management.
    • Total of 3 commits in the last 30 days with 2352 changes across 3 files.
  2. Mohamed Mohamedin (m-mohamedin)

    • Recent Activity:
    • Updated dependencies, including a major update to Electron 32.
    • Contributed to the project by fixing issues related to build actions and adding Windows ARM64 support.
    • Made a single commit in the last 30 days with 1192 changes across 3 files.

Collaboration

  • David Benson and Mohamed Mohamedin collaborated closely, particularly on dependency updates and feature enhancements. Their recent activities suggest a focus on improving application performance and compatibility across platforms.

In Progress Work

  • The recent commits indicate ongoing work related to dependency management, particularly with Electron updates, which may still be in progress as they adapt to new versions.
  • The presence of multiple merge commits suggests that integration of features and bug fixes is an active process.

Patterns, Themes, and Conclusions

  • Focus on Dependency Management: Both team members are heavily involved in updating dependencies, particularly with Electron, which is crucial for maintaining application stability and security.
  • Collaborative Efforts: The collaboration between David Benson and Mohamed Mohamedin highlights a cohesive team dynamic focused on enhancing the application's performance and compatibility.
  • Active Maintenance: The frequency of merges and updates indicates that the project is actively maintained despite its closed contribution model. This suggests a commitment to quality control while ensuring that user needs are addressed through regular updates.
  • Security Emphasis: Given the project's focus on security and privacy, recent activities align with enhancing these aspects through careful dependency management.

Overall, the recent activities reflect a dedicated effort by the development team to maintain and improve the drawio-desktop application while managing dependencies effectively.