Changelog

New updates and improvements to Linear.
Subscribe to updates   ·   Follow us on Twitter.


Audit Log

Linear Plus plan subscribers have now access to Audit Log which tracks important security related events for your workspace. We track new sessions, changes to workspace settings, integrations and any authentication related changes. You can view recent log events from workspace settings, or query and filter them through Linear's GraphQL API. Logs are retained for 90 days.

Audit Log is available for all Plus plan subscribers.

Fixes & improvements

  • Added buttons to create an issue from list group headers when grouping by cycle, project & assignee
  • Fixed a bug that prevented pipe characters in issue titles
  • Only admins are now allowed to toggle the Milestones feature
  • Fixed a bug in Safari where the color picker didn't show any colors
  • Fixed a bug where board layout would look weird on user pages
  • Updated the positioning of command menus
  • Made the template picker easier to find
  • [API] Added new endpoint `issueBatchUpdate` that can be used to updated multiple issues with one request
  • Fixed some GitHub issue descriptions causing imports of those issues to fail
  • Fixed a bug where issues created in active cycles would end up in the backlog
  • Added a Linear Preview feature to use board layout and manual ordering with any grouping
  • Fixed bug where the "Active issues are required to belong to a cycle" setting would not be respected
  • Fixed a bug where the Comment button would not work in Safari
  • Fixed showing the correct issue ID in toast after issue is moved between team
  • Fixed a double click + right click interpreted as triple click in the editor
  • Fixes tab navigation in Favorites sidebar section
  • Improved handling of expired GitLab tokens.
  • Double clicking desktop titlebar now respects system preferences
  • Tab in a todo list now correctly nests the list item
  • Fixed bug in desktop app where Cmd+arrow would not work in input fields
  • We fixed an issue that was preventing the desktop app from updating. Please grab the latest version from our download page.
  • Team visibility settings have been moved from Team Members to General settings section
  • Added support for Clojure in code blocks
  • Assignees and creators will now be properly transferred over from GitHub when mapped to existing users and using the issue migration assistant
  • Old issue URL's now redirect to reflect the latest issue identifier

Slack notification actions

We've made it easier to update Linear issues directly from Slack. You can now comment on an issue, assign one to a teammate, or subscribe/unsubscribe from an issue, all directly from Slack.

If you receive a Slack notification about a comment on your issue, you will be able to immediately respond via the "Comment" button on the message. You will also be able to unsubscribe or assign the issue by selecting the actions under the "More actions..." dropdown. Additionally, when an issue link is unfurled, the message will now include these actions, allowing you to respond, subscribe to or assign the issue right from the Slack message.

Fixes and improvements

  • When you re-assign an issue, assigned notifications for the previous owner are now deleted
  • Improved support for SAML with support for OneLogin
  • We now delete all appropriate notifications from the previous assignee
  • Issue assigned notifications are no longer deleted when an issue's priority is lowered from urgent
  • Autocompleting an inline suggestion in the editor will no longer create two spaces after the suggestion
  • Autocompletion in the editor now matches text up until the cursor position, making it possible to e.g., @mention someone without first adding a space after the cursor
  • Relationships between issues are now copied when merging issues
  • Projects in the project picker menu are now sorted more intelligently
  • Added keyboard shortcut hints to sidebar navigation controls for desktop application
  • Changed highlight on a linked comment to disappear after the user clicks the page
  • Clicking the issue history entries timestamp now copies the link to your clipboard
  • API filters now truncate all dates to the closest millisecond
  • Fixed an issue that would prevent creating issues from Slack
  • Fix inline filter not focusing when opened from the command menu
  • Fixed a layout issue in the sidebar for long workspace names
  • Fix to allowing cancel in confirm step before moving issues between teams
  • Fix to issues where Linear's layout shifted unexpectedly
  • Fixed bug where closing emoji autocomplete would try to discard the issue
  • Fixed when attempting to clear search input could result in a previous search term reappearing
  • Fixed some instances where text was not properly escaped for Slack notifications
  • Fixed the issue URL not being posted in a channel after an issue is created from Slack
  • Fixed a bug that would cause the Intercom integration not to load for very long conversations
  • Fixed a race condition that would allow navigating away from the editor before images had completed uploading
  • Fixed a bug where buttons and toggles in the issue create modal would not work correctly with the keyboard
  • Related issues where sometimes shown and sometimes filtered from search incorrectly, this is now fixed

