Termux Faces Compatibility Challenges with Android 14 as Development Focuses on Usability Enhancements
Termux, an Android terminal emulator and Linux environment, continues to be actively developed, with recent efforts concentrated on improving user experience and addressing compatibility issues with newer Android versions.
Recent Activity
Recent issues and pull requests indicate a focus on enhancing functionality and resolving compatibility problems. Key issues include #4164, which highlights internet access problems when using VPNs, and #4157, concerning symlink security restrictions. These issues reflect ongoing challenges with Android's evolving security model.
Development Team Activity
-
Fredrik Fornwall (fornwall)
- 8 days ago: Implemented colon-separated CSI parameters in
TerminalEmulator.java
.
- 7 days ago: Fixed terminal APC sequences parsing.
-
Agnostic Apollo (agnostic-apollo)
- 29 days ago: Enhanced AutoFill UI.
- 7 days ago: Closed several UI-related issues.
-
Josh Triplett (joshtriplett)
- 40 days ago: Adjusted scrolling behavior for Shift-PgUp/Shift-PgDn keys.
The team is actively improving the terminal emulator's technical aspects and user interface, with Fredrik Fornwall and Agnostic Apollo leading these efforts.
Of Note
- Day/Night Mode Support (#4166): Enhances usability in varying lighting conditions.
- Horizontal Swipe Gestures (#4108): Improves session navigation.
- Advanced Mouse Mode (#4083): Offers more control over touch interactions.
- True Italic Fonts Support (#4141): Allows further customization of the terminal experience.
- Accessibility Improvements (#4104): Focuses on intuitive navigation and context menu actions.
These enhancements reflect a commitment to refining user experience and adapting to user needs while addressing critical compatibility issues.
Quantified Reports
Quantify Issues
Recent GitHub Issues Activity
Timespan |
Opened |
Closed |
Comments |
Labeled |
Milestones |
7 Days |
4 |
1 |
7 |
1 |
1 |
30 Days |
23 |
16 |
58 |
6 |
1 |
90 Days |
61 |
46 |
182 |
24 |
1 |
1 Year |
247 |
196 |
911 |
99 |
1 |
All Time |
2654 |
2321 |
- |
- |
- |
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 |
Fredrik Fornwall |
|
2 |
2/1/0 |
2 |
4 |
206 |
agnostic-apollo |
|
1 |
1/1/0 |
1 |
4 |
158 |
Artem Chepurnyi (AChep) |
|
0 |
1/0/0 |
0 |
0 |
0 |
None (Drplop79) |
|
0 |
1/0/1 |
0 |
0 |
0 |
AzurStar (azurstar) |
|
0 |
1/0/1 |
0 |
0 |
0 |
Termux Monet (TermuxMonet) |
|
0 |
0/0/4 |
0 |
0 |
0 |
Emanuel Krollmann (Sodastream11) |
|
0 |
1/0/0 |
0 |
0 |
0 |
None (Wiseidiotwest) |
|
0 |
1/0/1 |
0 |
0 |
0 |
** John Sebastian Peterson (john-peterson)** |
|
0 |
1/0/0 |
0 |
0 |
0 |
PRs: created by that dev and opened/merged/closed-unmerged during the period
Detailed Reports
Report On: Fetch issues
Recent Activity Analysis
The Termux GitHub repository has seen a significant amount of activity, with 414 open issues highlighting various bugs, feature requests, and user concerns. Notably, many users are experiencing issues related to compatibility with Android 14, particularly regarding permissions and functionality of certain commands. A recurring theme is the difficulty in managing external storage and the behavior of the app when switching between sessions or using hardware keyboards.
Several critical issues have been raised about the app's interaction with Android's security model, especially concerning root access and permissions. The community appears engaged, with users actively reporting problems and suggesting enhancements.
Issue Details
Recent Issues
-
Issue #4164: [Bug]: Cannot access the internet when using VPN
- Priority: High
- Status: Open
- Created: 2 days ago
- Updated: N/A
- Description: Users report that Termux cannot access the internet while connected to a VPN, despite other apps functioning correctly.
-
Issue #4157: [Bug]: termux.properties doesn't work when it's a symlink
- Priority: Medium
- Status: Open
- Created: 6 days ago
- Updated: N/A
- Description: Users encounter issues with
termux.properties
not functioning as expected when set as a symlink due to security restrictions.
-
Issue #4156: [Feature]: Custom hard keyboard key repeat speed
- Priority: Low
- Status: Open
- Created: 7 days ago
- Updated: N/A
- Description: A request for customizable key repeat speeds for hard keyboards used within Termux.
-
Issue #3932: [Feature]: Ability to use emacs shortcuts
- Priority: Medium
- Status: Open
- Created: 152 days ago
- Updated: 11 days ago
- Description: Users express frustration over the inability to use common Emacs shortcuts with physical keyboards.
-
Issue #3450: [Bug]: "soft keyboard only if no hardware keyboard" doesn't always work
- Priority: Medium
- Status: Open
- Created: 472 days ago
- Updated: N/A
- Description: Users report inconsistencies with the soft keyboard behavior even when hardware keyboards are connected.
Additional Noteworthy Issues
- Many issues relate to the handling of external storage and permissions, particularly on newer Android versions (e.g., #4140, #4138).
- There are several requests for enhancements in user experience, such as better session management (e.g., #3798) and improved accessibility features (e.g., #3889).
- Issues regarding package management and installation errors are prevalent, indicating potential problems with repository signatures or package availability (e.g., #3927, #3926).
Summary of Observations
The data indicates that while Termux remains a powerful tool for users looking to leverage Linux capabilities on Android devices, there are significant challenges related to compatibility with newer Android versions and user permissions. The active engagement from users suggests a strong community willing to contribute towards resolving these issues. However, the number of unresolved issues points to a need for focused development efforts to address critical bugs and enhance functionality.
Report On: Fetch pull requests
Overview
The Termux project, a popular Android terminal emulator and Linux environment, has a significant number of open pull requests (PRs) that indicate active development and community engagement. The analysis of these PRs reveals a focus on enhancing functionality, improving accessibility, and addressing compatibility issues with newer Android versions.
Summary of Pull Requests
Open Pull Requests
- PR #4166: Adds day/night mode support to color properties, enhancing usability in different lighting conditions.
- PR #4165: Fixes AutoFill view importance after requesting AutoFill, improving integration with Android's AutoFill framework.
- PR #4154: Implements colon-separated CSI parameters for setting colors, aligning Termux with other terminal emulators.
- PR #4141: Adds support for true italic fonts, allowing users to customize their terminal experience further.
- PR #4108: Introduces horizontal swipe gestures for session switching, enhancing user navigation.
- PR #4104: Improves accessibility by making reading mode navigation more intuitive and adding context menu actions.
- PR #4083: Adds an "Advanced Mouse Mode" setting, giving users more control over touch screen interactions.
- PR #4064: Updates the latest version in README.md, ensuring accurate documentation.
Closed Pull Requests
- PR #4155: Parses terminal APC sequences as a step towards supporting Kitty terminal graphics protocol.
- PR #3744: Proposed migrating to ChickenHook RestrictionBypass for hidden API access but was not merged.
- PR #4146: Attempted to implement background images for terminal windows but was closed due to being invalid or spam.
Analysis of Pull Requests
The open PRs demonstrate a clear trend towards enhancing user experience through new features and improvements. For instance, PRs like #4166 and #4108 focus on usability enhancements by adding support for day/night modes and horizontal swipe gestures, respectively. These changes indicate an effort to make Termux more user-friendly and accessible across different environments and user preferences.
Accessibility improvements are also a significant theme, as seen in PRs like #4104. This aligns with broader trends in software development where inclusivity and accessibility are prioritized to cater to a diverse user base.
The closed PRs provide insights into the project's development process. While many PRs are successfully merged, some are closed without merging due to various reasons such as being invalid or not aligning with the project's goals (e.g., PR #4146). This reflects an active maintenance effort to ensure that only high-quality contributions are integrated into the project.
Overall, the analysis of Termux's pull requests highlights a vibrant project with active contributions aimed at continuous improvement and adaptation to user needs. The focus on usability enhancements, accessibility improvements, and careful management of contributions underscores the project's commitment to providing a robust terminal emulator experience on Android devices.
Report On: Fetch commits
Repo Commits Analysis
Development Team and Recent Activity
Team Members:
-
Fredrik Fornwall (fornwall)
- Recent Activity:
- 8 days ago: Implemented colon-separated CSI parameters in the terminal emulator. Changes included modifications to
TerminalEmulator.java
, ControlSequenceIntroducerTest.java
, and TerminalTest.java
.
- 7 days ago: Fixed terminal APC sequences parsing.
- Collaborations: Worked independently on both commits.
-
Agnostic Apollo (agnostic-apollo)
- Recent Activity:
- 29 days ago: Made significant changes to the AutoFill UI, enhancing user experience by dynamically setting values and improving context menu support for username autofill.
- 7 days ago: Closed several issues related to terminal functionality and user interface improvements.
- Collaborations: Collaborated with Fredrik Fornwall on various issues but primarily worked independently.
-
Josh Triplett (joshtriplett)
- Recent Activity:
- 40 days ago: Adjusted scrolling behavior for Shift-PgUp and Shift-PgDn keys to scroll by pages instead of lines.
- Collaborations: No recent collaboration noted.
-
Other Contributors:
- Members like John Peterson, AChep, azurstar, Wiseidiotwest, Sodastream11, Drplop79, and TermuxMonet have no recent commits but have open pull requests indicating ongoing engagement with the project.
Patterns and Themes:
- The development team is actively addressing both feature enhancements and bug fixes, with a focus on improving user experience in the terminal emulator.
- Fredrik Fornwall and Agnostic Apollo are the most active contributors, with a clear division of responsibilities—Fornwall focusing on technical implementations while Apollo handles UI/UX improvements.
- The project shows a healthy level of collaboration, particularly between Fornwall and Apollo, indicating a cohesive team dynamic.
- Recent activity suggests a strong emphasis on refining existing features rather than introducing new ones, reflecting a phase of stabilization and enhancement.
Conclusions:
- The Termux development team is engaged in active maintenance and improvement of the application, with notable contributions from key members.
- The focus on user experience enhancements alongside critical bug fixes demonstrates a commitment to maintaining high-quality software.
- While some team members are less active recently, their ongoing pull requests indicate continued involvement in the project’s evolution.