<commit_before>package model

import (
	"fmt"
	"strings"
	"time"

	"github.com/mjibson/goon"
	"golang.org/x/net/context"
	"google.golang.org/appengine/datastore"
)

const (
	BlogPostCodeTamai   = "tamai-sd"
	BlogPostCodeMomota  = "momota-sd"
	BlogPostCodeAriyasu = "ariyasu-sd"
	BlogPostCodeSasaki  = "sasaki-sd"
	BlogPostCodeTakagi  = "takagi-sd"
)

type LatestBlogPost struct {
	ID        string `datastore:"-" goon:"id"`
	Code      string
	URL       string
	CreatedAt time.Time
	UpdatedAt time.Time
}

func NewLatestBlogPost(code string, url string) *LatestBlogPost {
	return &LatestBlogPost{
		ID:   fmt.Sprintf("%s-%s", code, url),
		Code: code,
		URL:  url,
	}
}<commit_msg>Unique ID for each blog<commit_after>package model

import (
	"fmt"
	"strings"
	"time"

	"github.com/mjibson/goon"
	"golang.org/x/net/context"
	"google.golang.org/appengine/datastore"
)

const (
	BlogPostCodeTamai   = "tamai-sd"
	BlogPostCodeMomota  = "momota-sd"
	BlogPostCodeAriyasu = "ariyasu-sd"
	BlogPostCodeSasaki  = "sasaki-sd"
	BlogPostCodeTakagi  = "takagi-sd"
)

type LatestBlogPost struct {
	ID        string `datastore:"-" goon:"id"`
	Code      string
	URL       string
	CreatedAt time.Time
	UpdatedAt time.Time
}

func NewLatestBlogPost(code string, url string) *LatestBlogPost {
	return &LatestBlogPost{
		ID:   code,
		Code: code,
		URL:  url,
	}
}
{'fraction_non_alphanumeric': 0.12360387192851824, 'fraction_numerical': 0.0, 'mean_word_length': 3.7829181494661923, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6066111', 'n_tokens_mistral': 599, 'n_tokens_neox': 547, 'n_words': 104}