Desktop Navigation

Today we're rolling out a new version of our desktop application with improved navigation controls and recent issue history navigation. These changes will bring our desktop application closer to the navigation controls found in the web version. To quickly jump between issues Recent Issue History menu displays the list of issues you accessed recently. You can also access the same list through Open Issue... shortcut O then I.

In addition to visual back and forward buttons, we also added new keyboard shortcuts (CmdArrowLeft CmdArrowRight) in addition to existing ones (Cmd[ Cmd]) to make keyboard navigation easier on some non-US keyboard layouts.

If you already have the Linear desktop application installed, you will get a prompt to upgrade to the latest version (1.4.0). If you don't yet have the desktop app installed download from linear.app/download.

Fixes and improvements

  • Inbox notifications for comments now scroll and highlight the corresponding comment in issue view
  • Default templates are applied when creating issues from the + button in the list and board headers
  • Previewing a Figma link is now faster and smoother
  • Clearer selection state in the editor
  • Added controls for setting the default status for new issues
  • Issue imports are now correctly marked as "processing" when they are enqueued for processing
  • Issue history now correctly uses the avatar of the user assigning the issue to another user
  • Fixed editor suggestions hanging on screen after issue creation modal is minimized
  • Fixed edge case where the active cycle would briefly disappear from the UI
  • Fixed an issue where users were incorrectly deleted from the client, leading to crashes
  • Fixed the layout of the invite accept screen
  • Fixed error when changing an issue to/from blocked from another relationship
  • Fixed formatting of user avatars when undoing actions
  • Fixed a bug where "hidden columns" would be empty after deleting a hidden status
  • Fixed uploading the same file multiple times would not work in the editor
  • Fixed unfurling of custom view links in Slack
  • Improved the display of images that could not be loaded in the editor
  • The Slack integration will no longer show an error when an issue is being created from a very long message

GraphQL Filters

We added extensive filtering options to our GraphQL API to make it easier to find specific entities without wading through all of an organization's data.

Filtering is available wherever results are paginated. It lets you filter based on entity properties, use and/or logical operators, and filter based on an entity's relations. Here are some examples of the more complicated queries that you can accomplish using the new filtering:

  • Find all issues with the label bug or defect with a high priority in the workspace assigned to you
  • Find all projects where a particular person is the lead that has open issues and is due in the next month
  • Find all labels that contain the word design, have a high priority, and are associated with issues in a particular team's projects.

With our recent changes that let OAuth applications consume webhooks, filtering should make it easier to create real-time API applications that don't need to poll all of the organization's data very frequently.

Read more on filtering in our developer's guide.

Rate Limiting

With the recent changes that help you get the exact data you need from our API (GraphQL filters) and improvements to how you can get real-time updates from us (webhooks), we're starting to roll out rate limiting on our GraphQL API.

We're starting without enforcing the limits, but exposing them to you in our API response headers. If you're using API keys to query us or if you're an OAuth app developer, you should look into whether your current usage would get limited after a certain amount of requests.

In the next few days we'll also begin sending out emails to API key owners and OAuth app developers who are repeatedly getting limited and asking them to adjust their usage.

