.. | ||
2018-02-12.md | ||
2018-02-19.md | ||
2018-02-26.md | ||
2018-03-05.md | ||
README.md |
Near-term plans
In this directory, you'll find weekly progress and plans from the core Atom team at GitHub. In addition, this document summarizes the work we're intending to prioritize within the next several months.
Atom IDE
Roadmap
Looking ahead
GitHub package
Main repository: atom/github (Atom package)
Roadmap
Watch our progress on the short-term roadmap project.
Recent commit history
Near-term goal: An informational view that displays the most recent 1-3 commits beneath the mini commit message editor. Design and discussion in: #554, #86.
Longer-term goals: Introduce interactivity to the commits shown in the recent history list. Right-click on the top click to amend it, or on prior commits to reset. Overhaul the "amend button" functionality and implementation.
Commit co-authoring
Near-term goal: Allow users to specify co-authors when committing. Draw inspiration from Desktop's implementation for UI. Tracking issue: #1309.
Longer-term goals: Expose an API so that packages like teletype can add portal participants to commits automatically. Tangentially related to #1089.
Pull request workflow - Create Pull Request
Near-term goal: Add buttons in the GitHub panel to allow users to push any unpushed changes and open new pull requests. The "Open new pull request" button will link to the github.com compare view in browser. Open pull request: #1138.
Longer-term goals: Offer a complete in-editor experience. Compose pull request titles and descriptions in the GitHub dock item. However, we wish to avoid needing replicating the full .com experience, so to specify labels, projects, or milestones, we will preserve the "navigate browser to compare view" functionality, and focus on text composition.
This will require building out UI in the GitHub panel and adding GraphQL API support to create pull requests.
UI/UX considerations include:
- Offer a pop-out editor to craft PR descriptions in a full pane, similar to the commit editor pop out.
- Allow the user to specify the merge target.
- Show a preview of the list of commits that would be introduced by PR.
Build stability
Near-term goal: Fix that damn Travis hang documented in #1119. Resume the diagnosis work in #1289 and find a way to bring our build success rate back under control.
GPG and credential handler overhaul
Near-term goals: Passphrase prompting from git credential helpers and GPG has been a significant pain point since public release; unsurprisingly, because those are the areas where we need to leverage binaries and configuration from the users' system if present.
- Implement a "remember me" checkbox backed by keytar. This is probably our top feature request. #861
Longer-term goals: Finish the credential handler refactor begun in #846 to handle GPG 1.x through 2.3 and include diagnostic logging and testing.
- Improve our handling of 2FA credentials. Ideally we could detect when a user has 2FA enabled and prompt for a one-time code. #844
Looking ahead
In no particular order:
- Git Virtual File System support.
- Improved branch management. #556
- Introduce an overview dock item that summarizes and navigates to other functionality. #1018
- Code review. #269, #268
git log
pane.- Merge or close pull requests.
- Browse and check out pull requests.
Teletype
Roadmap
1. Deliver a multi-file collaboration experience that meets 80% of the needs with 20% of the effort
- Ship RFC-001 (https://github.com/atom/teletype/issues/268)
2. Streamline collaboration set-up
Near-term goal: Encourage more collaboration by reducing barriers to entry.
Longer-term goal: Provide the world's fastest transition from "I want to collaborate" to "I am collaborating." 🚀
- Publish RFC (including a request for review from GitHub's Community and Safety team)
- Host can share a URL for the portal, and guests can follow the URL to instantly join the portal (https://github.com/atom/teletype/issues/109)
- Quickly collaborate with coworkers and friends (https://github.com/atom/teletype/issues/213, https://github.com/atom/teletype/issues/284)
- You can view a list of past collaborators (i.e., a "buddy list" of sorts).
- You can choose any online person in the buddy list and invite them to join your portal. They get a notification (or similar) informing them of the invitation, and they can choose to join the portal or not.
- To prevent abuse/harassment, each time you join a portal via a URL or portal ID, Teletype adds the collaborators to your buddy list. You can directly invite anyone in your buddy list to join your portal, and anyone in your buddy list can invite you to a portal. You can remove anyone from your buddy list, at which point they can no longer directly invite you to a portal.
3. Nice bang-for-the-buck refinements
- Add a colored border around avatars that matches the cursor when that participant's tether is not retracted (https://github.com/atom/teletype/issues/338)
4. Prioritized bugs
- Uncaught TypeError: Cannot match against 'undefined' or 'null' (https://github.com/atom/teletype/issues/233)
Looking ahead
In no particular order:
- 🐛 Resolve or reduce impact of package initialization errors (https://github.com/atom/teletype/issues/266)
- 🐛 Surface uncaught errors in promises (https://github.com/atom/teletype/issues/298#issuecomment-355369327)
- ✨ Ensure remote buffers are updated when host renames files (https://github.com/atom/teletype/issues/147)
- 💖 In the buddy list, you can see which people are currently online (i.e., presence)
- 💖 Screen-sharing -- (We should prioritize screen-sharing above audio. We can keep using Slack/Skype/Zoom/Whatever for audio and use Atom for screen-sharing, whereas the opposite is not true; disabling audio on a Slack call would feel unintuitive.)
- 💖 Audio