diff --git a/transcripts/share-apis/contribution-diffs/contribution-diff.json b/transcripts/share-apis/contribution-diffs/contribution-diff.json index f02f232..a9b23df 100644 --- a/transcripts/share-apis/contribution-diffs/contribution-diff.json +++ b/transcripts/share-apis/contribution-diffs/contribution-diff.json @@ -453,7 +453,7 @@ "newRefHash": "#1f9oqkrlfnkhnmfh29c9oiuvlbbta0j29nsmu4me709ber295aji2nuv2t8q7e6pfeji1ge1scdblb4qbg3uvlmcbuiesc8q88e0bqo", "oldRef": "diff-start", "oldRefHash": "#odojlhcu8m0iaajcjug8mkd84rqib8s273rf46rnn281trtqu56mgkogp2o71ajsmvpvamqo4lvotqj5kare46ci5t26m4oe2vpqjvo", - "project": "@transcripts/namespace-diff" + "project": "@transcripts/contribution-diff" }, "status": [ { diff --git a/transcripts/share-apis/contribution-diffs/create-contribution-for-diff.json b/transcripts/share-apis/contribution-diffs/create-contribution-for-diff.json index 23bdd1f..457aec1 100644 --- a/transcripts/share-apis/contribution-diffs/create-contribution-for-diff.json +++ b/transcripts/share-apis/contribution-diffs/create-contribution-for-diff.json @@ -11,7 +11,7 @@ "id": "C-", "numComments": 0, "number": 1, - "projectRef": "@transcripts/namespace-diff", + "projectRef": "@transcripts/contribution-diff", "sourceBranchRef": "diff-end", "status": "in_review", "targetBranchRef": "diff-start", diff --git a/transcripts/share-apis/contribution-diffs/namespace-diff.json b/transcripts/share-apis/contribution-diffs/namespace-diff.json index f02f232..a9b23df 100644 --- a/transcripts/share-apis/contribution-diffs/namespace-diff.json +++ b/transcripts/share-apis/contribution-diffs/namespace-diff.json @@ -453,7 +453,7 @@ "newRefHash": "#1f9oqkrlfnkhnmfh29c9oiuvlbbta0j29nsmu4me709ber295aji2nuv2t8q7e6pfeji1ge1scdblb4qbg3uvlmcbuiesc8q88e0bqo", "oldRef": "diff-start", "oldRefHash": "#odojlhcu8m0iaajcjug8mkd84rqib8s273rf46rnn281trtqu56mgkogp2o71ajsmvpvamqo4lvotqj5kare46ci5t26m4oe2vpqjvo", - "project": "@transcripts/namespace-diff" + "project": "@transcripts/contribution-diff" }, "status": [ { diff --git a/transcripts/share-apis/contribution-diffs/prelude.md b/transcripts/share-apis/contribution-diffs/prelude.md index fbea165..dbf3843 100644 --- a/transcripts/share-apis/contribution-diffs/prelude.md +++ b/transcripts/share-apis/contribution-diffs/prelude.md @@ -1,7 +1,7 @@ ```ucm:hide -.> project.create-empty namespace-diff -namespace-diff/main> branch /diff-start -namespace-diff/diff-start> builtins.mergeio +.> project.create-empty contribution-diff +contribution-diff/main> branch /diff-start +contribution-diff/diff-start> builtins.mergeio ``` ```unison @@ -48,22 +48,22 @@ deleteMeAfterFork = "delete me after fork" ``` ```ucm:hide -namespace-diff/diff-start> add -namespace-diff/diff-start> push @transcripts/namespace-diff/diff-start -namespace-diff/diff-start> branch /diff-end -namespace-diff/diff-end> alias.term termAliasMe aTermAlias -namespace-diff/diff-end> delete.term termDeleteMe -namespace-diff/diff-end> alias.type DataAliasMe ATypeAlias -namespace-diff/diff-end> delete.type DataDeleteMe -namespace-diff/diff-end> delete.namespace DataDeleteMe -namespace-diff/diff-end> alias.type AbilityAliasMe AbilityAlias -namespace-diff/diff-end> delete.type AbilityDeleteMe -namespace-diff/diff-end> delete.namespace AbilityDeleteMe -namespace-diff/diff-end> delete.term a.definition.at.path1 -namespace-diff/diff-end> delete.term a.definition.at.path2 -namespace-diff/diff-end> delete.term a.different.path -namespace-diff/diff-end> delete.term aDoc -namespace-diff/diff-end> delete.term aTest +contribution-diff/diff-start> add +contribution-diff/diff-start> push @transcripts/contribution-diff/diff-start +contribution-diff/diff-start> branch /diff-end +contribution-diff/diff-end> alias.term termAliasMe aTermAlias +contribution-diff/diff-end> delete.term termDeleteMe +contribution-diff/diff-end> alias.type DataAliasMe ATypeAlias +contribution-diff/diff-end> delete.type DataDeleteMe +contribution-diff/diff-end> delete.namespace DataDeleteMe +contribution-diff/diff-end> alias.type AbilityAliasMe AbilityAlias +contribution-diff/diff-end> delete.type AbilityDeleteMe +contribution-diff/diff-end> delete.namespace AbilityDeleteMe +contribution-diff/diff-end> delete.term a.definition.at.path1 +contribution-diff/diff-end> delete.term a.definition.at.path2 +contribution-diff/diff-end> delete.term a.different.path +contribution-diff/diff-end> delete.term aDoc +contribution-diff/diff-end> delete.term aTest ``` ```unison @@ -83,13 +83,13 @@ ability AbilityNew where ``` ```ucm -namespace-diff/diff-end> update -namespace-diff/diff-end> rename.term termRenameMe renamedTerm -namespace-diff/diff-end> rename.type DataRenameMe RenamedType -namespace-diff/diff-end> rename.namespace DataRenameMe RenamedType -namespace-diff/diff-end> rename.type AbilityRenameMe AbilityRenamed -namespace-diff/diff-end> rename.namespace AbilityRenameMe AbilityRenamed -namespace-diff/diff-end> push @transcripts/namespace-diff/diff-end +contribution-diff/diff-end> update +contribution-diff/diff-end> rename.term termRenameMe renamedTerm +contribution-diff/diff-end> rename.type DataRenameMe RenamedType +contribution-diff/diff-end> rename.namespace DataRenameMe RenamedType +contribution-diff/diff-end> rename.type AbilityRenameMe AbilityRenamed +contribution-diff/diff-end> rename.namespace AbilityRenameMe AbilityRenamed +contribution-diff/diff-end> push @transcripts/contribution-diff/diff-end ``` Now we go back to the `diff-start` branch and make some more commits to test that @@ -103,7 +103,7 @@ termUpdateMe = "conflicted update" ``` ```ucm -namespace-diff/diff-start> update -namespace-diff/diff-start> delete.term deleteMeAfterFork -namespace-diff/diff-start> push @transcripts/namespace-diff/diff-start +contribution-diff/diff-start> update +contribution-diff/diff-start> delete.term deleteMeAfterFork +contribution-diff/diff-start> push @transcripts/contribution-diff/diff-start ``` diff --git a/transcripts/share-apis/contribution-diffs/run.zsh b/transcripts/share-apis/contribution-diffs/run.zsh index b80be31..a9db960 100755 --- a/transcripts/share-apis/contribution-diffs/run.zsh +++ b/transcripts/share-apis/contribution-diffs/run.zsh @@ -6,9 +6,9 @@ source "../../transcript_helpers.sh" transcript_ucm transcript prelude.md -fetch "$transcript_user" GET namespace-diff '/users/transcripts/projects/namespace-diff/diff/namespaces?old=diff-start&new=diff-end' +fetch "$transcript_user" GET namespace-diff '/users/transcripts/projects/contribution-diff/diff/namespaces?old=diff-start&new=diff-end' -fetch "$transcript_user" POST create-contribution-for-diff '/users/transcripts/projects/namespace-diff/contributions' '{ +fetch "$transcript_user" POST create-contribution-for-diff '/users/transcripts/projects/contribution-diff/contributions' '{ "title": "My contribution", "description": "My description", "status": "in_review", @@ -16,4 +16,10 @@ fetch "$transcript_user" POST create-contribution-for-diff '/users/transcripts/p "targetBranchRef": "diff-start" }' -fetch "$transcript_user" GET contribution-diff '/users/transcripts/projects/namespace-diff/contributions/1/diff' +fetch "$transcript_user" GET contribution-diff '/users/transcripts/projects/contribution-diff/contributions/1/diff' + +# Diffing a user-defined term against a user-defined term. +fetch "$transcript_user" GET standard-term-diff '/users/transcripts/projects/contribution-diff/contributions/1/diff/terms?oldTerm=termUpdateMe&newTerm=termUpdateMe' + +# Diffing a user-defined type against a user-defined type. +fetch "$transcript_user" GET standard-type-diff '/users/transcripts/projects/contribution-diff/contributions/1/diff/types?oldType=DataUpdateMe&newType=DataUpdateMe' diff --git a/transcripts/share-apis/contribution-diffs/standard-term-diff.json b/transcripts/share-apis/contribution-diffs/standard-term-diff.json new file mode 100644 index 0000000..3bf4128 --- /dev/null +++ b/transcripts/share-apis/contribution-diffs/standard-term-diff.json @@ -0,0 +1,222 @@ +{ + "body": { + "diff": { + "contents": [ + { + "diffTag": "both", + "elements": [ + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "TypeAscriptionColon" + }, + "segment": " :" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "##Text", + "tag": "TypeReference" + }, + "segment": "Text" + }, + { + "annotation": null, + "segment": "\n" + }, + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "BindingEquals" + }, + "segment": " =" + }, + { + "annotation": null, + "segment": " " + } + ] + }, + { + "annotation": { + "tag": "TextLiteral" + }, + "diffTag": "segmentChange", + "fromSegment": "\"original\"", + "toSegment": "\"updated\"" + } + ], + "tag": "UserObject" + }, + "diffKind": "diff", + "newBranchRef": "diff-end", + "newTerm": { + "bestTermName": "termUpdateMe", + "defnTermTag": "Plain", + "signature": [ + { + "annotation": { + "contents": "##Text", + "tag": "TypeReference" + }, + "segment": "Text" + } + ], + "termDefinition": { + "contents": [ + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "TypeAscriptionColon" + }, + "segment": " :" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "##Text", + "tag": "TypeReference" + }, + "segment": "Text" + }, + { + "annotation": null, + "segment": "\n" + }, + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "BindingEquals" + }, + "segment": " =" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "tag": "TextLiteral" + }, + "segment": "\"updated\"" + } + ], + "tag": "UserObject" + }, + "termDocs": [], + "termNames": [ + "termUpdateMe" + ] + }, + "oldBranchRef": "diff-start", + "oldTerm": { + "bestTermName": "termUpdateMe", + "defnTermTag": "Plain", + "signature": [ + { + "annotation": { + "contents": "##Text", + "tag": "TypeReference" + }, + "segment": "Text" + } + ], + "termDefinition": { + "contents": [ + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "TypeAscriptionColon" + }, + "segment": " :" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "##Text", + "tag": "TypeReference" + }, + "segment": "Text" + }, + { + "annotation": null, + "segment": "\n" + }, + { + "annotation": { + "contents": "termUpdateMe", + "tag": "HashQualifier" + }, + "segment": "termUpdateMe" + }, + { + "annotation": { + "tag": "BindingEquals" + }, + "segment": " =" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "tag": "TextLiteral" + }, + "segment": "\"original\"" + } + ], + "tag": "UserObject" + }, + "termDocs": [], + "termNames": [ + "termUpdateMe" + ] + }, + "project": "@transcripts/contribution-diff" + }, + "status": [ + { + "status_code": 200 + } + ] +} diff --git a/transcripts/share-apis/contribution-diffs/standard-type-diff.json b/transcripts/share-apis/contribution-diffs/standard-type-diff.json new file mode 100644 index 0000000..a313a98 --- /dev/null +++ b/transcripts/share-apis/contribution-diffs/standard-type-diff.json @@ -0,0 +1,178 @@ +{ + "body": { + "diff": { + "contents": [ + { + "diffTag": "both", + "elements": [ + { + "annotation": { + "tag": "DataTypeKeyword" + }, + "segment": "type" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "DataUpdateMe", + "tag": "HashQualifier" + }, + "segment": "DataUpdateMe" + }, + { + "annotation": { + "tag": "DelimiterChar" + }, + "segment": " = " + } + ] + }, + { + "diffTag": "old", + "elements": [ + { + "annotation": { + "contents": "#fhc8jn2bhvfdnfr89dv2jf7tekuesna7gvje4ck6lfheh9rb184q4ddd29vm9mvfm6u1a98kpgditn8vb09durtel67rpof1c62535o#d0", + "tag": "TermReference" + }, + "segment": "D" + } + ] + }, + { + "diffTag": "new", + "elements": [ + { + "annotation": { + "contents": "#qnblpurkqedrq0kae95ep7b8f6uh5b7igefp21r1nvl22agjoup5e7aunua4q8ku8mb532fh3lst4mj3m2bsb3kluchc3fuau5cllr0#d0", + "tag": "TermReference" + }, + "segment": "D2" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "##Nat", + "tag": "TypeReference" + }, + "segment": "Nat" + } + ] + } + ], + "tag": "UserObject" + }, + "diffKind": "diff", + "newBranchRef": "diff-end", + "newType": { + "bestTypeName": "DataUpdateMe", + "defnTypeTag": "Data", + "typeDefinition": { + "contents": [ + { + "annotation": { + "tag": "DataTypeKeyword" + }, + "segment": "type" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "DataUpdateMe", + "tag": "HashQualifier" + }, + "segment": "DataUpdateMe" + }, + { + "annotation": { + "tag": "DelimiterChar" + }, + "segment": " = " + }, + { + "annotation": { + "contents": "#qnblpurkqedrq0kae95ep7b8f6uh5b7igefp21r1nvl22agjoup5e7aunua4q8ku8mb532fh3lst4mj3m2bsb3kluchc3fuau5cllr0#d0", + "tag": "TermReference" + }, + "segment": "D2" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "##Nat", + "tag": "TypeReference" + }, + "segment": "Nat" + } + ], + "tag": "UserObject" + }, + "typeDocs": [], + "typeNames": [ + "DataUpdateMe" + ] + }, + "oldBranchRef": "diff-start", + "oldType": { + "bestTypeName": "DataUpdateMe", + "defnTypeTag": "Data", + "typeDefinition": { + "contents": [ + { + "annotation": { + "tag": "DataTypeKeyword" + }, + "segment": "type" + }, + { + "annotation": null, + "segment": " " + }, + { + "annotation": { + "contents": "DataUpdateMe", + "tag": "HashQualifier" + }, + "segment": "DataUpdateMe" + }, + { + "annotation": { + "tag": "DelimiterChar" + }, + "segment": " = " + }, + { + "annotation": { + "contents": "#fhc8jn2bhvfdnfr89dv2jf7tekuesna7gvje4ck6lfheh9rb184q4ddd29vm9mvfm6u1a98kpgditn8vb09durtel67rpof1c62535o#d0", + "tag": "TermReference" + }, + "segment": "D" + } + ], + "tag": "UserObject" + }, + "typeDocs": [], + "typeNames": [ + "DataUpdateMe" + ] + }, + "project": "@transcripts/contribution-diff" + }, + "status": [ + { + "status_code": 200 + } + ] +}