These changes are necessary to ensure equitable availability of our API for everyone and to prevent potential abuse. If you have any comments or suggestions, please reach out to us on any of the standard channels, such as email, the Slack community (#api channel), or Twitter.

Read more on rate limits in our developer's guide.

Fixes and improvements

  • Fixed a bug where clicking a PR in issue lists would open the incorrect PR
  • Front and Zendesk are now updated with a more clear message when the linked issue is merged into another and cancelled
  • Highlight the issue comment when opening from a link
  • Fixed some issues in sync where stale data relationships could cause client errors
  • Webhooks now include `organizationId` to differentiate between workspaces when installed using OAuth applications
  • Increased maximum project name length to 80 characters
  • The app now works correctly in Firefox with `resistFingerprinting` enabled
  • Added a warning to issue compose in situations where there are unsaved changes and user reloads the page

Small fixes & improvements

We love launching new features, but this week we have focused on smaller bug fixes and quality-of-life improvements to the product. Here are some highlights:

When keeping track of user requests you often get a lot of links in related issues. To help with prioritizing requests we have added the option to sort lists by the number of links in each ticket. To enable this, go to the view options menu in the top right corner and select "Link count" under "Ordering". You can also display information about links in issues in the list view by enabling the "Links" display property.

Improvements to multi-team views

For views with issues from multiple teams, we have improved the performance in cases where only a few teams are filtered out. This should bring noticeable speed improvements to such views in larger workspaces. We also made it possible to hide all columns in multi-team board views.

Other fixes and improvements

  • Fixed a bug that would cause duplicate relations between issues to be created
  • Fixed hover styling on section headers in the sidebar
  • Fixed issue where you could get board views grouped by the wrong property
  • Fixed a bug which caused some projects to not be archived
  • Generated branch names will no longer include emoji characters
  • Issues imported from Asana will now have subtasks added as a checklist on the parent issue
  • Fixed issue history entries so they don't line-break in the middle of words
  • Links created via the API will no longer all be grouped together when filtering by link source
  • We now disconnect unusable Sentry integrations that had their tokens expired due to a previous bug
  • Old team identifiers can now be deleted in the team general settings
  • We now correctly escape Jira project keys in the Migration Assistant
  • We fixed some bugs and edge cases with image uploads
  • GitHub/GitLab integration doesn't share issue details from private teams in linkbacks anymore
  • Improved the positioning of the floating toolbar in issue and comment editor
  • Improved performance of accepting triage issues

Easier invites

Inviting people into your workspace is a key component of access management and we've improved the flow that makes it easier to accept invites and mitigates some previous edge cases.

Accepting an invite email will now work even if you're already signed into Linear and have an existing account, and works even if you're not signed into the correct account that the invite is for. This makes the entire process clearer.

We've also added the ability to easily resend invites. You can find this feature in the Members section where the outstanding invitations are displayed at the end of the list.

Webhook improvements

We've recently made a few improvements to webhooks. You can now find webhooks in organization API settings, allowing you to create webhooks for all public teams in your organization. Existing webhooks will continue to work in the same way, and you can still create webhooks for individual teams.

OAuth applications now also have the ability to create webhooks. This is useful if you want notifications about relevant events pushed to your app rather than having to poll for updates. Whenever a new organization authorizes your application, a webhook will be created, sending the events of your choice to your provided URL. We recommend switching to webhooks rather than frequently polling, especially if you are polling a large data set. Check out the webhook documentation for more information.

Fixes and improvements

  • Improved support of Jira on-premise installations in migration assistant.
  • We fixed an issue that could cause the desktop app to consistently use more CPU after a fresh login
  • Selected labels are now grouped together in menus
  • We now properly notify admins and revoke Figma and Sentry integrations if we can't access the services anymore
  • Projects with zero effort now correctly show progress
  • When moving issues between teams, your teams are now listed at the top
  • Improved user experience and speed of moving issues between teams
  • Fixed issue suggestion widget on the editor that might not show the exact match for an issue identifier
  • Fixed url redirection to the wrong issue after moving it to another team
  • Notification reminder emails for a single notification now have more descriptive subject lines

Multi-team boards & manual ordering

It's now possible to use board layout for all* views in Linear. This includes the "All" tab under multi-team views as well as all custom views. Previously, only views containing issues from a single team could be manually ordered and viewed in board layout. Since teams can have their own states and each state is its own column on a board, some issues on multi-team boards will be moved to another team when they’re dragged to certain columns. When moving an issue to a state that only exists on another team, you will need to confirm that you meant to move the issue to that team. In addition to board layout, manual ordering in list layout is also available for multi-team views. To enable board view or manual ordering, go to view preferences in the top right corner of the view.

* My Issues, Archived issues, and completed cycles can not be viewed using board layout

Fixes and improvements

  • Fixed caret jumping in the editor in Firefox when navigating with arrow keys
  • Fixed issue where dragging inside of the search input on the desktop app moved the window
  • Fixed an issue that caused comment and issue content to disappear when the theme was changed
  • Reopening a closed pull request is now also displayed in Linear
  • Fixed an issue where special characters would not be filtered from generated branch names
  • Fixed some places on the desktop app where the window was not draggable, but it should have been
  • You can now filter by issue attachment source, e.g. Intercom, Slack, Zendesk, etc.
  • Fixed a bug causing issue migrations to sometimes fail when importing users
  • We now respect pointer settings on the search page
  • Fixed a bug where issue history would be displayed in the wrong order
  • The user mapping section in the migration assistant correctly recognizes existing users and allows you to map/search all workspace members
  • The billing page now correctly updates after updating your payment method
  • Fixed a bug preventing some URLs from being used for issue attachment links
  • Fixed an issue where you couldn't delete templates that were the default for team or non-team members
  • Relations are now created to issues when they are mentioned in issue descriptions
  • Fixed a bug where in certain situations a canceled issue might be moved to the next cycle

GitHub Secret Scanning

We're excited to share that Linear has joined GitHub's Secret Scanning program to provide an extra layer of security for all Linear API developers. Secret Scanning protects you by automatically detecting leaked API keys in public GitHub repositories and notifying participating services so that they can disable the keys and notify the developer. Many industry leading companies such as Slack and Stripe already implement secret scanning for their API keys.

We recently changed the format of our API keys and OAuth access tokens to include Linear specific prefixes, lin_api_ and lin_oauth_, to enable GitHub to detect them similarly to their own tokens. These new keys will be automatically detected and disabled if ever committed to a branch in a public GitHub repository.

Auto-archive for everyone

About a year ago we introduced auto-archiving for issues, which helps you make sure your workspace stays relevant and performant. Earlier this year we expanded the feature to automatically archive old cycles and projects. We also recently improved search to make it easier to find archived issues.

Today we are enabling auto-archive for all teams. Each team can set the period after which issues (together with cycles and projects) should be automatically archived. By default, auto-archive is set to six months, but you can choose a shorter or longer period if that makes sense for your team. Together with our auto-close feature, we think auto-archive will help you keep a manageable and relevant backlog for your organization.

Fixes and improvements

  • API: Added a new way of formatting dates within attachment subtitles. Please see the docs for more details.
  • API: the progress field is now available for cycles and projects
  • Added aria labels to most icon buttons
  • Fixed an issue where triage issues would show up in some views where they shouldn't be
  • Added skip-nav to make it easier for screen readers to navigate the page
  • Fixed an edge case where the issue view would not have any navigation controls
  • Fixed listing of private views, which would sometimes appear twice in the list
  • Improved styling of code blocks on light themes
  • Added support for more languages in code blocks
  • Made it easier to search for emojis in comments and issue descriptions :thumbsup:
  • Made it easier to remove planned projects from timeline
  • Added an issue filter for unblocked issues
  • Made labels take up more space on large screens
  • Made filter issue actions easier to find inside the command menu
  • Fixed so issues are correctly selected in lists after undo operations
  • Fixed so that priority sorting preferences are respected in multi-team views
  • Fixed missing issue history entries for archived and deleted issues
  • Added semantic elements to different regions in the app
  • Fixed navigation history after moving issues to another team
  • The full timeline bar will now link to its project when clicked
  • Fixing GitHub and GitLab integration automations not working properly when an issue was moved between teams
  • You can now delete an import before it has been completed
  • When issues are created from a Slack message via the integration, the Linear Slack bot will now respond in thread rather than in channel
  • Issue history timestamps are now correct for archived issues
  • Fixed moving issues to another team from the triage accept dialog
  • Added "Rename…" to the contextual menu for issues
  • References are now created when issues are mentioned in comments
  • @-mentions suggestion results in issues or comments will now be alphabetically sorted for some very similar usernames
  • When creating a new project, the "View project" link will open the correct page
  • Fixed a bug preventing recently deleted issues in archived workflow states from being restored
  • You can now select all issues on a board with Cmd A
  • Templates are now ordered alphabetically
  • Fixed how templates are applied switching between them while creating a new issue
  • Fixed a bug causing new issue creation from Slack to sometimes show an error message when the issue was successfully created
  • When navigating to a project via the O P shortcut or the header of a project page, you will no longer see duplicates of projects in multiple teams
  • Projects are sorted by name in the "Add to project" command
  • Added action buttons for Snooze, Delete and Unsubscribe when hovering items in the Inbox
  • Added buttons for triage actions when hovering over triage issue list items
  • Fixed creating an attachment from a URL failing to link for some URLs with private content, such as GitHub commits
  • Triage is now at the bottom of the list when changing issue status
  • Fixed copying issue ID, url and branch in issue edit mode
  • Google Sheets integration now includes the issue's milestone as a separate column in the spreadsheet
  • Forms to create attachments on issues will now be automatically focused even if opened from context menus
  • When creating a new private team, but copying settings from a public team, your new team will correctly be set to private
  • Added a link that makes it easier to unsubscribe from all notification reminder emails at once

Summer

The team has been enjoying the summer by taking some well-deserved time off, and our skeleton crew has mainly been focusing on performance improvements, bug fixes, and other small improvements over the past weeks.

Fixes and improvements

  • Improved startup performance for large workspaces
  • Allowing attachments created from URLs to be added if we can't download an icon for them
  • Issue badges are now wider on large screens
  • Inviting multiple people to a workspace is now easier as the field accepts multiple email addresses at a time
  • Canceling an issue edit will only show a confirm prompt if there were changes
  • Allow Shift+ mouse wheel to scroll horizontally on the timeline
  • Added two settings to the Intercom integration to control when an internal note should be posted to an Intercom conversation based on the action that occurred to a linked issue
  • Filtering is now available in the Triage view
  • Triage issues are now shown in board view
  • You can now specify a title for attachments added from a generic URL
  • Improved error messaging for the Intercom integration if your organization only has private teams
  • Notifications can now be snoozed until any date or time by typing the date and/or time into the command menu once the snooze action has been selected
  • When deleting or snoozing a notification on the notification view using the shortcuts for the actions (D and H, respectively), you will now automatically move to the next notification in your inbox
  • The macOS desktop client will now properly display navigation controls in the issue list in smaller window widths
  • Suspended users can now be removed from projects
  • Closed GitHub issues are being correctly fetched to be imported with the migration assistant
  • Board issue widgets now show sub-issue counts
  • The tooltip for the "Triage" section in the sidebar now shows the correct navigation shortcut
  • Notifications can now be snoozed until any date or time by typing the date and/or time into the command menu once the snooze action has been selected
  • Issue history will now have an entry for issues that were imported. In addition, the original creator of the imported issue will also now be properly displayed.
  • Usage limit notifications will no longer be shown for files uploaded in the "Contact support" modal
  • Avatars from Clubhouse will now be properly displayed and imported during an issue migration
  • The sidebar section for teams you are not a member of has been renamed "Other teams" rather than "All teams"
  • API: Dates within attachment subtitles can now be formatted if the date is provided as a variable. Please see the docs for more details.
  • Attachments can now be dragged ontop of the fast issue create modal even when one of the property drop-downs is active
  • Improved history management
  • The issue editor will no longer think an issue has been updated when it has not been updated and the user is navigating away from the editor
  • Fixed a problem where under certain circumstances, child issues would not immediately be visible on an issue
  • Fixed an issue that caused the local cache to be deleted unnecessarily
  • Fixed a bug causing some shortcuts to not work in the new notification view
  • Fixed URL encoding for searches including characters
  • Fixed an issue where multiple triage states might have been created for certain organizations
  • Fixed Figma preview showing below the "New issue" modal
  • Fixed issue description not updating in the issue view when another user updates it
  • Fixed a bug causing errors when accepting a triage issue
  • Fixed internal GraphQL error when querying empty connections
  • Fixed a bug preventing issues from being reopened when linked pull requests were reverted
  • Fixed a bug preventing Intercom integrations from being deleted

Linear Release 2021.06 - "Grow with Linear"

This release brings new features to help fast-growing teams manage added complexity without losing efficiency.

Linear Release 2021.06 ->

"Fast growing startups are built on Linear" - Medium ->

Issue Triage

We build in public at Linear and put care into talking to users and getting feedback. We talk to hundreds of customers each week through our Slack community, Twitter followers, and to users who send in bug reports, requests, and questions through our in-app help modal which routes to our Front Inbox which we use for customer support.

We like to link to customer conversations in Linear issues so that we can keep track of requests and get back to customers when issues resolve. As we grew, we found it harder to do that. We weren’t alone as we learned a lot of our customers faced this same problem: they had Linear issues filled with links to customer conversations. Some also had started building separate Triage “teams” where they would file all new issues, then clean up, prioritize, and move them to the appropriate team.

So we built this user experience into Linear: Triage. All new issues from integrations, or members outside of your team, now go to a special team inbox called Triage. These issues have linked attachments back to the customer support tools where they were created.

The product team can choose how they triage issues but we’ve built in a simple workflow you can follow, too. Use keyboard shortcuts or the menu to accept an issue to the backlog, escalate it to the current cycle, merge, decline, or even snooze the issue for later. Declining an issue prompts you to leave a comment explaining why and you can keep an issue in the Triage inbox while you wait for more information.

To enable Triage, visit Triage section under your team's settings.

Fixes and Improvements

  • Fixed selecting labels with space in command menus
  • Fixed a bug that would take the user to a different issue when making changes to it, in some cases.
  • Email login links should now work even with aggressive email scanners that would before invalidate the authentication code.
  • We now correctly detect and migrate epics in more situations when using the migration assistant.
  • Improve wording for the control to share views.
  • Fixed tooltip on the sidebar search button.
  • Checkboxes for selectable actions will now correctly reflect their selected state
  • All personal GitHub repos will now be fetched when using the Migration Assistant for GitHub
  • Fixed a bug with issue attachment actions sometimes not working

Intercom integration

Working with your customers is a critical part of building a high-quality product. As companies scale, many customer requests are piped into customer success tools such as Intercom. This is why we're excited to add Intercom to Linear's growing set of integrations for customer support.

With the Intercom integration, your customer success teams can now quickly file bug reports into Linear from within Intercom and link feature requests to existing issues. New issues can be created directly from the Intercom interface and then triaged by your product team. We create links between the Intercom and Linear issue and show the issue's status and assignee in the Intercom sidebar. This makes it easy for your support team to view and comment on the Linear issue or share status updates with customers, and for the product team to reach out with follow up questions to the support agent or customer.

We also added an automation which re-opens and updates Intercom conversations after the issue has been resolved (or canceled), so your customer success team can get back to the customer to update them on the progress. The integration makes it easier for your product team to prioritize their work based on customer needs and build a tighter feedback loop with your customers.

To enable the Intercom integration, install our app from the Intercom App Store and enable the integration in Linear settings.

Fixes and improvements

  • Fixed a bug where incorrect issues would be listed when having selected "Show only completed from current cycle"
  • It's now always possible to add issues with templates. Previously this would not be possible if there was no one specific team on screen
  • Fixed a bug where quickly selecting, then deselecting a label would make the label to go into an incorrect state
  • Make actions taken when copying branch name undoable
  • Fixed the capitalization of GitHub in a few places
  • Fixed a visual bug in the cycle details pane
  • Fixed command menu overflowing the screen when its content was too wide
  • Fixed a visual bug in issue history
  • Fixed a rendering bug in the issue create modal
  • Released roadmap timeline to all users
  • We now correctly detect and migrate epics in more situations when using the Migration Assistant
  • Snoozed notifications are no longer included as part of the inbox badge count
  • Improved the behaviour when selecting items using space in the command menus

Snoozing Inbox notifications

Inspired by many of the new email tools, we've added snoozing of issue notifications to Linear's Inbox. Not all notifications require immediate action, or you might want to wait for more information, so now it's easier to get to Inbox Zero by snoozing notifications. Just hit h to snooze the notification for an hour, until tomorrow or until one of the other predefined options. You can also snooze notifications until the next cycle starts. Notifications are automatically un-snoozed if there are new comments or other activity in the issue.

Improved issue merge

We improved and simplified merging of duplicate issues. Now when you merge an issue into another issue, the duplicate issue's source attachments (e.g. Zendesk ticket) are moved to the canonical issue. This means that as you merge new duplicate issues into the canonical issue, all user reports are tracked in one place. If you have enabled customer support automation with Zendesk, all the relevant discussions will be reopened when the issue has been resolved. To keep things simple, we removed the ability to mark issues as duplicate from the canonical issue: you can only take the action to merge an issue from the duplicate issue, not the other way around.

New setting for team priority ordering

Linear offers multiple ways to order issues in lists through view options, from manual to automatic. Historically we have defaulted to priority ordering and pushed issues without priorities to the top of the list to encourage you to set the prioirity. This week we added a new team level setting which lets you decide if the issues without a set priority are shown first or last. To change the setting, find the Priorities section under your team's General settings

Fixes and improvements

  • Linear's GitHub App now works with GitHub Enterprise Cloud if you have IP allow list enabled. Just enable the "Enable IP allow list configuration for installed GitHub Apps" setting.
  • Use the new "Add attachment from URL..." action to add any external links to your issues as attachments
  • You can now drag and drop all projects in the timeline
  • Fixed an issue where keyboard shortcuts didn't work on sub-issues on the issue page
  • Fixed an issue with duplicate date picker on mobile devices
  • Fix for some email providers that aggressively click on links, making email login codes invalid before the user can use them
  • We're now guarding against accidentally starting an import processing twice, resulting in problems
  • You can now select whether you want to import stale issues and/or completed issues separately in the migration assistant
  • An issue's file attachments are now downloaded using the original filename
  • Slack integrations are removed when users get suspended or leave a workspace
  • Fixed an issue where the R shortcut in a cycle view would rename the cycle instead of the selected issue
  • Fix submit button behavior in contact support modal
  • Fixed downloading of images from issue descriptions
  • Fixed a tricky bug causing logouts when using multiple user accounts in multiple tabs/windows
  • API: You can now specify an icon url (jpg or png) when creating or updating an issue attachment
  • API: You can now link any url to an issue as an attachment using the `attachmentLinkURL` mutation

Issue view layout

There's one aspect of the layout of the application that we haven't been too fond of since the beginning: The way the issue page renders on larger screens. We didn't want to make the issue content column too broad to keep the issue content readable, so we extended the issue details pane to the side of the screen. But this never looked quite right on on larger window sizes. We've been putting off fixing this as we have bigger changes planned for the issue page, but this week we finally decided to fix it and not wait for a bigger redesign.

We're now centering the issue content when your window size grows beyond a certain size. The issue details panel will also grow proportionally with your screen size, giving you more room for all the labels your issue might have.

Fixes and improvements

  • Updated design of the project bars in timeline
  • It is now possible to resize the width of the left aside on the timeline page
  • Fixed a bug causing the upgrade notification not to be clickable if it was triggered by the fast issue creation modal
  • Zendesk integration now supports linking tickets from Zendesk installations with a custom domain
  • Imported issues will now have their completed or canceled dates properly set if that can be determined, or set as the time of import if not
  • API: Fixed a bug that was causing attachmentCreate to fail when passing the short format issue id rather than a UUID
  • Improved contextual menu rendering performance
  • Fixed side-scrolling issues with contextual menus
  • Fixed some smaller corner roundness issues on the comment menu
  • Workspace member settings have an upgraded design
  • Fixed the workspace member settings not to show actions that the user can't undertake if they are not an admin.
  • The keyboard shortcut for setting an issue due date has been changed from Cmdd to Shiftd
  • The cycles page now contains better instructions on how to find the estimates settings, should it not be enabled
  • Fixing an overflow problem when editing milestones
  • Fixed problems editing the name of a project
  • Deleting a team will now force you to type out the name of the team to make sure that users are deleting the intended team
  • Alert dialogs with an input prompt now display input errors animated
  • Fixed regression with command menu checkboxes

Linear Preview: Roadmap Timeline

Today we’re launching a timeline visualization of your project roadmap in Linear. You can now plan, manage and track what needs to get done this month, quarter, and year, visually. With the roadmap timeline, see a high-level view of not just the projects in your organization but also the progress teams are making toward them and estimates for when projects will complete. It's a smart timeline synced to actual issue data that helps you avoid flying blind.

Planning with timeline

Viewing projects in the context of time gives you a better understanding of what’s going on and when projects will complete. It’s also easier to plan for dependencies, such as when someone will free up to work on a new project, and spot projects that are falling behind or where teams may need more time or to adjust the scope.

Draggable project bars let you quickly make changes to your roadmap. Move the project to adjust the start date, extend or shorten the project length, and move the project up or down on the roadmap to reprioritize the work compared to other projects. Any updates made on the timeline will sync across the workspace. Especially early on in the planning phases, you'll have a lot of back-and-forth discussions on projects. The timeline view makes it easier to collaborate live since everyone can see the same view, understand the visual design intuitively, and any changes update near instantaneously on everyone else's screen.

Live predictions

While a project is active, we'll generate an estimated completion date and show the projected date range on the timeline. These are the same estimates you see on project graphs and we calculate them using remaining issues and historical project velocity. A purple estimate shows up if the project has no set target date to give you a hint of when the project might complete, and a red estimate means the project is or is projected to take longer than the defined target date. The predictions take some time to generate after the project begins since they require recent project data, so you may need to wait a few days before it shows up. This live forecast gives you realistic and up-to-date information that you can use when making decisions on scope and planning.

ProTip: To see a specific project's graph without leaving the roadmap, press the Space to launch peek while hovering over the project on the list or timeline.

Roadmap Timeline is available as a Linear Preview feature while we polish the last details. To enable it for your organization, press K and search for Timeline.

Fixes and improvements

  • Fixed a bug in template selection menus in team settings
  • Fixed git branch names for issues containing
  • Fix a bug when dragging list items in Firefox
  • Fixed a bug so that you can now switch to another workspace after scheduling your current workspace for deletion and logging in again
  • Improved discovery for editor related keyboard shortcuts
  • Improved the assignee selector in board issue cards
  • Parent issue is now maintained when creating multiple issues
  • Images will no longer be duplicated when dragged from one position to another within the editor in Safari
  • Images can now be dragged and reordered within the editor
  • Added the option to order lists by issue due date
  • Added more options for auto-archiving for teams using the Linear free plan
  • Fixed a bug that prevented file uploads on iOS
  • Long workspace names are now properly truncated in the sidebar workspace menu
  • Fixed a layout glitch when first rendering the search results.

Improving performance at scale

Over the past two months we received reports of slow performance affecting some of the larger Linear workspaces. We looked into the issues, and even made some changes to speed up the app, but determined that fixing the problem would require deeper work. Over the last couple of weeks, we have been heads down implementing fixes and planning larger changes to Linear's architecture to support the long term scalability of the service.

Unfortunately what makes Linear extremely fast for most users can also make it slow for others if we scale faster than expected, which we did. This stems from technical architecture choices we made to build Linear and their trade-offs. This didn't come as a surprise to us and we anticipated having to make changes sometime in the future, but not so soon and especially not after customers hit performance issues. We do our best to work on these issues before they can become a problem for an end-user.

This week we shared a pre-mortem that explains Linear's architecture, the performance issues these customers were hitting, and the steps we're taking in the near and short term to address them. While your workspace might not be affected, we wanted to share the document with all of you as we work through these challenges. If you hit performance issues, now or in the future, we'd like you to reach out so that we can fix them. The good news is that thanks to this work, Linear has gotten significantly faster for all users in the past two weeks. We consider speed a core feature of the product and will continue to treat it as a top priority as we scale.

Linear performance pre-mortem ->

Fixes and improvements

  • [API] attachmentsForURL query now returns a paginated list of results instead of an array
  • [API] attachmentIssue query has been deprecated. Please use attachmentsForURL with issue sub-query instead.
  • Zendesk integration now supports linking multiple issues into a customer ticket
  • There's a new "Open issue" action, also accessible through the global OI key shortcut, that lists all the recently accessed issues and enables a quick search through issue titles, similar to how it used to work in the global command menu.
  • Notifications for actions that have been changed or undone will no longer show up in your Inbox
  • Fixed a bug where codeblocks would cause a CSS bug in issue description & comments
  • The "Open projects" list now includes projects from all teams you're part of
  • Removed duplicate fullscreen options from the desktop app menu
  • Several style fixes for search input fields
  • You can now filter issue states in the dropdown in issue create
  • You can now unsubscribe from notifications for multiple issues
  • Fixed a long-standing bug where lists would render incorrectly
  • When creating a new team, we will now use your timezone rather than defaulting to UTC-7, Pacific Time
  • Fixed a crash that could occur on the search page when searching a mis-formatted string
  • Reduced minimum characters for searching to 2
  • Added highlighting to issue identifier matches on the search page
  • When using the keyboard shortcut / to focus the search input, the text is selected if the input is not empty for quicker searching
  • History and navigation on the search page is improved. The back button and/or clicking the sidebar search button works correctly.
  • Searching just for a number "123" will find issues that have 123 in their identifiers
  • Fixed potential app crash with strings containing multiple or trailing spaces
  • Added ability to clear recent items such as recent search queries or recently viewed issues. You can search for it in the command menu, by typing "clear recent".
  • Links to shared custom views are now unfurled when shared to Slack
  • Improved issue contextual menus by alphabetically ordering projects, limiting assignee list to issue's team members and improving styling
  • Text formatted as inline code can now also have strikethrough formatting