Add MyGists::Search::Terms to encapsulate getting possible tag and profile search terms
Refactor tags cache to be a Hash instead of an Array, so tag slugs can be retrieved by unique names
Refactor SearchController to use MyGists::Search::Terms to get search terms instead of directly getting the terms from the cache
Add .profile? helper methods to distinguish if the current request is a profile request
Define ApplicationHelper.profile? and return false
Define ProfileHelper.profile? and Profile::TagsHelper.profile? and return true
Remove unused ActsAsTaggableOn::Tag scopes
.names
.public_names
Add ActsAsTaggableOn::Tag.not_in scope to get all tags not in a list of ids
Add MyGists::Cache role for each dataset which needs to be cached
Each dataset has a a class name matching a convention class
Classes are called from MyGists::Cache.source according to convention
Add MyGists::Cache::Profiles and MyGists::Cache::Tags as members of MyGists::Cache role
Add MyGists::Cache::Tags::Meta as a data container for Tags cache entries
The Tags data structure is a Hash with keys of downcased Tag names and values of MyGists::Cache::Tags::Meta instances
Revert tags cache data structure to a plain old Hash since Rails.cache can not load MyGists::Cache::Tags::Meta
Refactor specs by moving data setup into factories and stubbing/mocking cache reads
Add MyGists::Cache::Tags::Helper.slug_from_hashtag to get a tags slug from the cache by a hashtag
In GistDecorator, refactor #hightlight_description into #linkify_description
Description hashtags are linked to their global tag path or profile tag path
Only linkify a hashtag when a slug is found for the hashtag
Now that gist descriptions do not link back to GitHub, remove CSS declaration which forced linked gist profile names to be black, so profile names are more distinguishable as links
Update views to not manually link a gist description
Add ApplicationHelper.hashtag_to_slug to memoize found slugs and use MyGists::Cache::Tags::Helper.slug_from_hashtag
When searching for gists and none are found, note that no "public" gists were found
Update Help content to use new definition list markup and add GitHub icon info
[ci skip]