diff --git a/blogposts/announcing-sourcegraph-3.4.md b/blogposts/announcing-sourcegraph-3.4.md
index fd437dc2eee..5a9a98a41b1 100644
--- a/blogposts/announcing-sourcegraph-3.4.md
+++ b/blogposts/announcing-sourcegraph-3.4.md
@@ -1,5 +1,5 @@
---
-title: Sourcegraph 3.4
+title: 'Sourcegraph 3.4: Performance and configuration enhancements for managing 30,000+ repositories'
author: Ryan Blunden and Christina Forney
publishDate: 2019-05-20T10:00-07:00
tags: [
@@ -7,66 +7,181 @@ tags: [
]
slug: sourcegraph-3.4
heroImage: /sourcegraph-mark.png
-published: false
+published: true
---
-
-We're excited to announce Sourcegraph 3.4. Sourcegraph is a code search and navigation tool (self-hosted, open-source, and cross-repository). Read on for the details, and thanks to our customers and community for reporting issues and providing feedback. Youโre helping to make each Sourcegraph release the best one yet!
+If your code host's hostname is long, such as `githubenterprise.mycompany.internal`, then your Sourcegraph URLs will be long (e.g. `https://sourcegraph.mycompany.internal/githubenterprise.mycompany.internal/myteam/myproject`). To shorten these URLs, you can use the [`repositoryPathPattern`](https://www.google.com/search?ie=UTF-8&q=site%3Adocs.sourcegraph.com+%22repositoryPathPattern%22) external service configuration property.
-
+Sourcegraph 3.4 fixes a problem where the browser extension didn't work if you used `repositoryPathPattern`. If you had been holding off on using the browser extension due to this problem, it will now work.
-[**๐ ๏ธ New Feature**](#new-feature)
-One line summary of this new feature
+## Code host sync improvements for AWS CodeCommit and Gitolite
-[**๐ Changelog**](#changelog)
-Every detail that changed in this release
+Sourcegraph 3.3 saw the introduction of [config-based repository selection](https://about.sourcegraph.com/blog/sourcegraph-3.3#config-based-repository-selection) (for [GitHub](https://docs.sourcegraph.com/admin/external_service/github), [GitLab](https://docs.sourcegraph.com/admin/external_service/gitlab) and [Bitbucket Server](https://docs.sourcegraph.com/admin/external_service/bitbucket_server)). Now, Sourcegraph 3.4 brings the same model to [AWS CodeCommit](al_service/aws_codecommit), and [Gitolite](https://docs.sourcegraph.com/admin/external_service/gitolite).
-[**๐๏ธ Thank you**](#thank-you)
-Sourcegraph couldnโt be what it is without the community.
+As a result, AWS CodeCommit and Gitolite get a new `exclude` field, plus AWS CodeCommit now supports the `gitCredentials` option for using a static username and password tied to an IAM user.
+
+[See the changelog](#340-changelog) for more details
+
+## Optional loading of configuration from the file system or Kubernetes ConfigMap
+
+Some teams for whom Sourcegraph is a critical piece of infrastructure want to check their Sourcegraph configuration into version control.
+
+For these teams, [site configuration](https://docs.sourcegraph.com/admin/config/site_config), [critical configuration](https://docs.sourcegraph.com/admin/config/critical_config), and [external services configuration](https://docs.sourcegraph.com/admin/external_service) can be loaded from the file system or Kubernetes ConfigMap if the following environment variables are set on the server:
+
+```bash
+CRITICAL_CONFIG_FILE=critical.json
+SITE_CONFIG_FILE=site.json
+EXTSVC_CONFIG_FILE=extsvc.json
+```
+For [cluster (Kubernetes) deployments](https://github.com/sourcegraph/deploy-sourcegraph), an admin is responsible for creating the ConfigMap resources and setting these environment variables to refer to the ConfigMaps' files on disk.
+
+## Configurable upgrade notifications for patch releases
+
+
+
+
+
View on Vimeo
+
-## New feature
+Sourcegraph detects when a new version is available and shows a dismissible notification to site admins. In Sourcegraph 3.4, site admins can now control if they want to see patch release notifications by adding the following to settings:
-New feature section. Good if you have screenshots or diagrams and even better if you have a screencast.
+```json
+{
+ ...
+ โalerts.showPatchUpdates": false,
+ ...
+}
+```
-**Deploy or upgrade:** [Local](https://docs.sourcegraph.com/#quickstart-guide) | [AWS](https://github.com/sourcegraph/deploy-sourcegraph-aws) | [DigitalOcean](https://marketplace.digitalocean.com/apps/sourcegraph?action=deploy&refcode=48dfb3ccb51c) | [Kubernetes cluster](https://github.com/sourcegraph/deploy-sourcegraph)
+Upgrade notifications are always shown for major (e.g. 4.0) or minor (e.g. 3.x) releases.
-**Insiders:** Want to try pre-release development builds? Change the Docker image tag to `sourcegraph:insiders`.
+## Higher information density in search results
-## 3.4 Changelog
+We're tightening up the Sourcegraph UI to remove unnecessary whitespace so you can see more information without scrolling. This release ships with a cleaner search results interface.
-
+File search results (before and after):
-The [changelog for this and previous releases](https://github.com/sourcegraph/sourcegraph/blob/master/CHANGELOG.md#3.4) is available on GitHub.
+
-## Thank you
+Text search results (before and after):
-Thank you to the many people who contributed to Sourcegraph since the last release!
+
+
+## 3.4 changelog
+
+### Added
+
+- When `repositoryPathPattern` is configured, paths from the full long name will redirect to the configured name. Extensions will function with the configured name. `repositoryPathPattern` allows administrators to configure "nice names". For example `sourcegraph.example.com/github.com/foo/bar` can configured to be `sourcegraph.example.com/gh/foo/bar` with `"repositoryPathPattern": "gh/{nameWithOwner}"`. (#462)
+- Admins can now turn off site alerts for patch version release updates using the `alerts.showPatchUpdates` setting. Alerts will still be shown for major and minor version updates.
+- The new `gitolite.exclude` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/external_service/gitolite#configuration) allows you to exclude specific repositories by their Gitolite name so that they won't be mirrored. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list.
+- The new `aws_codecommit.exclude` setting in [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/external_service/aws_codecommit#configuration) allows you to exclude specific repositories by their AWS name or ID so that they won't be synced. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list.
+- Added a new, _required_ `aws_codecommit.gitCredentials` setting to the [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/external_service/aws_codecommit#configuration). These Git credentials are required to create long-lived authenticated clone URLs for AWS CodeCommit repositories. For more information about Git credentials, see the AWS CodeCommit documentation: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#git-credentials-code-commit. For detailed instructions on how to create the credentials in IAM, see this page: https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html
+- Added support for specifying a URL formatted `gitolite.host` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/external_service/gitolite#configuration) (e.g. `ssh://git@gitolite.example.org:2222/`), in addition to the already supported SCP like format (e.g `git@gitolite.example.org`)
+- Added support for overriding critical, site, and external service configurations via files. Specify `CRITICAL_CONFIG_FILE=critical.json`, `SITE_CONFIG_FILE=site.json`, and/or `EXTSVC_CONFIG_FILE=extsvc.json` on the `frontend` container to do this.
-
+### Changed
-## Deploy or upgrade
+- Kinds of external services in use are now included in [server pings](https://docs.sourcegraph.com/admin/pings).
+- Bitbucket Server: An actual Bitbucket icon is now used for the jump-to-bitbucket action on repository pages instead of the previously generic icon.
+- Default config for GitHub, GitHub Enterprise, GitLab, Bitbucket Server, and AWS Code Commit external services has been revised to make it easier for first time admins.
-[Local](https://docs.sourcegraph.com/#quickstart-guide) | [AWS](https://github.com/sourcegraph/deploy-sourcegraph-aws) | [DigitalOcean](https://marketplace.digitalocean.com/apps/sourcegraph?action=deploy&refcode=48dfb3ccb51c) | [Kubernetes cluster](https://github.com/sourcegraph/deploy-sourcegraph)
+### Removed
-Upgrading from 2.x or 3.0? [See the migration guide](https://docs.sourcegraph.com/admin/migration/3_0)
+- Fields related to Repository enablement have been deprecated. Mutations are now NOOPs, and for repositories returned the value is always true for Enabled. The enabled field and mutations will be removed in 3.6. Mutations: `setRepositoryEnabled`, `setAllRepositoriesEnabled`, `updateAllMirrorRepositories`, `deleteRepository`. Query parameters: `repositories.enabled`, `repositories.disabled`. Field: `Repository.enabled`.
+- Global saved searches are now deprecated. Any existing global saved searches have been assigned to the Sourcegraph instance's first site admin's user account.
+- The `search.savedQueries` configuration option is now deprecated. Existing entries remain in user and org settings for backward compatibility, but are unused as saved searches are now stored in the database.
+
+### Fixed
+
+- Fixed a bug where submitting a saved query without selecting the location would fail for non-site admins (#3628).
+- Fixed settings editors only having a few pixels height.
+- Fixed a bug where browser extension and code review integration usage stats were not being captured on the site-admin Usage Stats page.
+- Fixed an issue where in some rare cases PostgreSQL starting up slowly could incorrectly trigger a panic in the `frontend` service.
+- Fixed an issue where the management console password would incorrectly reset to a new secure one after a user account was created.
+- Fixed a bug where gitserver would leak file descriptors when performing common operations.
+- Substantially improved the performance of updating Bitbucket Server external service configurations on instances with thousands of repositories, going from e.g. several minutes to about a minute for ~20k repositories (#4037).
+- Fully resolved the search performance regression in v3.2.0, restoring performance of search back to the same levels it was before changes made in v3.2.0.
+- Fix a bug where using a repo search filter with the prefix `github.com` only searched for repos whose name starts with `github.com`, even though no `^` was specified in the search filter. (#4103)
+
+The [changelog for this and previous releases](https://github.com/sourcegraph/sourcegraph/blob/master/CHANGELOG.md#3.4) is available on GitHub.
+
+## Thank you
+
+Thank you to the many people who contributed to Sourcegraph since the last release!
+
+- [@akshetpandey](https://github.com/akshetpandey)
+- [@IntelDan](https://github.com/IntelDan)
+- [@wxio](https://github.com/wxio)
+- [@b-j-p](https://github.com/b-j-p)
+- [@sriniCA](https://github.com/sriniCA)
+- [@JP3BGY](https://github.com/JP3BGY)
+- [@MaxLeiter](https://github.com/MaxLeiter)
+- [@jlangston](https://github.com/jlangston)
+- [@siddharthab](https://github.com/siddharthab)
+- [@aisbaa](https://github.com/aisbaa)
+- [@yevbar](https://github.com/yevbar)
+- [@anishhegde](https://github.com/anishhegde)
+- [@calvn](https://github.com/calvn)
+- [@kevinchen94](https://github.com/kevinchen94)
+- [@chadasapp](https://github.com/chadasapp)
+- [@thewarpaint](https://github.com/thewarpaint)
+- [@djuarezg](https://github.com/djuarezg)
+- [@GotenXiao](https://github.com/GotenXiao)
+- [@sslavian812](https://github.com/sslavian812)
+- [@craffert0](https://github.com/craffert0)
+- [@keremgocen](https://github.com/keremgocen)
+- [@jamidwyer](https://github.com/jamidwyer)
+- [@sickyoon](https://github.com/sickyoon)
+- [@carloslfu](https://github.com/carloslfu)
+- [@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg)
+- [@sfllaw](https://github.com/sfllaw)
+- [@thinktopdown](https://github.com/thinktopdown)
+- [@kofoworola](https://github.com/kofoworola)
+- [@postables](https://github.com/postables)
+- [@jacks0n](https://github.com/jacks0n)
+- [@markus-wa](https://github.com/markus-wa)
+- [@abeyerpath](https://github.com/abeyerpath)
---
+**Deploy or upgrade:** [Local](https://docs.sourcegraph.com/#quickstart-guide) | [AWS](https://github.com/sourcegraph/deploy-sourcegraph-aws) | [DigitalOcean](https://marketplace.digitalocean.com/apps/sourcegraph?action=deploy&refcode=48dfb3ccb51c) | [Kubernetes cluster](https://github.com/sourcegraph/deploy-sourcegraph)
+
From the entire Sourcegraph team ([@srcgraph](https://twitter.com/srcgraph)), happy coding!
diff --git a/website/static/blog/3.4-density-1.png b/website/static/blog/3.4-density-1.png
new file mode 100644
index 00000000000..e444de4a9b8
Binary files /dev/null and b/website/static/blog/3.4-density-1.png differ
diff --git a/website/static/blog/3.4-density-2.png b/website/static/blog/3.4-density-2.png
new file mode 100644
index 00000000000..cc40fb17758
Binary files /dev/null and b/website/static/blog/3.4-density-2.png differ