Compiling

This commit is contained in:
VinaiRachakonda
2020-11-25 14:36:14 -05:00
parent 0718406bd7
commit 8cb8a4d782
12 changed files with 58 additions and 41 deletions

View File

@@ -123,7 +123,7 @@ func (cmd CommitCmd) Exec(ctx context.Context, commandStr string, args []string,
}
}
err = actions.CommitStaged(ctx, dEnv.DoltDB, nil, dEnv.RepoStateWriter(), actions.CommitStagedProps{
err = actions.CommitStaged(ctx, dEnv.DoltDB, dEnv.RepoStateReader(), dEnv.RepoStateWriter(), actions.CommitStagedProps{
Message: msg,
Date: t,
AllowEmpty: apr.Contains(allowEmptyFlag),
@@ -252,14 +252,14 @@ func buildInitalCommitMsg(ctx context.Context, dEnv *env.DoltEnv) string {
color.NoColor = true
currBranch := dEnv.RepoState.CWBHeadRef()
stagedTblDiffs, notStagedTblDiffs, _ := diff.GetStagedUnstagedTableDeltas(ctx, dEnv)
stagedTblDiffs, notStagedTblDiffs, _ := diff.GetStagedUnstagedTableDeltas(ctx, dEnv.DoltDB, dEnv.RepoStateReader())
workingTblsInConflict, _, _, err := merge.GetTablesInConflict(ctx, dEnv)
if err != nil {
workingTblsInConflict = []string{}
}
stagedDocDiffs, notStagedDocDiffs, _ := diff.GetDocDiffs(ctx, dEnv)
stagedDocDiffs, notStagedDocDiffs, _ := diff.GetDocDiffs(ctx, dEnv.DoltDB, dEnv.RepoStateReader())
buf := bytes.NewBuffer([]byte{})
n := printStagedDiffs(buf, stagedTblDiffs, stagedDocDiffs, true)

View File

@@ -114,7 +114,7 @@ func (cmd InitCmd) Exec(ctx context.Context, commandStr string, args []string, d
t := time.Now()
if commitTimeStr, ok := apr.GetValue(dateParam); ok {
var err error
t, err = ParseDate(commitTimeStr)
t, err = parseDate(commitTimeStr)
if err != nil {
return HandleVErrAndExitCode(errhand.BuildDError("error: invalid date").AddCause(err).Build(), usage)

View File

@@ -249,7 +249,7 @@ func execNoFFMerge(ctx context.Context, apr *argparser.ArgParseResults, dEnv *en
t := doltdb.CommitNowFunc()
if commitTimeStr, ok := apr.GetValue(dateParam); ok {
var err error
t, err = ParseDate(commitTimeStr)
t, err = parseDate(commitTimeStr)
if err != nil {
return errhand.BuildDError("error: invalid date").AddCause(err).Build()
@@ -262,7 +262,7 @@ func execNoFFMerge(ctx context.Context, apr *argparser.ArgParseResults, dEnv *en
return errhand.BuildDError("error: committing").AddCause(err).Build()
}
err = actions.CommitStaged(ctx, dEnv, actions.CommitStagedProps{
err = actions.CommitStaged(ctx, dEnv.DoltDB, dEnv.RepoStateReader(), dEnv.RepoStateWriter(), actions.CommitStagedProps{
Message: msg,
Date: t,
AllowEmpty: apr.Contains(allowEmptyFlag),

View File

@@ -273,7 +273,7 @@ func printNotStaged(ctx context.Context, dEnv *env.DoltEnv, staged *doltdb.RootV
return
}
notStagedDocs, err := diff.NewDocDiffs(ctx, dEnv, working, nil, nil)
notStagedDocs, err := diff.NewDocDiffs(ctx, working, nil, nil)
if err != nil {
return
}

View File

@@ -70,7 +70,7 @@ func (cmd StatusCmd) Exec(ctx context.Context, commandStr string, args []string,
help, _ := cli.HelpAndUsagePrinters(cli.GetCommandDocumentation(commandStr, statusDocs, ap))
cli.ParseArgs(ap, args, help)
staged, notStaged, err := diff.GetStagedUnstagedTableDeltas(ctx, dEnv)
staged, notStaged, err := diff.GetStagedUnstagedTableDeltas(ctx, dEnv.DoltDB, dEnv.RepoStateReader())
if err != nil {
cli.PrintErrln(toStatusVErr(err).Verbose())
@@ -83,7 +83,7 @@ func (cmd StatusCmd) Exec(ctx context.Context, commandStr string, args []string,
return 1
}
stagedDocDiffs, notStagedDocDiffs, err := diff.GetDocDiffs(ctx, dEnv)
stagedDocDiffs, notStagedDocDiffs, err := diff.GetDocDiffs(ctx, dEnv.DoltDB, dEnv.RepoStateReader())
if err != nil {
cli.PrintErrln(toStatusVErr(err).Verbose())

View File

@@ -137,7 +137,7 @@ func (nd *DocDiffs) Len() int {
// GetDocDiffs retrieves staged and unstaged DocDiffs.
func GetDocDiffs(ctx context.Context, ddb *doltdb.DoltDB, reader env.RepoStateReader) (*DocDiffs, *DocDiffs, error) {
docDetails, err := dEnv.GetAllValidDocDetails() // TODO: Doc diffs
docDetails, err := reader.GetAllValidDocDetails() // TODO: Doc diffs
if err != nil {
return nil, nil, err
}
@@ -162,7 +162,7 @@ func GetDocDiffs(ctx context.Context, ddb *doltdb.DoltDB, reader env.RepoStateRe
return nil, nil, err
}
stagedDocDiffs, err := NewDocDiffs(ctx, headRoot, stagedRoot, nil)
stagedDocDiffs, err := NewDocDiffs(ctx, headRoot, stagedRoot, docDetails)
if err != nil {
return nil, nil, err
}

View File

@@ -249,7 +249,7 @@ func nullSafeRowEquality(left, right sql.Row, sch sql.Schema) (bool, error) {
}
func makeSqlEngine(ctx context.Context, dEnv *env.DoltEnv, root *doltdb.RootValue) (*sql.Context, *sqle.Engine, error) {
doltSqlDB := dsqle.NewDatabase("db", dEnv.DoltDB, dEnv.RepoState, dEnv.RepoStateWriter())
doltSqlDB := dsqle.NewDatabase("db", dEnv.DoltDB, dEnv.RepoStateReader(), dEnv.RepoStateWriter())
sqlCtx := sql.NewContext(ctx,
sql.WithSession(dsqle.DefaultDoltSession()),

View File

@@ -59,7 +59,7 @@ func SaveDocsFromRoot(ctx context.Context, root *doltdb.RootValue, dEnv *env.Dol
// SaveTrackedDocs writes the docs from the targetRoot to the filesystem. The working root is used to identify untracked docs, which are left unchanged.
func SaveTrackedDocs(ctx context.Context, dEnv *env.DoltEnv, workRoot, targetRoot *doltdb.RootValue, localDocs env.Docs) error {
docDiffs, err := diff.NewDocDiffs(ctx, dEnv, workRoot, nil, localDocs)
docDiffs, err := diff.NewDocDiffs(ctx, workRoot, nil, localDocs)
if err != nil {
return err
}
@@ -143,7 +143,7 @@ func getUpdatedWorkingAndStagedWithDocs(ctx context.Context, dEnv *env.DoltEnv,
// GetUnstagedDocs retrieves the unstaged docs (docs from the filesystem).
func GetUnstagedDocs(ctx context.Context, dEnv *env.DoltEnv) (env.Docs, error) {
_, unstagedDocDiffs, err := diff.GetDocDiffs(ctx, dEnv)
_, unstagedDocDiffs, err := diff.GetDocDiffs(ctx, dEnv.DoltDB, dEnv.RepoStateReader())
if err != nil {
return nil, err
}

View File

@@ -367,32 +367,43 @@ func (dEnv *DoltEnv) UpdateWorkingRoot(ctx context.Context, newRoot *doltdb.Root
return dEnv.RepoStateWriter().SetWorkingHash(ctx, h)
}
//type repoStateReader struct {
// dEnv *DoltEnv
//}
//
////
////func (r* repoStateReader) CWBHeadRef() ref.DoltRef {
//// return r.dEnv.RepoState.CWBHeadRef()
////}
////
////func (r* repoStateReader) CWBHeadSpec() *doltdb.CommitSpec {
//// return r.dEnv.RepoState.CWBHeadSpec()
////}
////
////func (r* repoStateReader) WorkingHash() hash.Hash {
//// return r.dEnv.RepoState.WorkingHash()
////}
////
////func (r* repoStateReader) StagedHash() hash.Hash {
//// return d.Env.
////}
////
////func (r* repoStateReader) IsMergeActive() bool {
////
////}
type repoStateReader struct {
dEnv *DoltEnv
}
func (r* repoStateReader) CWBHeadRef() ref.DoltRef {
return r.dEnv.RepoState.CWBHeadRef()
}
func (r* repoStateReader) CWBHeadSpec() *doltdb.CommitSpec {
return r.dEnv.RepoState.CWBHeadSpec()
}
func (r* repoStateReader) WorkingHash() hash.Hash {
return r.dEnv.RepoState.WorkingHash()
}
func (r* repoStateReader) StagedHash() hash.Hash {
return hash.Parse(r.dEnv.RepoState.Staged)
}
func (r* repoStateReader) IsMergeActive() bool {
return r.dEnv.RepoState.Merge != nil
}
func (r* repoStateReader) GetMergeCommit() string {
return r.dEnv.RepoState.Merge.Commit
}
func (r* repoStateReader) GetAllValidDocDetails() ([]doltdb.DocDetails, error) {
return r.dEnv.GetAllValidDocDetails()
}
func (dEnv *DoltEnv) RepoStateReader() RepoStateReader {
return &repoStateReader{dEnv}
}
type repoStateWriter struct {
dEnv *DoltEnv
}

View File

@@ -31,6 +31,7 @@ type RepoStateReader interface {
StagedHash() hash.Hash
IsMergeActive() bool
GetMergeCommit() string
GetAllValidDocDetails() ([]doltdb.DocDetails, error)
}
type RepoStateWriter interface {
@@ -182,6 +183,11 @@ func (rs* RepoState) GetMergeCommit() string {
return rs.Merge.Commit
}
// TODO: Refactor all of this out
func (rs* RepoState) GetAllValidDocDetails() ([]doltdb.DocDetails, error) {
return nil, nil
}
func HeadRoot(ctx context.Context, ddb *doltdb.DoltDB, reader RepoStateReader) (*doltdb.RootValue, error) {
commit, err := ddb.ResolveRef(ctx, reader.CWBHeadRef())

View File

@@ -756,5 +756,5 @@ func GetDocsInConflict(ctx context.Context, dEnv *env.DoltEnv) (*diff.DocDiffs,
return nil, err
}
return diff.NewDocDiffs(ctx, dEnv, workingRoot, nil, docDetails)
return diff.NewDocDiffs(ctx, workingRoot, nil, docDetails)
}

View File

@@ -32,7 +32,7 @@ import (
// Executes all the SQL non-select statements given in the string against the root value given and returns the updated
// root, or an error. Statements in the input string are split by `;\n`
func ExecuteSql(dEnv *env.DoltEnv, root *doltdb.RootValue, statements string) (*doltdb.RootValue, error) {
db := NewBatchedDatabase("dolt", dEnv.DoltDB, dEnv.RepoState, dEnv.RepoStateWriter())
db := NewBatchedDatabase("dolt", dEnv.DoltDB, dEnv.RepoStateReader(), dEnv.RepoStateWriter())
engine, ctx, err := NewTestEngine(context.Background(), db, root)
if err != nil {
@@ -124,7 +124,7 @@ func NewTestEngine(ctx context.Context, db Database, root *doltdb.RootValue) (*s
// Executes the select statement given and returns the resulting rows, or an error if one is encountered.
// This uses the index functionality, which is not ready for prime time. Use with caution.
func ExecuteSelect(dEnv *env.DoltEnv, ddb *doltdb.DoltDB, root *doltdb.RootValue, query string) ([]sql.Row, error) {
db := NewDatabase("dolt", ddb, dEnv.RepoState, dEnv.RepoStateWriter())
db := NewDatabase("dolt", ddb, dEnv.RepoStateReader(), dEnv.RepoStateWriter())
engine, ctx, err := NewTestEngine(context.Background(), db, root)
if err != nil {
return nil, err