[brlcad-commits] SF.net SVN: brlcad:[78291] brlcad/trunk/misc/repowork/repowork.cpp
Revision: 78291 http://sourceforge.net/p/brlcad/code/78291 Author: starseeker Date: 2021-02-20 02:29:43 + (Sat, 20 Feb 2021) Log Message: --- Don't trust any git output for the CVS era - only assign a branch if we have SVN info. Modified Paths: -- brlcad/trunk/misc/repowork/repowork.cpp Modified: brlcad/trunk/misc/repowork/repowork.cpp === --- brlcad/trunk/misc/repowork/repowork.cpp 2021-02-20 02:13:18 UTC (rev 78290) +++ brlcad/trunk/misc/repowork/repowork.cpp 2021-02-20 02:29:43 UTC (rev 78291) @@ -445,14 +445,11 @@ } } - if (revnum == 19673) { - std::cout << "revnum: " << revnum << "\n"; - } - if (cmatch && revnum > 0 && rev_bset[revnum].size()) { - std::regex cvsbranchline("^cvs:branch:.*"); + if (cmatch) { + std::regex cvsbranchline("^cvs:branch:.*"); bool sbmatch = std::regex_match(cline, cvsbranchline); if (sbmatch) { - if (!wcvsbranch) { + if (revnum > 0 && rev_bset[revnum].size() && !wcvsbranch) { std::set::iterator s_it; for (s_it = rev_bset[revnum].begin(); s_it != rev_bset[revnum].end(); s_it++) { std::string nbranchline = std::string("cvs:branch:") + *s_it; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78290] brlcad/trunk/misc/repowork/repowork.cpp
Revision: 78290 http://sourceforge.net/p/brlcad/code/78290 Author: starseeker Date: 2021-02-20 02:13:18 + (Sat, 20 Feb 2021) Log Message: --- Rough in an ability to update the cvs:branch tags based on SVN's info. Modified Paths: -- brlcad/trunk/misc/repowork/repowork.cpp Modified: brlcad/trunk/misc/repowork/repowork.cpp === --- brlcad/trunk/misc/repowork/repowork.cpp 2021-02-20 00:28:24 UTC (rev 78289) +++ brlcad/trunk/misc/repowork/repowork.cpp 2021-02-20 02:13:18 UTC (rev 78290) @@ -12,10 +12,27 @@ */ #include +#include +#include +#include #include "cxxopts.hpp" #include "repowork.h" + +// https://stackoverflow.com/a/5607650 +struct schars: std::ctype { +schars(): std::ctype(get_table()) {} +static std::ctype_base::mask const* get_table() { +static const std::ctype::mask *const_table= std::ctype::classic_table(); +static std::ctype::mask cmask[std::ctype::table_size]; +std::memcpy(cmask, const_table, std::ctype::table_size * sizeof(std::ctype::mask)); +cmask[';'] = std::ctype_base::space; +return [0]; +} +}; + + int git_parse_commitish(git_commitish , git_fi_data *s, std::string line) { @@ -130,7 +147,9 @@ } int -git_update_svnnotes(git_fi_data *s, std::string _rev_map, std::string _branch_map, std::string _list) +git_update_svnnotes(git_fi_data *s, + std::string _rev_map, std::string _branch_map, + std::string _list, std::string _branches) { if (!s->have_sha1s) { @@ -144,17 +163,6 @@ std::cerr << "Could not open svn_rev_map file: " << svn_rev_map << "\n"; exit(-1); } -std::ifstream infile_branches(svn_branch_map, std::ifstream::binary); -if (svn_branch_map.length() && !infile_branches.good()) { - std::cerr << "Could not open svn_branch_map file: " << svn_branch_map << "\n"; - exit(-1); -} -std::ifstream infile_tag_list(tag_list, std::ifstream::binary); -if (tag_list.length() && !infile_tag_list.good()) { - std::cerr << "Could not open tag_list file: " << tag_list << "\n"; - exit(-1); -} - std::map rmap; if (infile_revs.good()) { std::string line; @@ -181,7 +189,11 @@ infile_revs.close(); } - +std::ifstream infile_branches(svn_branch_map, std::ifstream::binary); +if (svn_branch_map.length() && !infile_branches.good()) { + std::cerr << "Could not open svn_branch_map file: " << svn_branch_map << "\n"; + exit(-1); +} std::map bmap; if (infile_branches.good()) { std::string line; @@ -207,6 +219,11 @@ infile_branches.close(); } +std::ifstream infile_tag_list(tag_list, std::ifstream::binary); +if (tag_list.length() && !infile_tag_list.good()) { + std::cerr << "Could not open tag_list file: " << tag_list << "\n"; + exit(-1); +} std::set tag_sha1s; if (infile_tag_list.good()) { std::string line; @@ -232,8 +249,52 @@ infile_tag_list.close(); } +std::ifstream infile_revs_branches(revs_branches, std::ifstream::binary); +if (revs_branches.length() && !infile_revs_branches.good()) { + std::cerr << "Could not open revs_branches file: " << revs_branches << "\n"; + exit(-1); +} +std::map> rev_bset; +if (infile_revs_branches.good()) { + std::string line; + while (std::getline(infile_revs_branches, line)) { + size_t spos = line.find_first_of(":"); + if (spos == std::string::npos) { + std::cerr << "Invalid sha1;branch map line!: " << line << "\n"; + exit(-1); + } + + std::string rev_str = line.substr(0, spos); + int rev = (rev_str.length()) ? std::stoi(rev_str) : -1; + if (rev < 0) continue; + std::string branches = line.substr(spos+1, std::string::npos); + + // If no branches, nothing to do + if (!branches.length()) { + continue; + } + + // Split into a vector, since there may be more than one branch + std::stringstream ss(branches); + std::ostringstream oss; + ss.imbue(std::locale(std::locale(), new schars())); + std::istream_iterator b_begin(ss); + std::istream_iterator b_end; + std::vector branches_array(b_begin, b_end); + std::copy(branches_array.begin(), branches_array.end(), std::ostream_iterator(oss, "\n")); + for (size_t i = 0; i < branches_array.size(); i++) { + rev_bset[rev].insert(branches_array[i]); + } + } + + std::cout << "Found " << rev_bset.size() << " revision->branch mappings\n"; + + infile_revs_branches.close(); +} + + // Iterate over the commits looking for note commits. If we find one, // find its associated blob with data,
[brlcad-commits] SF.net SVN: brlcad:[78289] brlcad/trunk/misc
Revision: 78289 http://sourceforge.net/p/brlcad/code/78289 Author: starseeker Date: 2021-02-20 00:28:24 + (Sat, 20 Feb 2021) Log Message: --- Grr. The CVS branch assignments based off of git rev-list --first-parent proved unreliable - Sean noted that we can check the CVS .v files to get explicit branch information, and it looks likethe SVN assignments were correct. I may be wrong, but it's looking like Git just conceptually does not retain this origin information at all. Stash the set of revs->branches, so we can fix the commit messages with repowork. Modified Paths: -- brlcad/trunk/misc/CMakeLists.txt Added Paths: --- brlcad/trunk/misc/repoconv/cvs_svn_branches.txt Modified: brlcad/trunk/misc/CMakeLists.txt === --- brlcad/trunk/misc/CMakeLists.txt2021-02-19 22:46:27 UTC (rev 78288) +++ brlcad/trunk/misc/CMakeLists.txt2021-02-20 00:28:24 UTC (rev 78289) @@ -208,6 +208,7 @@ repoconv/domap.sh repoconv/email_fixups.txt repoconv/cvs_repaired/sphflake.pix,v + repoconv/cvs_svn_branches.txt repoconv/gitattributes repoconv/github_ci_actions.yml repoconv/gitignore.tar.gz Added: brlcad/trunk/misc/repoconv/cvs_svn_branches.txt === --- brlcad/trunk/misc/repoconv/cvs_svn_branches.txt (rev 0) +++ brlcad/trunk/misc/repoconv/cvs_svn_branches.txt 2021-02-20 00:28:24 UTC (rev 78289) @@ -0,0 +1,29783 @@ +2:trunk +3:trunk +4:unlabeled-1.2.1 +5:trunk +6:trunk +7:trunk +8:trunk +9:unlabeled-1.2.1 +10:trunk +11:trunk +13:trunk +14:trunk +15:trunk +16:trunk +17:trunk +18:trunk +19:trunk +20:trunk +21:trunk +22:trunk +23:trunk +24:trunk +25:trunk +26:trunk +27:trunk +28:trunk +29:trunk +30:trunk +31:trunk +32:trunk +33:trunk +34:trunk +35:trunk +36:trunk +37:trunk +38:trunk +39:trunk +40:trunk +41:trunk +42:trunk +43:trunk +44:trunk +45:trunk +46:trunk +47:trunk +48:trunk +49:trunk +50:trunk +51:trunk +52:trunk +53:trunk +54:trunk +55:trunk +56:trunk +57:trunk +58:trunk +59:trunk +60:trunk +61:trunk +62:trunk +63:trunk +64:trunk +65:trunk +66:trunk +67:trunk +68:trunk +69:trunk +70:trunk +71:trunk +72:trunk +73:trunk +74:trunk +75:trunk +76:trunk +77:trunk +78:trunk +79:trunk +80:trunk +81:trunk +82:trunk +83:trunk +84:trunk +85:trunk +86:trunk +87:trunk +88:trunk +89:trunk +90:trunk +91:trunk +92:trunk +93:trunk +94:trunk +95:trunk +96:trunk +97:trunk +98:trunk +99:trunk +100:trunk +101:trunk +102:trunk +103:trunk +104:trunk +105:trunk +106:trunk +107:trunk +108:trunk +109:trunk +110:trunk +111:trunk +112:trunk +113:trunk +114:trunk +115:trunk +116:trunk +117:trunk +118:trunk +119:trunk +120:trunk +121:trunk +122:trunk +123:trunk +124:trunk +125:trunk +126:trunk +127:trunk +128:trunk +129:trunk +130:trunk +131:trunk +132:trunk +133:trunk +134:trunk +135:trunk +136:trunk +137:trunk +138:trunk +139:trunk +140:trunk +141:trunk +142:trunk +143:trunk +144:trunk +145:trunk +146:trunk +147:trunk +148:trunk +149:trunk +150:trunk +151:trunk +152:trunk +153:trunk +154:trunk +155:trunk +156:trunk +157:trunk +158:trunk +159:trunk +160:trunk +161:trunk +162:trunk +163:trunk +164:trunk +165:trunk +166:trunk +167:trunk +168:trunk +169:trunk +170:trunk +171:trunk +172:trunk +173:trunk +174:trunk +175:trunk +176:trunk +177:trunk +178:trunk +179:trunk +180:trunk +181:trunk +182:trunk +183:trunk +184:trunk +185:trunk +186:trunk +187:trunk +188:trunk +189:trunk +190:trunk +191:trunk +192:trunk +193:trunk +194:trunk +195:trunk +196:trunk +197:trunk +198:trunk +199:trunk +200:trunk +201:trunk +202:trunk +203:trunk +204:trunk +205:trunk +206:trunk +207:trunk +208:trunk +209:trunk +210:trunk +211:trunk +212:trunk +213:trunk +214:trunk +215:trunk +216:trunk +217:trunk +218:trunk +219:trunk +220:trunk +221:trunk +222:trunk +223:trunk +224:trunk +225:trunk +226:trunk +227:trunk +228:trunk +229:trunk +230:trunk +231:trunk +232:trunk +233:trunk +234:trunk +235:trunk +236:trunk +237:trunk +238:trunk +239:trunk +240:trunk +241:trunk +242:trunk +243:trunk +244:trunk +245:trunk +246:trunk +247:trunk +248:trunk +249:trunk +250:trunk +251:trunk +252:trunk +253:trunk +254:trunk +255:trunk +256:trunk +257:trunk +258:trunk +259:trunk +260:trunk +261:trunk +262:trunk +263:trunk +264:trunk +265:trunk +266:trunk +267:trunk +268:trunk +269:trunk +270:trunk +271:trunk +272:trunk +273:trunk +274:trunk +275:trunk +276:trunk +277:trunk +278:trunk +279:trunk +280:trunk +281:trunk +282:trunk +283:trunk +284:trunk +285:trunk +286:trunk +287:trunk +288:trunk +289:trunk +290:trunk +291:trunk +292:trunk +293:trunk +294:trunk +295:trunk +296:trunk +297:trunk +298:trunk +299:trunk +300:trunk +301:trunk +302:trunk +303:trunk +304:trunk +305:trunk +306:trunk +307:trunk +308:trunk +309:trunk +310:trunk +311:trunk +312:trunk +313:trunk +314:trunk +315:trunk +316:trunk +317:trunk +318:trunk +319:trunk +320:trunk +321:trunk +322:trunk
[brlcad-commits] SF.net SVN: brlcad:[78288] brlcad/trunk/misc/repoconv/REPO.NOTES
Revision: 78288 http://sourceforge.net/p/brlcad/code/78288 Author: brlcad Date: 2021-02-19 22:46:27 + (Fri, 19 Feb 2021) Log Message: --- stash some of the ad hoc scripts being used to independently V the conversion for posterity Added Paths: --- brlcad/trunk/misc/repoconv/REPO.NOTES Added: brlcad/trunk/misc/repoconv/REPO.NOTES === --- brlcad/trunk/misc/repoconv/REPO.NOTES (rev 0) +++ brlcad/trunk/misc/repoconv/REPO.NOTES 2021-02-19 22:46:27 UTC (rev 78288) @@ -0,0 +1,115 @@ +GET MIRROR OF SF +rsync --verbose --recursive --links --perms --times --update --compress svn.code.sf.net::p/brlcad/code svn.sfmirror + +NUMBER OF COMMITS ON TRUNK AND IN GIT +svn log ~/brlcad.trunk > svn.log +agua:brlcad_conv11 morrison$ grep '^r[0-9]' svn.log | awk '{print $1}' | sed 's/^r//g' | sort -n > svn.commits +wc 68500 68500 399948 +grep '^r[0-9]* |' svn.log | awk '{print $1}' | sed 's/^r//g' | sort -n > svn.commits2 +wc 68487 68487 399870 + +git --follow . > git.follow.log + +git log --all > git.log +agua:brlcad_conv11 morrison$ grep -A2 svn:revision git.log | grep -v account | perl -0777 -p -e 's/\n[cs]v[sn]:branch:/ branch /g' | perl -0777 -p -e 's/--\n//g' | grep trunk | awk '{print $1}' | cut -f3 -d: | sort -n > git.commits +wc + 67967 67967 397262 +wc of all git commits is ~69291 (smoe extra commits from cvs redux without svn) + +GET LIST OF DIFFERENT COMMITS +diff -u svn.commits git.commits | grep '^-[0-9]' | sed 's/-//g' > commits.missing +# 720 commits missing +diff -u svn.commits2 git.commits | grep '^-[0-9]' | sed 's/-//g' > commits.missing2 +536 missing +499 missing per tags (thus 37 mistagged) + +svn says +#331 empty log message (possibly merges via git show, retrying with git diff) +#796 Initial revision + +GETTING EMPTY LOG MESSAGES +grep -C4 "empty log message" git.log | tr '\n' ';' | perl -0777 -p -e 's/Author:/\nAuthor:/g' | grep branch:trunk|grep -v ':revision:' |less + +GET ALL SVN LOG MESSAGES FOR MISSING COMMITS +cat commits.missing | while read i ; do echo $i ; svn log -r$i ~/brlcad.trunk ; done >> commits.missing.logs +cat commits.missing2 | while read i ; do if ! test -f diffs.svn.sans/$i.log ; then svn log -c$i ~/brlcad.trunk | tee diffs.svn.sans/$i.log ; fi ; done +for i in diffs.svn.sans/*.log ; do echo $i ; if ! test -f ${i}.sans.log ; then tail +4 $i | perl -0777 -pe 's/[-[:space:]]*//g' > ${i}.sans.log ; fi ; done +cat commits.missing2 | while read i ; do echo $i ; if ! test -f diffs.svn.sans/$i.files ; then svn diff --ignore-properties -c$i ~/brlcad.trunk | grep '^[-+][-+][-+] ' | grep -v "nonexistent" | awk '{print $1, $2}' | sed 's/\/Users\/morrison\/brlcad.trunk\///g' | sort > diffs.svn.sans/$i.files ; fi ; done + +GET ALL GIT LOG MESSAGES +grep "^commit " git.log | awk '{print $2}' | while read i ; do echo -n "$i " ; if ! test -f diffs.git.sans/${i}.log ; then git log --format="%B" ${i}^! | tee diffs.git.sans/${i}.log ; fi ; done +for i in diffs.git.sans/*.log ; do echo $i ; if ! test -f ${i}.sans.log ; then cat $i | grep -v '^cvs:' | grep -v '^svn:' | perl -0777 -pe 's/[-[:space:]]*//g' > ${i}.sans.log ; fi ; done +grep "^commit " git.log | awk '{print $2}' | while read i ; do echo -n "$i " ; if ! test -f diffs.git.sans/${i}.files ; then git show ${i}^! | grep '^[-+][-+][-+] ' | grep -v '/dev/null' | sed 's/--- a\//--- /g' | sed 's/+++ b\//+++ /g' | sort > diffs.git.sans/${i}.files ; fi ; done + +CATEGORIZE THE TYPES OF COMMITS THAT COULDN'T BE FOUND +cat commits.missing | while read i ; do echo -n "$i ... " ; log="`svn log -r$i ~/brlcad.trunk`" ; if test "x`echo $log | grep \"New repository\"`" = "x" -a "x`echo $log | grep \"Initial revision\"`" = "x" ; then if test "x`echo $log | grep \"empty log message\"`" = "x" ; then echo "kept" ; echo "$log" >> commits.missing.logs.kept ; else echo "empty" ; echo "$log" >> commits.missing.logs.empty ; fi ; else echo "skipped" ; fi ; done > commits.missing.transcript +cat commits.missing2 | while read i ; do echo -n "$i ... " ; log="`cat diffs.svn.sans/$i.log`" ; if test "x`echo $log | grep \"New repository\"`" = "x" -a "x`echo $log | grep \"Initial revision\"`" = "x" ; then if test "x`echo $log | grep \"empty log message\"`" = "x" ; then echo "MISSING" ; echo "$log" >> commits.missing.logs.kept2 ; else echo "EMPTY" ; echo "$log" >> commits.missing.logs.empty2 ; fi ; else echo "SKIP" ; fi ; done | tee commits.missing.transcript2 + +CAPTURE SVN MD5 SUMS OF DIFF, LOG, AND FILES +cat commits.missing | while read i ; do echo -n "$i " ; log="`svn diff --ignore-properties -c$i ~/brlcad.trunk | grep \"^[-+][^-+]\"`" ; echo -n "`echo \"$log\"|wc | awk '{print $1}'` " ; echo "$log" > diffs/${i}.diff ; echo "$log" | md5 ; done | tee svn.md5.missing +cat commits.missing2 | while read i ; do echo $i log `md5 diffs.svn.sans/$i.log.sans.log` ; echo $i files `md5
[brlcad-commits] SF.net SVN: brlcad:[78287] brlcad/trunk/misc/repoconv/NOTES
Revision: 78287 http://sourceforge.net/p/brlcad/code/78287 Author: starseeker Date: 2021-02-19 21:49:47 + (Fri, 19 Feb 2021) Log Message: --- Note link describing how to track all remote branches. Modified Paths: -- brlcad/trunk/misc/repoconv/NOTES Modified: brlcad/trunk/misc/repoconv/NOTES === --- brlcad/trunk/misc/repoconv/NOTES2021-02-19 21:31:26 UTC (rev 78286) +++ brlcad/trunk/misc/repoconv/NOTES2021-02-19 21:49:47 UTC (rev 78287) @@ -54,7 +54,12 @@ Possibly useful notes for OSX/Windows users: https://stackoverflow.com/questions/8904327/case-sensitivity-in-git + +Once we're on github, this is handy given the number of branches we have in the main repo: +https://stackoverflow.com/questions/379081/track-all-remote-git-branches-as-local-branches + + # .gitconfig helpers ### Here is a simple way to use notes with svn revision numbers to checkout a specific revision: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78286] brlcad/trunk/src/isst
Revision: 78286 http://sourceforge.net/p/brlcad/code/78286 Author: starseeker Date: 2021-02-19 21:31:26 + (Fri, 19 Feb 2021) Log Message: --- Set up mouse move event handler for OpenGL widget. Not doing anything with the info yet, jus making sure we can capture it. Modified Paths: -- brlcad/trunk/src/isst/isstgl.cpp brlcad/trunk/src/isst/isstgl.h Modified: brlcad/trunk/src/isst/isstgl.cpp === --- brlcad/trunk/src/isst/isstgl.cpp2021-02-19 21:23:19 UTC (rev 78285) +++ brlcad/trunk/src/isst/isstgl.cpp2021-02-19 21:31:26 UTC (rev 78286) @@ -174,6 +174,19 @@ } +void isstGL::mouseMoveEvent(QMouseEvent *e) { + +bu_log("(%d,%d)\n", e->x(), e->y()); +if (x_prev > -INT_MAX && y_prev > -INT_MAX) { + bu_log("Delta: (%d,%d)\n", e->x() - x_prev, e->y() - y_prev); +} + +x_prev = e->x(); +y_prev = e->y(); + +QOpenGLWidget::mouseMoveEvent(e); +} + void isstGL::save_image() { QImage image = this->grabFramebuffer(); image.save("file.png"); Modified: brlcad/trunk/src/isst/isstgl.h === --- brlcad/trunk/src/isst/isstgl.h 2021-02-19 21:23:19 UTC (rev 78285) +++ brlcad/trunk/src/isst/isstgl.h 2021-02-19 21:31:26 UTC (rev 78286) @@ -62,6 +62,7 @@ void paintGL() override; void keyPressEvent(QKeyEvent *k) override; + void mouseMoveEvent(QMouseEvent *e) override; private: struct camera_tile_s tile; @@ -72,6 +73,9 @@ int resolution_factor = 0; int rescaled = 0; int do_render = 1; + + int x_prev = -INT_MAX; + int y_prev = -INT_MAX; }; #endif /* ISSTGL_H */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78285] brlcad/trunk/misc/CMakeLists.txt
Revision: 78285 http://sourceforge.net/p/brlcad/code/78285 Author: starseeker Date: 2021-02-19 21:23:19 + (Fri, 19 Feb 2021) Log Message: --- Fix filename Modified Paths: -- brlcad/trunk/misc/CMakeLists.txt Modified: brlcad/trunk/misc/CMakeLists.txt === --- brlcad/trunk/misc/CMakeLists.txt2021-02-19 19:27:27 UTC (rev 78284) +++ brlcad/trunk/misc/CMakeLists.txt2021-02-19 21:23:19 UTC (rev 78285) @@ -252,7 +252,7 @@ repoconv/svnfexport_svn.cxx repoconv/sync_commit.sh repoconv/sync_commit_trunk.sh - repoconv/tagcommits.txt + repoconv/tag_commits.txt repoconv/tagmap.sh repoconv/terra.dsp repoconv/verify/cvs.sh This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78284] brlcad/trunk/misc/repoconv/svn_rev_updates.txt
Revision: 78284 http://sourceforge.net/p/brlcad/code/78284 Author: starseeker Date: 2021-02-19 19:27:27 + (Fri, 19 Feb 2021) Log Message: --- More SVN assignments for multi-branch commits. Some of these are approximate, as the commits were broken out differently by cvs2svn and cvs-fast-export. A few of the later cases in the 222** - 223** range are different enough that it's probably not worth sorting through. Modified Paths: -- brlcad/trunk/misc/repoconv/svn_rev_updates.txt Modified: brlcad/trunk/misc/repoconv/svn_rev_updates.txt === --- brlcad/trunk/misc/repoconv/svn_rev_updates.txt 2021-02-19 18:41:48 UTC (rev 78283) +++ brlcad/trunk/misc/repoconv/svn_rev_updates.txt 2021-02-19 19:27:27 UTC (rev 78284) @@ -25,6 +25,7 @@ b11b50a4a522208ece0ca8aa09f493e68184c065;19450 d9306778a6714c198a0b4385f57a1b7afbd4c3fc;19463 9db0bcb131b8805c060ef2b35f30433d5f2d16ee;19471 +561e8385b4f2bd30665991d6179e6702fb601cf1;19548 51a2d8caf35c0512efda85b11bf9a2c858ff0e77;19552 24d99686c39438784e16e393feeb2c0d4572820a;19601 4fe093009cdde828d4f8acc6e8fb3cf84ef2623b;19613 @@ -50,8 +51,42 @@ 67cde13525c50e995c07c1dfcf0ba1eb447e67b3;19815 5ce7326cdfa96d00541253cf082735a2bc396b77;19835 6949221976767b94b98694b73d2b35a12c66933f;19838 +d8f84df3a2b0de48401d529eb3c5085ea3a63bc8;19851 +2552fce0d09dd84d4b3c96542acb0f9c3316be33;19861 +6bf673cb4d9a1494556650cd943e1bddca7dfa99;19876 +896fa995db4a67110daa901d1cf33f32d066cd37;19890 +0f2c208901f1be40e179ab5f82e354d91d857c30;19891 +564dc02af097baef086abe1046bd29e269bbf873;19893 +f2483efbe86075184c3e532e9928541e880e0bc1;19910 +12ea2759e9743c0020493128a7eb9f343abf656e;19925 +eb925b5801eba11d4b67afaf7f1bd8ab9a07df53;19926 +50d6fbda97b40024a2ac763ae6c3bdf62d93f253;19927 +63f0fdecc0fe75623fa5efe468f7541330437bcd;19932 +e177f07fa374f84d049a7763614186cc09187b6a;19956 +820ca4d216618ba4057ce0061aab3a2572a5a296;19969 +09cc3dd0f4dbf6c626dd858c038c2e2ad2876cc3;19982 +2fa6bddfaf2190ee0b454973e38673459288041f;19985 +2ad9dd4a7471cfcc3ff930c4127ac61ff5b48ec0;19995 +92d120ecc173c85dee010614ad6ad9907f587686;20167 +f683ed21aeafdadf06fda89827835c80afcea0e9;20168 +4745265d80c06da63c482fc5207cec3c8153efe8;22003 +40c52130fee96105b533aa8b53d00e39563a3fbe;22213 +660bd1343a7af4f6ab020613c77fd7462a644940;22267 +7f9f41a46b1ed8736f5239274606fcf767e02b33;22269 +a3c55e5c1020f5c0de2d349b4d92e5265c3ff069;22278 +0abafd686799fc26b254bc51333892d32b164232;22291 +76ec6df24e65b8d62be5ace5268a1a3a50bbd498;22393 +a145bfa1bb9c6e983fd2811cb2d5a483a79e13bf;22398 +e4e9d370655727c5db6653a29fcf3a76037f408c;22404 +728416b9c07206b881a59eb93512cb08e02786f3;22408 +036806029bf6802f9828fb9997c12a4b4f02ab3c;22491 +e98e4d29b9c2e6bb14787a23769066b2b42829b4;22497 +eb80ac41568315c9e7bc58fe579e3dbc0cae468c;22541 +970e9289ca8171fdc99464e916653b0475308c31;22548 + + a7c85f280677d70b8eef9aadf79302736ed26ffc; f5a1b0037fec2927cba073d118db24cdbd681975; a098425430db227021617976961e6b51ce5569cb; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78283] brlcad/trunk/misc/repoconv/svn_rev_updates.txt
Revision: 78283 http://sourceforge.net/p/brlcad/code/78283 Author: starseeker Date: 2021-02-19 18:41:48 + (Fri, 19 Feb 2021) Log Message: --- Checkpoint update SVN id assignments being found based on Sean's identification of multi-branch commits. Modified Paths: -- brlcad/trunk/misc/repoconv/svn_rev_updates.txt Modified: brlcad/trunk/misc/repoconv/svn_rev_updates.txt === --- brlcad/trunk/misc/repoconv/svn_rev_updates.txt 2021-02-19 17:04:04 UTC (rev 78282) +++ brlcad/trunk/misc/repoconv/svn_rev_updates.txt 2021-02-19 18:41:48 UTC (rev 78283) @@ -1,42 +1,57 @@ 771b3183f9e315f6e1451a1e3462e6f84724a9cd;735 -c365a032935f99d5cbcc5e0b7316253e918183f5; aec4367dafd37a7b0657c4b27414caa21ac4c1be;19033 -2ec20a87d6e216cc3af62da933a2917e96459ce2; 7678e03883c0e09c063c6f7fecbaef5db50c4619;19211 -4d5fe4e8afa57a275c04f0a11cbf20c1378ce600; 7a6b91272d804146e40be69cf1b197a02b7f9869;19282 -4af5f01acc93a65ba8e158c1e407e6fa30f0a867; 6dc89feeeaad3ab3ffcc6e122698ab51e666201a;19283 -9f4472b6c4a9d77005a25bac0e6ea9d0b45c6829; c3d19e5470e3861fc4db59c76f6de465f65fccbd;19288 -3312597ec11da607ad8cdecb8e86ecd6cd43a21c; 70f24c0838458564139cdd749b40ce0777ae6b74;19289 -ea6d4c16bae6ecf30d4439d92c8dd72f56b3e942; 4d401a8617869d3594b5948de12a374a5bd292fe;19440 -af33297408e4ec0b38fa37d211104ae8e3f4b850; e4c7c2c443b62ca5ab8dbfdd4347724d165c0837;19449 -3a6fdd142e59c7fee7dfb06fdaecc3b30f28d633; fa4138d198944ad67f26e77f6552361b87938b1a;19558 -a53d24a82016e59e54ad3fa0750238b077313a33; 7b4f169aec730a81b5ce863648a8ae31819b97d1;19587 -f1c200f10e9d5c0f896508b2967f644abafad234; e9452d6fd0dadb1192d99777acf891b0bc7703bb;19720 -45a67834524348e32e2c1d34071b59dbb1360d9e; fb7437f02dde3953bb257548c453724ad1af30db;19723 -6f4104bd83cf4a930bda9cbaa1b811d3e0d236b3; a378bc31e13250a8a4537f578c41870716614fdf;19772 -2731eb2fbda07495209d271b36629e48dc9e7836; 48288e65b6a227b30f00dea46073840363b9fc2d;19777 -6af6602bcdb5227c51a6b467226d5fc70d321855; ead896de7fe9c9f235b720ed5f3bcf6d7877989b;19783 -4b51763bd75123f81f069bba1b873c4538776530; e2311ccf85cd092b2bac862d142e5ab028b571ed;19797 -d82708b47d89c008a20ce23ba23ce4aca80cf232; 86dd96c71327854f7dcd3a4c352446503134120d;19798 -8dcb60d4529dc5e0cf99729338e05869cf270c06; 6699b9f0df300c7c7280381e0fbbcf525f9f31e0;19839 +0e2b02ee88f46fc29f234c9c71800fcd6c3f250c;19184 +86c00d3f4a8f412ad1ea25b3fcbd0888213e0723;19286 +5db99eba906095eb11b3ea893b95301ba9d4;19386 +b11b50a4a522208ece0ca8aa09f493e68184c065;19450 +d9306778a6714c198a0b4385f57a1b7afbd4c3fc;19463 +9db0bcb131b8805c060ef2b35f30433d5f2d16ee;19471 +51a2d8caf35c0512efda85b11bf9a2c858ff0e77;19552 +24d99686c39438784e16e393feeb2c0d4572820a;19601 +4fe093009cdde828d4f8acc6e8fb3cf84ef2623b;19613 +b334467bc02e858e5ad01f18565c740b8458b858;19617 +13c8395e91b708bb045ad34da6bf52459e254287;19618 +71b6b0a21675828fb10df69a83f96988abf0021a;19637 +e974d0e833a02b40de938a22184c06e2ee9e0453;19638 +39b75b2eb605ab9cbe6364622a0bc32ba32f74dd;19652 +13dd9624b6aaf03a26c400c34494320b4223b91f;19669 +023369fd1ba2c63ef2a0fc973ad0283973033946;19672 +f1dc6d42b2b62013b7c83692922962d5a52c302c;19673 +c17ba8ddea5915f8c2c535cf121ff313c2c4d294;19706 +7ec21b4816510812a9a9ca0fd0c712bcfc5527f8;19709 +2b82299887068d18e9eeab288a825dce0603b29c;19724 +03ef287c9f854dcb2c5bad5bdecea2625e7f8bc3;19738 +b963ebd8d5c178f27c322c70b9dfd692f9a71640;19750 +1575b390eaee5f8a22aa24e45879beec0b92f223;19764 +b685aafbfa677f91822bf9fff3566efe28533c84;19771 +81d43f9bd341f538596d0d3622004965864fae12;19773 +7659837e02a36ce3171dd87f8bced3a0a252bbe1;19781 +0e3431831481521fe66ad6b4041a6a9129af2a09;19793 +58f8238edcf9b3846857af71727d0d1bc7e4bec4;19799 +67cde13525c50e995c07c1dfcf0ba1eb447e67b3;19815 +5ce7326cdfa96d00541253cf082735a2bc396b77;19835 +6949221976767b94b98694b73d2b35a12c66933f;19838 + + a7c85f280677d70b8eef9aadf79302736ed26ffc; f5a1b0037fec2927cba073d118db24cdbd681975; a098425430db227021617976961e6b51ce5569cb; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78282] brlcad/trunk/misc/repowork/repowork.cpp
Revision: 78282 http://sourceforge.net/p/brlcad/code/78282 Author: starseeker Date: 2021-02-19 17:04:04 + (Fri, 19 Feb 2021) Log Message: --- Add a way to pass in a list of sha1 commits that were associated with SVN tags rather than branches. Modified Paths: -- brlcad/trunk/misc/repowork/repowork.cpp Modified: brlcad/trunk/misc/repowork/repowork.cpp === --- brlcad/trunk/misc/repowork/repowork.cpp 2021-02-19 15:50:58 UTC (rev 78281) +++ brlcad/trunk/misc/repowork/repowork.cpp 2021-02-19 17:04:04 UTC (rev 78282) @@ -86,7 +86,7 @@ std::string note((std::istreambuf_iterator(n)), std::istreambuf_iterator()); // Replace git style branch name for master with SVN style name - std::regex mstr_regex("svn:branch:master"); + std::regex mstr_regex("svn:branch:master$"); std::string note_fixed = std::regex_replace(note, mstr_regex, "svn:branch:trunk"); // Write the message to the commit's string; @@ -130,7 +130,7 @@ } int -git_update_svnnotes(git_fi_data *s, std::string _rev_map, std::string _branch_map) +git_update_svnnotes(git_fi_data *s, std::string _rev_map, std::string _branch_map, std::string _list) { if (!s->have_sha1s) { @@ -149,6 +149,11 @@ std::cerr << "Could not open svn_branch_map file: " << svn_branch_map << "\n"; exit(-1); } +std::ifstream infile_tag_list(tag_list, std::ifstream::binary); +if (tag_list.length() && !infile_tag_list.good()) { + std::cerr << "Could not open tag_list file: " << tag_list << "\n"; + exit(-1); +} std::map rmap; if (infile_revs.good()) { @@ -202,7 +207,33 @@ infile_branches.close(); } +std::set tag_sha1s; +if (infile_tag_list.good()) { + std::string line; + while (std::getline(infile_tag_list, line)) { + // Skip anything the wrong length + if (line.length() != 40) { + continue; + } + tag_sha1s.insert(line); + std::cout << "tag sha1: " << line << "\n"; + bool valid = false; + for (size_t i = 0; i < s->commits.size(); i++) { + if (s->commits[i].id.sha1 == line) { + valid = true; + break; + } + } + if (!valid) { + std::cout << "INVALID sha1 supplied for tag!\n"; + } + } + infile_tag_list.close(); +} + + + // Iterate over the commits looking for note commits. If we find one, // find its associated blob with data, read it, find the associated // commit, and stash it in a string in that container. @@ -213,10 +244,11 @@ } int nrev = -2; - bool sb = false; + bool sb = (bmap.find(s->commits[i].id.sha1) != bmap.end()); + bool do_tag = (tag_sha1s.find(s->commits[i].id.sha1) != tag_sha1s.end()); std::string sbranch; - if (rmap.find(s->commits[i].id.sha1) == rmap.end() && bmap.find(s->commits[i].id.sha1) == bmap.end()) { + if ((rmap.find(s->commits[i].id.sha1) == rmap.end()) && !sb && !do_tag) { continue; } @@ -224,9 +256,8 @@ nrev = rmap[s->commits[i].id.sha1]; } - if (bmap.find(s->commits[i].id.sha1) != bmap.end()) { + if (sb) { sbranch = bmap[s->commits[i].id.sha1]; - sb = true; } if (nrev > 0) { @@ -311,11 +342,16 @@ if (sbranch.length()) { // If we're adding/replacing rather than eliminating // the branch line, add it now. - std::string nbranchline = std::string("svn:branch:") + sbranch; - nmsg.append(nbranchline); + if (do_tag) { + std::string nbranchline = std::string("svn:tag:") + sbranch; + nmsg.append(nbranchline); + } else { + std::string nbranchline = std::string("svn:branch:") + sbranch; + nmsg.append(nbranchline); + } nmsg.append("\n"); + wbranch = true; } - wbranch = true; if (sbmatch) { // Replacing/removing existing branch line, no more to be done. continue; @@ -323,6 +359,19 @@ } } + if (do_tag) { + std::regex svnbranchline("^svn:branch:.*"); + bool sbmatch = std::regex_match(cline, svnbranchline); + if (sbmatch) { + std::string tagname = cline.substr(11, std::string::npos); + std::cout << "branch->tag " << s->commits[i].id.sha1 << "," << tagname << "\n"; +
[brlcad-commits] SF.net SVN: brlcad:[78281] brlcad/trunk/misc
Revision: 78281 http://sourceforge.net/p/brlcad/code/78281 Author: starseeker Date: 2021-02-19 15:50:58 + (Fri, 19 Feb 2021) Log Message: --- Stash the list of Git commits made to SVN tags, not branches. Modified Paths: -- brlcad/trunk/misc/CMakeLists.txt Added Paths: --- brlcad/trunk/misc/repoconv/tag_commits.txt Modified: brlcad/trunk/misc/CMakeLists.txt === --- brlcad/trunk/misc/CMakeLists.txt2021-02-19 14:38:16 UTC (rev 78280) +++ brlcad/trunk/misc/CMakeLists.txt2021-02-19 15:50:58 UTC (rev 78281) @@ -252,6 +252,7 @@ repoconv/svnfexport_svn.cxx repoconv/sync_commit.sh repoconv/sync_commit_trunk.sh + repoconv/tagcommits.txt repoconv/tagmap.sh repoconv/terra.dsp repoconv/verify/cvs.sh Added: brlcad/trunk/misc/repoconv/tag_commits.txt === --- brlcad/trunk/misc/repoconv/tag_commits.txt (rev 0) +++ brlcad/trunk/misc/repoconv/tag_commits.txt 2021-02-19 15:50:58 UTC (rev 78281) @@ -0,0 +1,361 @@ +# List was generated by: +# +# svn log file:///home/user/brlcad_repo/brlcad/tags|grep \^r|awk '{print $1}' > tags.sh +# +# Manually remove non revision numbers, strip r prefix. +# +# Add following alias to .gitconfig +# logsvnrev = "!f() { \ +# if [ x$1 != x ] ; then \ +# REVSHA1=\"$(git log --all --pretty=format:\"%H %N\" --grep svn:revision:$1$)\"; \ +# REVSHA1N=$(echo $REVSHA1 | awk '{print $1}'); \ +# if [ x$REVSHA1N != x ] ; then \ +#git log -1 $REVSHA1N; \ +# else \ +#echo Unknown revision number: $1; \ +# fi; \ +# else \ +# echo Need revision number; \ +# fi; \ +# }; f" +# +# Prepend git logsvnrev to revision numbers in above file. +# +# sh tags.sh | grep -v Unknown > commits.txt + +# To extract the sha1s: +# cat tag_commits.txt |grep \^commit|awk '{print $2}' + + +commit dfc05a5044ef596689bd7b26aee7437b535fa267 +Merge: a7ae482f9c f79572c37d +Author: Christopher Sean Morrison +Date: Tue Sep 8 18:14:02 2015 + + +merge c66170 trivialities from RELEASE, still unannounced and not posted + +svn:revision:66171 +svn:branch:rel-7-24-4 +svn:account:brlcad +commit a7ae482f9cbb779d9d1324475e08f407bc967622 +Author: Christopher Sean Morrison +Date: Tue Sep 8 16:12:20 2015 + + +tag release 7.24.4, a special release for arl that includes support for datum sets (points, axes, planes) and build system fixes + +svn:revision:66167 +svn:branch:rel-7-24-4 +svn:account:brlcad +commit 529e041e2086e38cb7900451795b24e9322e0430 +Merge: 656abd3f88 e5963b5e46 +Author: Christopher Sean Morrison +Date: Tue Jun 3 02:53:50 2014 + + +merge c61075 from RELEASE to get correct year into the NEWS file + +svn:revision:61077 +svn:branch:rel-7-24-2 +svn:account:brlcad +commit 656abd3f8867aaa0ecb5852ae3367a2dfc701d1e +Author: Christopher Sean Morrison +Date: Mon Jun 2 16:54:20 2014 + + +Tagging release 7.24.2 + +svn:revision:61066 +svn:branch:rel-7-24-2 +svn:account:brlcad +commit f6419447bde41fd694698d0a08b463d3f7a8a388 +Author: Christopher Sean Morrison +Date: Mon Oct 31 04:52:57 2011 + + +retagging release 7.20.4 now that most of the build and distcheck issues have been cleaned up. tested numerous configurations on debian and mac 10.6 + +svn:revision:47371 +svn:branch:rel-7-20-4 +svn:account:brlcad +commit 8a0f0da084954e48098e1db1e0818a65e178758b +Author: Christopher Sean Morrison +Date: Sat Oct 29 20:43:24 2011 + + +too many problems slipped through distcheck, including files missing from dist and a default cmake fail on mac 10.6. need to resync to STABLE and retag. + (svn branch delete) + +svn:revision:47353 +svn:branch:rel-7-20-4 +svn:account:brlcad +commit 485d9dfe51bc3724e47bd72e7c7e14cd22bdd5d9 +Author: Christopher Sean Morrison +Date: Sat Oct 29 17:29:05 2011 + + +apply strict compilation warning fix that slipped through testing since tarball hasn't yet been posted. + +svn:revision:47351 +svn:branch:rel-7-20-4 +svn:account:brlcad +commit a9365d36ca166643884bc6d351a1e7ab1740094b +Author: Christopher Sean Morrison +Date: Fri Oct 28 09:12:49 2011 + + +finally tagging release 7.20.4 + +svn:revision:47345 +svn:branch:rel-7-20-4 +svn:account:brlcad +commit fa34744fcc45d1902e1a075580f41f237e72da75 +Author: Christopher Sean Morrison +Date: Tue Aug 23 16:30:42 2011 + + +remove the rel-5-0beta cvs-to-svn relic as it's not actually the 5.0 beta release. the rel-5-0-beta tag has that so this one that just has tcl/tk can get gone. (svn branch delete) + +svn:revision:46344 +
[brlcad-commits] SF.net SVN: brlcad:[78280] brlcad/trunk/misc
Revision: 78280 http://sourceforge.net/p/brlcad/code/78280 Author: starseeker Date: 2021-02-19 14:38:16 + (Fri, 19 Feb 2021) Log Message: --- Stash the rev and branch updates to the SVN info assigned in the Git commit. These represent corrections based on analysis done by Sean. Modified Paths: -- brlcad/trunk/misc/CMakeLists.txt Added Paths: --- brlcad/trunk/misc/repoconv/svn_branch_updates.txt brlcad/trunk/misc/repoconv/svn_rev_updates.txt Modified: brlcad/trunk/misc/CMakeLists.txt === --- brlcad/trunk/misc/CMakeLists.txt2021-02-19 14:35:04 UTC (rev 78279) +++ brlcad/trunk/misc/CMakeLists.txt2021-02-19 14:38:16 UTC (rev 78280) @@ -245,6 +245,8 @@ repoconv/svn_git_diff.cxx repoconv/svn_map_commit_revs.cxx repoconv/svn_msgs.cxx + repoconv/svn_rev_updates.txt + repoconv/svn_branch_updates.txt repoconv/svnfexport.cxx repoconv/svnfexport_git.cxx repoconv/svnfexport_svn.cxx Added: brlcad/trunk/misc/repoconv/svn_branch_updates.txt === --- brlcad/trunk/misc/repoconv/svn_branch_updates.txt (rev 0) +++ brlcad/trunk/misc/repoconv/svn_branch_updates.txt 2021-02-19 14:38:16 UTC (rev 78280) @@ -0,0 +1,3 @@ +68aeb784b3ee698c854878c190eb4b229b88e1fe;unlabeled-2.5.1 +e4c97aa291ec4b5bf6d9bd3abca27da12fb108f9;unlabeled-2.5.1 + Property changes on: brlcad/trunk/misc/repoconv/svn_branch_updates.txt ___ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: brlcad/trunk/misc/repoconv/svn_rev_updates.txt === --- brlcad/trunk/misc/repoconv/svn_rev_updates.txt (rev 0) +++ brlcad/trunk/misc/repoconv/svn_rev_updates.txt 2021-02-19 14:38:16 UTC (rev 78280) @@ -0,0 +1,44 @@ +771b3183f9e315f6e1451a1e3462e6f84724a9cd;735 + +c365a032935f99d5cbcc5e0b7316253e918183f5; +aec4367dafd37a7b0657c4b27414caa21ac4c1be;19033 +2ec20a87d6e216cc3af62da933a2917e96459ce2; +7678e03883c0e09c063c6f7fecbaef5db50c4619;19211 +4d5fe4e8afa57a275c04f0a11cbf20c1378ce600; +7a6b91272d804146e40be69cf1b197a02b7f9869;19282 +4af5f01acc93a65ba8e158c1e407e6fa30f0a867; +6dc89feeeaad3ab3ffcc6e122698ab51e666201a;19283 +9f4472b6c4a9d77005a25bac0e6ea9d0b45c6829; +c3d19e5470e3861fc4db59c76f6de465f65fccbd;19288 +3312597ec11da607ad8cdecb8e86ecd6cd43a21c; +70f24c0838458564139cdd749b40ce0777ae6b74;19289 +ea6d4c16bae6ecf30d4439d92c8dd72f56b3e942; +4d401a8617869d3594b5948de12a374a5bd292fe;19440 +af33297408e4ec0b38fa37d211104ae8e3f4b850; +e4c7c2c443b62ca5ab8dbfdd4347724d165c0837;19449 +3a6fdd142e59c7fee7dfb06fdaecc3b30f28d633; +fa4138d198944ad67f26e77f6552361b87938b1a;19558 +a53d24a82016e59e54ad3fa0750238b077313a33; +7b4f169aec730a81b5ce863648a8ae31819b97d1;19587 +f1c200f10e9d5c0f896508b2967f644abafad234; +e9452d6fd0dadb1192d99777acf891b0bc7703bb;19720 +45a67834524348e32e2c1d34071b59dbb1360d9e; +fb7437f02dde3953bb257548c453724ad1af30db;19723 +6f4104bd83cf4a930bda9cbaa1b811d3e0d236b3; +a378bc31e13250a8a4537f578c41870716614fdf;19772 +2731eb2fbda07495209d271b36629e48dc9e7836; +48288e65b6a227b30f00dea46073840363b9fc2d;19777 +6af6602bcdb5227c51a6b467226d5fc70d321855; +ead896de7fe9c9f235b720ed5f3bcf6d7877989b;19783 +4b51763bd75123f81f069bba1b873c4538776530; +e2311ccf85cd092b2bac862d142e5ab028b571ed;19797 +d82708b47d89c008a20ce23ba23ce4aca80cf232; +86dd96c71327854f7dcd3a4c352446503134120d;19798 +8dcb60d4529dc5e0cf99729338e05869cf270c06; +6699b9f0df300c7c7280381e0fbbcf525f9f31e0;19839 + +a7c85f280677d70b8eef9aadf79302736ed26ffc; +f5a1b0037fec2927cba073d118db24cdbd681975; +a098425430db227021617976961e6b51ce5569cb; +e6417be98f27d570d863744f566f5aaf738abbe6; +11077485329842c81213eab68006fe5d58b5925f; Property changes on: brlcad/trunk/misc/repoconv/svn_rev_updates.txt ___ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits
[brlcad-commits] SF.net SVN: brlcad:[78279] brlcad/trunk/misc/repowork/repowork.cpp
Revision: 78279 http://sourceforge.net/p/brlcad/code/78279 Author: starseeker Date: 2021-02-19 14:35:04 + (Fri, 19 Feb 2021) Log Message: --- Sean spotted a couple incorrect svn:branch assignments - add ability to correct those as well. Modified Paths: -- brlcad/trunk/misc/repowork/repowork.cpp Modified: brlcad/trunk/misc/repowork/repowork.cpp === --- brlcad/trunk/misc/repowork/repowork.cpp 2021-02-19 00:44:32 UTC (rev 78278) +++ brlcad/trunk/misc/repowork/repowork.cpp 2021-02-19 14:35:04 UTC (rev 78279) @@ -129,49 +129,79 @@ return 0; } -/* There are three potential cases - assigning a previously unassigned svn rev, - * fixing an erroneously assigned rev, and removing an erroneously assigned rev - * with no direct mapping. */ int -git_update_svnrevs(git_fi_data *s, std::string _rev_map) +git_update_svnnotes(git_fi_data *s, std::string _rev_map, std::string _branch_map) { if (!s->have_sha1s) { - std::cerr << "Fatal - sha1 SVN rev updating requested, but don't have original sha1 ids - redo fast-export with the --show-original-ids option.\n"; + std::cerr << "Fatal - sha1 SVN note updating requested, but don't have original sha1 ids - redo fast-export with the --show-original-ids option.\n"; exit(1); } -// read map -std::ifstream infile(svn_rev_map, std::ifstream::binary); -if (!infile.good()) { +// read maps +std::ifstream infile_revs(svn_rev_map, std::ifstream::binary); +if (svn_rev_map.length() && !infile_revs.good()) { std::cerr << "Could not open svn_rev_map file: " << svn_rev_map << "\n"; exit(-1); } +std::ifstream infile_branches(svn_branch_map, std::ifstream::binary); +if (svn_branch_map.length() && !infile_branches.good()) { + std::cerr << "Could not open svn_branch_map file: " << svn_branch_map << "\n"; + exit(-1); +} std::map rmap; +if (infile_revs.good()) { + std::string line; + while (std::getline(infile_revs, line)) { + // Skip empty lines + if (!line.length()) { + continue; + } -std::string line; -while (std::getline(infile, line)) { - // Skip empty lines - if (!line.length()) { - continue; + size_t spos = line.find_first_of(";"); + if (spos == std::string::npos) { + std::cerr << "Invalid sha1;rev map line!: " << line << "\n"; + exit(-1); + } + + std::string id1 = line.substr(0, spos); + std::string id2 = line.substr(spos+1, std::string::npos); + int rev = (id2.length()) ? std::stoi(id2) : -1; + + std::cout << "sha1: \"" << id1 << "\" -> rev: \"" << rev << "\n"; + rmap[id1] = rev; } - size_t spos = line.find_first_of(";"); - if (spos == std::string::npos) { - std::cerr << "Invalid sha1;rev map line!: " << line << "\n"; - exit(-1); + infile_revs.close(); +} + + +std::map bmap; +if (infile_branches.good()) { + std::string line; + while (std::getline(infile_branches, line)) { + // Skip empty lines + if (!line.length()) { + continue; + } + + size_t spos = line.find_first_of(";"); + if (spos == std::string::npos) { + std::cerr << "Invalid sha1;branch map line!: " << line << "\n"; + exit(-1); + } + + std::string id1 = line.substr(0, spos); + std::string id2 = line.substr(spos+1, std::string::npos); + + std::cout << "sha1: \"" << id1 << "\" -> branch: \"" << id2 << "\n"; + bmap[id1] = id2; } - std::string id1 = line.substr(0, spos); - std::string id2 = line.substr(spos+1, std::string::npos); - int rev = (id2.length()) ? std::stoi(id2) : -1; - - std::cout << "sha1: \"" << id1 << "\" -> rev: \"" << rev << "\n"; - rmap[id1] = rev; + infile_branches.close(); } -infile.close(); // Iterate over the commits looking for note commits. If we find one, // find its associated blob with data, read it, find the associated @@ -182,11 +212,23 @@ continue; } - if (rmap.find(s->commits[i].id.sha1) == rmap.end()) { + int nrev = -2; + bool sb = false; + std::string sbranch; + + if (rmap.find(s->commits[i].id.sha1) == rmap.end() && bmap.find(s->commits[i].id.sha1) == bmap.end()) { continue; } - int nrev = rmap[s->commits[i].id.sha1]; + if (rmap.find(s->commits[i].id.sha1) != rmap.end()) { + nrev = rmap[s->commits[i].id.sha1]; + } + + if (bmap.find(s->commits[i].id.sha1) != bmap.end()) { + sbranch = bmap[s->commits[i].id.sha1]; + sb = true; + } + if (nrev > 0) {