App store reviews can provide an unexpectedly valuable window into your appâs health, highlighting issues that might not otherwise surface in crash reports, observability data, or product analytics. But itâs difficult to actually leverage reviews as part of your teamâs overall health monitoring strategy. If you have a lot of users there are simply too many reviews to sift through, and no matter how many users you have thereâs still lots of noise that has nothing to do with the appâs functionality â âTerrible customer serviceâ, âMy order was lateâ, etc.
Now, Runway can help you separate signal from noise so you can make the most of user reviews as an additional indicator of app health. We use AI to analyze all of your incoming app store reviews and identify common issues mentioned in them, surfacing these issues (alongside specific examples pulled directly from the reviews) on each releaseâs Rollout page. Simply evaluating for sentiment isnât enough, since that would include reviews which have nothing to do with the app, so Runway considers the context of your company and app in order to single out bugs and broken functionality.
Sticking with the store reviews theme, thereâs a new automation in Runway that will automatically translate any non-English reviews and surface those translations alongside the original reviews in Slack (if you have store review notifications enabled). Avoid the multiple tabs and back and forth with translation tools when you need to figure out what users are saying about your app!
Until now, youâve used the ârolesâ functionality to scope access and group users in Runway. But because roles can be used in so many different ways in the platform â not just for RBAC and organization purposes, but also for things like notification pings, checklist item ownership, and syncing users between integrations â teams have been telling us they want to be able to create and manage their own roles. Now, you can do exactly that.
Runwayâs roles functionality has expanded into what is now called âgroupsâ. You can create as many custom groups as you like, assigning subsets of users and a list of permissions to each, and you can use these groups to segment users by role, team, or any other functional grouping within your org. As before, you can do things like: assign groups as owners on checklist items, regression testing items, and approval items; set up mapping to your Slack user groups so that folks are pinged in certain notifications from Runway; configure directory sync to automatically bridge from teams and groups in your companyâs internal directory to groups in Runway; add groups as members on Build Distro buckets; and more.
As our team often likes to say, your job isnât done when you hit the button to release â or when Runway releases for you automatically! Running rollouts is a critical part of the overall mobile release cycle, and thereâs already a lot you can do in Runway to automate and safeguard this part of the process. Now, weâve released a couple of new additions to give you even more control as you roll out.
First, we brought Runwayâs checklist items functionality to the Rollout page so you can assign and track any post-release tasks the team needs to perform. Like checklist items elsewhere, you can set up automatic reminders and interact with them via our API and webhooks for extensibility.
Building on top of that, you can now also gate Runwayâs rollout acceleration automation based on one or more checklist items. Runway will monitor your rollout and configured health metrics as usual, but even if health and adoption conditions are met, Runway wonât trigger the acceleration to 100% unless all required checklist items are also complete. This gives your team a powerful way to combine automation with human inputs that bring additional context, influencing whether you want to accelerate a rollout or not. Notifications can also be sent if conditions are met but checklist items are still incomplete.
The Feature Readiness view in Runway is designed to give your team a crystal clear picture of everything youâre shipping, as well as any pending work thatâs expected to ship with a given release. Being able to visualize incomplete items and potential blockers is helpful in and of itself, but you often need to take that info and then go track down the people or teams responsible. Â
To help you quickly follow up on outstanding items and make sure your releases stay on schedule, weâve added a âPing all pending ownersâ action to the Feature Readiness step. When you click the button to ping, Runway will send a notification into Slack tagging the respective owners of the code and/or project management tickets associated with the pending work.
Many Android teams need to include older builds alongside new ones in each release they ship, to maintain support for certain form factors or other segments of their audience. Previously, in order to do that, teams would have to remember to manually select the older builds to retain on the submission step in Runway for each and every release. Now, you can select any builds to be retained just once and Runway will automatically include those builds alongside your new builds each time you submit and release (or until you clear the retained builds in Runway).
There are two new additions to Runwayâs integrations, in two different domains. Huawei AppGallery is our latest app store integration, giving you yet another destination to ship your Android builds to (with even more destinations on the way - see below!). And at Runwayâs translations integration point, you can now hook up Lokalise to better visualize the state of localizable strings for each release, and sync changes across your codebase, Lokalise, and even the app stores for localized metadata.
In designing Build Distroâs bucketing structure, our goal was to help teams take the laundry list of different builds they distribute and break it down into logical groupings based on audience and build flavor. But even with clearer groupings, team members often need to grab builds from various buckets and it can still be hard to find the exact build youâre looking for at any given time.
To help users get to the right build in seconds, we added global search to Build Distro. You can search by build number or against other fields like commit message or PR title.
Runwayâs out-of-the-box integrations with a range of different CI providers give teams a quick and easy way to spin up Build Distro buckets and automatically ensure the right builds get distributed to the right places. But there are plenty of reasons why a team might want lower-level access to manage builds and buckets directly, and weâve been prioritizing work to expand Build Distroâs footprint in our public API. Our latest additions include endpoints that allow you to upload builds and create, read, and update buckets.
Details â and a sneak peek at more endpoints that are on their way shortly â are available in our API documentation.
Managing screenshots and metadata for the app stores can be one of the biggest offenders when it comes to wasted time and context-switching during releases. For one, the stores limit when you can actually go update release notes and metadata for an upcoming version, often turning this part of the process into a last minute scramble and a lot of copy-pasting, with engineers needing to track down and loop in product or marketing help and then quickly update everything in the stores. Plus, if your app is localized, you can multiply that scramble by the number of languages you serve, with extra work to send out new metadata for translation and then pull the translations back in before submission (ideally without any languages slipping through the cracks!). Â Â
To help your team avoid the rush to get store release metadata sorted, and even allow you to plan ahead, you can now update release notes and metadata for upcoming releases as early as you like. As soon as a release exists in Runway, you can navigate in and save release notes and metadata, ahead of time. Runway will monitor the status of the release in store and automatically take care of syncing any updates as soon as itâs possible to do so â no manual copy-pasting required!
You can also leverage Runwayâs translations integration to get a head start on metadata localization. If you opt in to have your translation integration handle metadata, each metadata field will reflect a status that lets you see at a glance what needs to be uploaded for translation, whatâs still in the process of being translated, and whatâs translated and ready for export to the app store. Whenever youâre ready, you can trigger an export of all translated metadata, which automatically syncs it to the store directly from your translations provider.
You can also automate this entire process by enabling the new âSync metadata translationsâ automation. With the automation enabled, all you have to do is make the desired changes to a releaseâs metadata for your source language only. Runway will automatically upload everything for translation, watch the status of translations, and export completed translations to the app store as soon as theyâre ready.
New app versions arenât the only things you need to submit for review in App Store Connect. For teams that take advantage of Appleâs in-app events or custom product pages, youâll know that these items also need to undergo review before they go live. Youâll also know that you can only have one submission in review at a time. While Apple does let you combine new app versions with additional submission items to submit all together, this calls for a lot of extra coordination across the team â and often across disciplines, given folks like marketing are typically involved for in-app events and custom product pages. It can be difficult to make sure everything is ready to go at once, and seeing status and submitting multiple submission items in App Store Connect can be cumbersome and confusing (especially for less technical contributors). Â Â
Now, your team can handle in-app events and custom product pages alongside app version submissions in Runway for a clearer and easier way to coordinate across multiple submission items. On the Submission step in your iOS releases in Runway, you can now select one or more in-app events and custom product pages to queue up for submission alongside your app versions. All the different kinds of items that are selected for submission are visualized on the step, and when youâre ready to proceed (whether manually or automatically), Runway takes all of those items and submits them for review together.
Building on our new support for additional submission items, Runway now also gives you an easy way to resolve the frustrating roadblocks that crop up when coordination around multiple submission items breaks down. Odds are youâve experienced this kind of scenario before. Someone on one side of the org spins up a new in-app event, custom product page or product page optimization and excitedly submits it for review in App Store Connect, unaware that thereâs a new app version scheduled for submission shortly thereafter. When their teammates go to submit the new version, theyâre met with an error explaining that they canât proceed because other items are already submitted. A whole back-and-forth ensues to figure out whatâs already submitted and what needs to be submitted, then a bunch of clicking around in App Store Connect to remove items and resubmit. Â
Runwayâs âunblock submissionâ action seamlessly resolves this kind of situation with a single click. Alongside full context on all your submission items on the Submission step, when Runway detects a state that is blocking your app submission, we surface a button that allows you to instantly pull all blocking submission items from the queue or from review, then re-add each of those items alongside the build you want to submit so that you can easily proceed by submitting all items together.
IYKYK, and many of you have probably heard us talk about this before: thereâs a longstanding issue with the Play Console Publisher API whereby releases transition immediately from a draft status to live, even if they get flagged for review by Google, and even if you have managed publishing enabled and havenât yet hit the button to release. This creates a pretty difficult blind spot for anyone building tooling on top of the Publisher API, since you canât know for sure whether a given version is actually live in the Play Store. In Runway, weâve had to make less-than-ideal accommodations to deal with this, like optimistically considering releases as live immediately after submission, and giving teams a way to manually signal to Runway that we should start an automated staged rollout for them.
Judging from this issue thatâs been open with Google for years, they donât plan on fixing this anytime soon â so we decided to build a workaround. If you simply forward your Google publishing update emails to Runway, weâll use those to determine when your releases actually go live. Runway uses the broader context we have about your team's release cycles and timing at different stages to match emailed updates to the right releases, and to understand release status accordingly. The first piece of user-facing functionality that builds on top of this is a new Slack notification that goes out as soon as each release is actually live, and we plan to tie more features to this in future.
Making sense of all the work thatâs shipping â or expected to ship â with each release can be a daunting task. There are tickets to comb through, commits and PRs to check on, product owners and code owners to track down. Runwayâs Feature Readiness view already helps teams by creating a unified view across all these important pieces of the puzzle, but we heard from teams that they wanted more options for slicing and dicing this view to get at exactly the info they need.
Weâve added new functionality to the Feature Readiness view to help everyone on your team get exactly the view theyâre looking for. To allow you to quickly find a specific work item in Feature Readiness, weâve added search. You can drill into fields across both tickets and code, searching within commit messages, PR descriptions, and much more. There are also new filters available on Feature Readiness: for PR label or milestone, for ticket label or fix version, and one that will hide any unsquashed commits, showing only merged PRs or direct commits.
To allow you to build your preferred view on Feature Readiness and then keep it, we added persistence of filters and sort so that you can navigate away and then return exactly where you left off.
If youâre a Runway power user â or perhaps just someone who prefers to move across apps with just their keyboard â Runwayâs new Quick Actions Menu allows you to do just that. Quickly switch across apps, releases, or navigate to specific settings for your app by invoking the Quick Action Menu, which surfaces shortcuts to many of the most important pages within Runway. Enter command + K/ctrl + K from anywhere in Runway to invoke the Quick Action Menu and use it to supercharge how you navigate across pages.
One of the powerful ways in which Runway provides greater visibility into the release process across the entire team is with its rich and detailed timeline for each and every release, with timeline events broken out into (and accessible from) the most relevant release step within which they occurred. Timeline events can be an invaluable resource in many scenarios, like for example, during a post-mortem if youâre looking to track down specific actions involved or understand a sequence of events. And now itâs even easier to leverage Runwayâs release timeline to zoom into specific events with search, which is now available on the timeline across all the places it appears.
Runwayâs ability to handle artifacts produced as part of build runs is just a subset of the broader functionality that comes with our CI integrations. But itâs an important one for certain artifact automations on the mobile release management side (artifact upload, attachment to releases in version control, etc.), and an especially important one for Build Distro. Weâve expanded our support for artifact handling to cover many more of the CI integrations we already offer. Azure Pipelines, Jenkins, Xcode Cloud, and Buildkite are the latest integrations that are now supported for Build Distro and artifact automations.
In case you missed it, last week we announced a big new feature: Fixes. Itâs designed to help teams better manage their release diffs, offering a safer and more consistent way to get late-arriving changes into a release if needed. Fixes applies real guardrails that allow you to track, review, and approve any late additions, and automates away the busywork and context-switching required to actually get changes pulled in.
For some background on the launch and detail on how Fixes works, you can read more on the Runway blog!
If your app is available in more than a single language, youâre likely familiar with the extra work and headaches that the translation process can add to every release. You need to keep careful watch across all your localizable strings to ensure new copy is fully translated and that the translated strings made it safely into the release diff. The translation process adds (yet another) asynchronous element to release cycles, since translations are often sent out and finalized as other release prep continues in parallel. And thereâs uncertainty around situations in which the team might be okay proceeding with certain strings untranslated, versus those where key untranslated strings are showstoppers.
Now, you can integrate your teamâs translation and localization tooling in Runway, and weâll help you avoid mistakes and save time when it comes time to prepare app copy for release.
Runway surfaces all the localizable strings in your project and computes readiness relative to each release, so you can see at a glance which strings are fully ready to go â uploaded, translated, pulled back into the codebase (and onto your release branch, where applicable) â and which are still pending. Extra context on pending strings helps your team identify whatâs actually needed to get things wrapped up. Perhaps translations are actually complete but the translated strings have yet to be pulled down into the release, or perhaps certain late-arriving strings are still waiting for translation. To complete the picture and further help your team identify translation showstoppers, localizable string keys added or updated in the context of a given release are highlighted.
You can trigger a source file upload or export translations back to the codebase right from Runway when needed â or, save your team the steady drip of manual work and context-switching and let Runway automate the process of keeping translations synced and updated in your project. With the new âSync localizable string translationsâ automation enabled, Runway watches your release diff for any new or updated strings and will automatically upload source files for translation when needed, then pull translations back down to your release when ready. If your team prefers to merge all translations into your working branch first, thereâs another new automation that can watch your working branch for updated strings and automatically pull them over into the active release.
Currently available for Crowdin, with Localize, Lokalise, Smartling, and others to follow.
Most of you are probably already familiar with the release pilot rotation in Runway, which allows you to set up a list of team members that weâll iterate through to automatically assign as pilots (aka captains, drivers, etc.) on each release. You can manage your rotation within Runway, reordering and swapping in one-off subs as needed, and pilots have a special role to play with targeted reminders and action items that make it easier for folks to rotate into the role.
But we know that teams often use specific tools for scheduling rotations more broadly within their org, like PagerDuty, Opsgenie, or even Google Calendar. In true Runway fashion, we want to ensure you get the best of both worlds by offering an integration point for these specialized tools that Runway can tie into and extend from. Now, you can now connect your scheduling tool of choice and Runway will manage your release pilot rotation accordingly, automatically assigning pilots to releases based on a given on-call schedule, swapping folks when coverage changes, and re-assigning pilots if a release rolls over into another team memberâs shift. Reminders and alerts can be sent along the way so there are no surprises or gaps in coverage.
Currently available for PagerDuty, with Opsgenie, Google Calendar, and others to follow.
âAt Runway, weâre always looking for more ways to keep your team out of App Store Connect and Play Console. Theyâre not the friendliest of platforms and are two of the worst offenders when it comes to context-switching. You should already be able to do most if not all of what you need to do in the stores release to release from within Runway, manually or automated. But we do field feedback from teams wanting the ability to update even more of their store presence in Runway, and so weâre continuing to add more store-related functionality to the platform. Our latest additions include handling for preview videos, allowing you to view, edit, and upload new videos for both Android and iOS. On the metadata front, you can now edit promotional text, subtitle, and app name alongside the other fields Runway already surfaces. As always, Runwayâs user roles and scoped access can give your marketing and product folks an easy and safe way to interact with these items.
Runwayâs regression testing integrations allow your team to connect the test case management tooling your QA folks might be using (TestRail, Xray) to surface live status of test runs alongside each release. This already helps streamline a critical part of the release process by opening up what is typically a black box and removing the need for constant checking-in back and forth between engineering, product, and QA as final build validation is worked on.
Our new âCreate regression test runsâ automation goes a step further to save time thatâs wasted manually managing regression testing processes. Before, for each new release, QA folks would need to manually create a new test run in your teamâs test case management tool, copying over the necessary test plans, sticking to any particular naming conventions, etc. Now Runway can handle all of this for you, ensuring thereâs a new test run created and ready to go by the time QA hops in to begin regression testing each and every release.
If youâre part of an iOS team, chances are youâve had to deal with the massive headache that is wrangling device registration and managing provisioning profiles. Or, maybe you have some heroes on your platform team who spend way too much of their time dealing with all of this busywork for you and the rest of your team. Whatever the case, you can now hand off all this hassle to Runway: weâll keep your teamâs devices updated in the Apple Developer portal as folks come and go, and automatically generate and re-generate relevant provisioning profiles along the way.
It all starts with a seamless flow that makes it dead simple to collect new device identifiers from your team â no more fumbling around for those long IDs that no one knows how to find. With just a couple of taps, you can install a web clip on new devices to automatically collect the device identifier and send it over to Runway (plus, if youâre using Build Distro, the web clip also gives the device instant access to your teamâs build buckets). Â
Runway will automatically register new devices in the Apple Developer portal and disable devices when folks leave your team, freeing you from needing to stay on top of that constant cleanup. Each and every time your list of registered devices changes, Runway takes care of updating the necessary provisioning profiles to ensure new builds are installable by all the right team members.
When you identify a critical issue in production and need to get a hotfix going, time is of the essence. At the same time, the rush to get a fix in and out the door often leads to silly mistakes. So, weâve added a new automation to Runwayâs hotfix flow to both speed things up and make things less error-prone. In addition to existing options to automatically cut a branch from your last release tag and immediately bump version on that branch, you can now also select all the necessary fixes from your development branch, and Runway will cherry-pick them over into the hotfix â all in a single step.
Slack user groups are a good way to get the right comms in front of the right teams and roles within your org, but they take work to manage and keep up to date. Now, Runway can take that work off your plate. When you enable Runwayâs new âSync Slack groupsâ automation, youâll specify a mapping of roles (e.g. engineers, PMs, QA, etc.) to the Slack user groups you might already use â or want to use â for those different folks on your team, and weâll take it from there. First, Runway auto-creates any Slack groups that donât yet exist, then continuously ensures all groups are kept up to date by automatically adding or removing users for each as folks join, change roles, or leave your team.
Once you have your roles-to-groups mapping defined, and even if you choose not to enable the syncing automation, Runway can use the mapping to @mention the appropriate groups whenever needed â for example, if you have assigned a checklist or approval item to a specific role, or if you add a role to a specific Runway notification.Â
Every team has that post-release ritual where someone has to open up a bunch of browser tabs and chase other folks down for various pieces of release context, then copy-paste it all together and get that summary in front of a wider audience within the org. Of course, the Runway platform itself is one good substitute for this tedious exercise, giving everyone self-serve access to the complete picture release to release. But Runway now also helps you easily distribute release info outside the platform, to the constellation of interested folks who arenât as close to the process or to mobile in general, by automatically generating release summaries and optionally sending those out via email after each release. You can customize these release summaries to suit your teamâs needs, with a range of dynamic tokens that Runway will populate based on actual data from the release.Â
Oftentimes teams need to get artifacts to multiple different places as they advance through different stages of internal distribution. For example, you might start distributing feature builds through Build Distro, then advance to a wider audience via TestFlight or Play Console testing tracks. To help with this process, weâve taken the artifact upload automation that already existed on the release management side and brought it over to Build Distro as well. You can enable the upload automation on a per-bucket basis and configure the specific destination where artifacts are sent onwards to. Automatic retries safeguard against intermittent errors during this often-flaky part of the process.
Runwayâs existing trigger workflow automation makes it easy to generate new builds as needed, whenever there are new changes to build, based on a given Build Distro bucketâs rules. But there are certain flavors of builds, typically those off of busy shared branches, which need a more measured approach. Think nightlies or other shared builds off of your teamâs main development branch. A new option on the automatic trigger bucket automation allows you to change its behavior so that it runs on some recurring cadence you define â hourly, daily, every N hours â instead of on every diff.
Building on our functionality that lets you render certain release steps as non-blocking in the context of your overall release workflow in Runway, weâve added more ways to further customize release steps. First, for non-blocking steps, you can now choose to hide those steps completely from release timelines if theyâre not at all relevant for your team. And, you can configure non-blocking steps per release type, allowing you to adjust your teamâs workflow for normal releases vs hotfixes.
Many teams have already streamlined and shored-up their pipelines by handing the build upload step over to Runway: we take care of grabbing the right artifacts and ensuring they get uploaded, with automatic retries if needed. But on the Android side, with the way Play Console works, that just lands builds into âgeneral storageâ, with teams needing to move builds onwards to an initial track from there. Certain existing Runway automations help with track promotion later in the release cycle, but we can now also help with initial track release creation. A new option on Runwayâs build upload automation lets you specify a default initial track for uploads, so weâll make sure new builds make their way out of storage and onto that track.
â
If your company is on the larger side, chances are youâre managing your organizationâs teams, users and their permissions from a centralized directory like Okta, Microsoft Active Directory or similar. But up until now, for user and team management within Runway, admins have had to do things manually. Now, with directory sync support, Runway integrates with your companyâs directory provider to take care of everything automatically for you: from assigning new users the correct roles and app membership, to updating users who change teams along the way, to deactivating users who leave your org.
Plus, you might remember that Runway also supports automatically syncing users and roles to App Store Connect and Play Console â so, combined with this new directory sync functionality, you can now automate user management all the way from your orgâs centralized directory to the stores (something not available out-of-the-box from Apple or Google).
For many teams, getting a complete picture of release health means pulling from multiple different data sources, especially when it comes to things like performance monitoring and product analytics. To allow for this, you can now simultaneously connect as many of these kinds of observability and analytics tools as needed (Amplitude plus Datadog, say). Runway will pull signals from all of these sources into your Rollouts view and youâll be able to configure health metrics attached to each and every one.
Additionally, weâve added support for a number of new metric types: average, median, and 90th/95th/99th percentiles of property values are all now supported for most of our Observability & Analytics integrations, with even more metric types coming soon. Â
Depending when you first kick off a phased rollout, it could be that a big step-change in user adoption will happen on a day â or at a time â when your team might not be quite as ready to quickly address any issues that arise. Now, you can avoid this by configuring blackout days and times during which Runway will temporarily pause your rollouts. For example, you can prevent rollouts incrementing over the weekend, or outside of normal business hours.
One of the big goals with Build Distro is to make it dead easy to distribute and organize all the different build flavors your team cares about. Now, thereâs an even more seamless way to handle personal and team-specific feature builds, with user filters on build buckets that automatically direct these sorts of early dev builds to the right place.
How it works is quite simple. If youâve set up your bucket with a PR rule, only builds generated from PRs that were authored by the specified users will be pulled into the bucket. If youâve set up your bucket with a branch rule (not pictured), only builds generated from commits that were authored by the specified users will be pulled into the bucket. Specify single users to create personalized buckets for WIP dev builds, or groups of users to create dedicated build buckets for different feature teams across your org.
Typically, teams are stuck between a rock and a hard place when it comes to getting the variety of build types they care about distributed: either trigger each different flavor manually all the time, or else set up and maintain a delicate web of conditional triggers in CI. With the addition of automatic workflow triggers on Build Distro buckets, you now get hands-free distribution for every different build flavor, with all the correct configurations taken care of for you out-of-the-box.
For example, consider a build bucket one of your feature teams has set up. It might have a PR rule configured that grabs builds associated with PRs against your main branch, authored by members of that team. Now, if you flip on the bucketâs build trigger automation, Runway will automatically generate new builds for that team whenever their members open or push to PRs against main (and then route those builds to the right place as usual).
Letting your testers know whatâs new in a given build is a distribution best practice, but itâs also a tedious, manual step that quickly becomes error-prone and a drain on the team. Now, Runway can automatically generate and populate tester notes for you, based on the diff since the previous build of the same flavor. In addition to listing commit info, diff items link out to associated PRs and project management tickets, so your team gets the complete picture and things are easy to digest for technical and non-technical teammates alike.