Changeset 1495
- Timestamp:
- Aug 27, 2012, 6:06:43 AM (10 years ago)
- Location:
- trunk
- Files:
-
- 16 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property svn:mergeinfo changed
/branches/0.9-stable merged: 1471,1473-1474,1480,1488-1493
- Property svn:mergeinfo changed
-
trunk/Makefile.am
r1470 r1495 5 5 # Copyright (C) 2005, 2006 Jari Häkkinen 6 6 # Copyright (C) 2007, 2008 Jari Häkkinen, Peter Johansson 7 # Copyright (C) 2009, 2010, 2011 Peter Johansson7 # Copyright (C) 2009, 2010, 2011, 2012 Peter Johansson 8 8 # 9 9 # This file is part of svndigest, http://dev.thep.lu.se/svndigest … … 117 117 @echo "creating $@" 118 118 119 STABLE_VERSION = $(SVNDIGEST_MAJOR_VERSION).$(SVNDIGEST_MINOR_VERSION) 120 STABLE_BRANCH = ^/branches/$(STABLE_VERSION)-stable 121 119 122 # create a tag from current stable branch; depends on check-version to 120 123 # ensure that version is macro.minor.micro (no pre suffix), that wc is 121 124 # pristine and updated. 122 125 svn-tag: check-version check-svn-diff 123 svn copy \ 124 ^/branches/$(SVNDIGEST_MAJOR_VERSION).$(SVNDIGEST_MINOR_VERSION)-stable\ 125 ^/tags/$(VERSION) -m "tagging version $(VERSION)" 126 svn copy $(STABLE_BRANCH) ^/tags/$(VERSION) \ 127 -m "tagging version $(VERSION)" 128 129 # create a stable-branch from trunk 130 svn-stable-branch: check-svn-diff all 131 svn copy ^/trunk $(STABLE_BRANCH) \ 132 -m "New stable branch $(STABLE_VERSION)" \ 133 && svn co $(STABLE_BRANCH) ../svndigest-$(STABLE_VERSION).x \ 134 && bin/svndigest-copy-cache -v -t ../svndigest-$(STABLE_VERSION).x 126 135 127 136 syntax-check: assert-header-without-use \ … … 144 153 grep -LE "[^ \t\(=]errno" $$files | grep $(srcdir) && \ 145 154 { echo "$@: in files listed above"; exit 1; } || :; 146 -
trunk/NEWS
r1470 r1495 15 15 http://dev.thep.lu.se/svndigest/svn/branches/0.9-stable 16 16 17 Version 0.9.6 (released 27 August 2012) 18 - Fixed bug that svndigest crashed when plotting 'others' and data 19 was empty (bug #515) 20 21 A complete list of closed tickets can be found here [[br]] 22 http://dev.thep.lu.se/svndigest/query?status=closed&milestone=svndigest+0.9.6 23 17 24 Version 0.9.5 (released 19 March 2012) 18 Fixed bug that directories belonging to other WC were traversed (bug #512)25 - Fixed bug that directories belonging to other WC were traversed (bug #512) 19 26 20 27 A complete list of closed tickets can be found here [[br]] -
trunk/README.developer
- Property svn:mime-type deleted
r1299 r1495 15 15 16 16 Commits should be minimalistic and the projects should always compile 17 ( `make` and `make check`) when someone makes a clean checkout. There is17 ('make' and 'make check') when someone makes a clean checkout. There is 18 18 a short introduction to subversion and its usage available as 19 19 [http://cbbp.thep.lu.se/~jari/documents/subversion_guidelines/index.html Subversion guidelines]. … … 27 27 build man page you will need help2man. 28 28 29 === bootstrap and autoreconf === 29 === bootstrap and autoreconf === 30 30 31 31 At first checkout from the repository you must run the bootstrapping 32 32 utility 33 33 34 `./bootstrap` 35 36 to setup autoconf files. To push subsequent changes of this file into 37 the build scripts you run 38 39 `autoreconf` 34 #> ./bootstrap 40 35 41 36 42 37 === configure === 43 38 44 Run the generated configure script with 45 46 `./configure --enable-debug`47 48 The option flag `--enable-debug` turns on debug options (e.g. enables49 a ssertions).39 Run the generated configure script with 40 41 #> ./configure --enable-debug 42 43 The option flag '--enable-debug' turns on some compiler options 44 appropriate for development (e.g. enables assertions). 50 45 51 46 52 47 === Testing === 53 48 54 Test programs should be created and added to the `make check`49 Test programs should be created and added to the 'make check' 55 50 execution. Always check that the test runs before committing code to 56 the repository, i.e., run `make check`. For more details on how to run57 and write tests, please refer to file `test/README`.58 59 There is a test repository in source:trunk/test/repothat is a part of51 the repository, i.e., run 'make check'. For more details on how to run 52 and write tests, please refer to file 'test/README'. 53 54 There is a test repository in 'test/repo' that is a part of 60 55 the svndigest repository. The logic behind this is that it is nice to 61 56 have a common test repository that can be used off-line. Changes to … … 65 60 propagated to the svndigest repository and it is important that some 66 61 files created in the test repository are manually added to the 67 svndigest repository. Assuming that `make check`is run before a62 svndigest repository. Assuming that 'make check' is run before a 68 63 commit, a warning is generated if the test repository is inconsistent 69 64 with the svndigest repository. There will be a diagnostic message and … … 71 66 problem manually. 72 67 73 The problem is simply that the file source:trunk/test/repo/db/current74 is changed compared to the svndigest repository. The `current`file68 The problem is simply that the file 'test/repo/db/current' 69 is changed compared to the svndigest repository. The 'current' file 75 70 indicates a specific number of change sets within the test repository 76 and the directories source:trunk/test/repo/db/revsand77 source:trunk/test/repo/db/revpropscontains a matching number of71 and the directories 'test/repo/db/revs' and 72 'test/repo/db/revprops' contains a matching number of 78 73 change sets. However, the change sets added to the test repository are 79 74 not automatically added to the svndigest repository, therefore the new 80 files in the `revs` and `revprops`directories must be added manually75 files in the 'revs' and 'revprops' directories must be added manually 81 76 to the svndigest repository. 82 77 … … 94 89 The take home message is that developers should communicate with each 95 90 other when changing the test repository in order to avoid to large 96 repository conflicts. AND read the output of `make check`.91 repository conflicts. AND read the output of 'make check'. 97 92 98 93 99 94 === yat library === 100 95 101 Directory `yat/`contains some files from the yat library. These96 Directory 'yat/' contains some files from the yat library. These 102 97 files are not owned by svndigest and should not (if possible) be 103 edited here. For more details please see `yat/README`.98 edited here. For more details please see 'yat/README'. 104 99 105 100 === Output file structure === … … 107 102 A directory reflecting the parsed directory is generated for each 108 103 combination of StatsType, Author, and LineType, which is located in 109 `<TARGET>/<ROOT>/StatsType/Author/LineType/`. Author may be, on top of110 each author in the repository, a directory ' 'all'' that is a sum over111 all Authors. In same fashion LineTypemay be any of the three112 linetypes but may also ''total'', which a sum over all linetypes. In113 each `<TARGET>/<ROOT>/StatsType`there are directories114 `images/LineType`that contain a structure reflecting the parsed115 directory with images for every combination of File, LineType, and116 StatsType. Images for different Authors are identical and therefore104 '<TARGET>/<ROOT>/StatsType/Author/LineType/'. Author may be, on top of 105 each author in the repository, a directory 'all' that is a sum over 106 all authors. In same fashion 'LineType' may be any of the three 107 linetypes but may also be 'total', which is a sum over all 108 linetypes. In each '<TARGET>/<ROOT>/StatsType' there are directories 109 'images/LineType' that contain a structure reflecting the parsed 110 directory with images for every combination of 'File', 'LineType', and 111 'StatsType'. Images for different authors are identical and therefore 117 112 shared between authors. 118 113 119 114 == Design and Motivation == 120 115 121 Please refer to source:trunk/doc/HACKING for a list of design 122 decisions we try to follow. 123 124 == Releasing == 125 126 See http://dev.thep.lu.se/svndigest/wiki/ReleaseProcedure 127 128 129 ------------------------------------------------------------------------- 130 {{{ 116 Please refer to 'doc/HACKING' for a list of design decisions we try to 117 follow. 118 119 = Releasing = 120 121 The main development is performed in the trunk branch of the 122 repository. A new release branch is created for each minor release 123 from the trunk and patch releases are snapshots of the minor release 124 branch. This implies that patch work is performed in the minor release 125 branch, and changes made release branch is transferred to the trunk 126 every time a new patch release is made. Remember, patch work should be 127 limited to bug fixes and important fixes only leaving development of 128 new features and designs to the trunk branch. 129 130 Releases should only be performed by an appointed member of the team, 131 the Release Manager. 132 133 == Release procedure == 134 135 This section describes what to do when publishing a release. 136 137 === Creating a release branch === 138 139 Once people agree that a new release branch should be made, the 140 Release Manager creates it with the following procedure (substitute 141 A.B with the version you are preparing): 142 143 1. Mark the new minor series in 'NEWS': 144 145 8<--- 146 See the end for copyrights and conditions. 147 148 +svndigest A.B.x series from 149 + http://dev.thep/lu.se/svndigest/svn/branches/A.B-stable 150 + 151 Version A.B (released NOT YET) 152 8<--- 153 154 commit the changes with 155 156 #> svn ci -m "preparing branch A.B-stable" 157 158 2. Update copyright statements with commands 159 160 #> svncopyright -v 161 162 Examine the updates and commit changes with 163 164 #> svn ci -m "updating copyright statements" 165 166 3. Create a new minor branch using a one liner like 167 168 #> make svn-stable-branch 169 170 4. Prepare the trunk for the next minor release: 171 172 a) Update version number in 'm4/version.m4'. 173 MY_VERSION_early([A], [B+1], [0], [true]) 174 175 b) Add an entry in 'NEWS' 176 177 version A.[B+1] (released NOT YET) 178 179 The date is set when version A.[B+1] is released. 180 181 c) Commit changes to the repository 182 183 #> svn ci -m "Bumping VERSION to A.[B+1]" 184 185 186 === Rolling a release === 187 188 This section describes how to release a new version. If this is a 189 minor release (C+0), replace A.B.C with A.B. Before you start, make 190 sure you have write access to sourceforge page and that you can create 191 checksum files, i.e., you need 'openssl' and 'md5'/'md5sum'. 192 193 1. Create a new milestone for next patch release A.B.[C+1]. 194 195 2. Update version number in 'm4/version.m4'. Locate and change the below line 196 --- 197 MY_VERSION_early([A], [B], [C], [false]) 198 --- 199 200 3. Update file 'THANKS' 201 202 4. Make sure that the items in 'NEWS' cover the new features of the 203 release. Set the date for the new release: 204 205 version A.B (released 26 June 2007) 206 207 5. Commit changes to the repository 208 209 #> svn ci -m "Preparing release A.B.C" 210 211 6. Update copyright statements with commands 212 213 #> make && ./bin/svncopyright -v 214 215 Examine the updates and commit changes with 216 217 #> svn ci -m "updating copyright statements" 218 219 7. Issue 'svn update' to make entire wc to be in revision 'HEAD'. 220 Needless to say, make sure that the program is in a state to be 221 released; make sure that all the tests pass, test the distribution 222 package, and perform all other release tests you think is 223 appropriate. Run: 224 225 #> make all && ./build_support/tag_and_release.sh 226 227 228 8. Update wiki first page under section 'Latest Release'. 229 230 a) Update version to A.B.C. 231 232 b) Update link to NEWS file to 'source:tags/A.B.C/NEWS' 233 234 c) If this is a minor release (C=0) update links to 235 'source:branches/A.B-stable/doc/readme.txt', 236 'source:branches/A.B-stable/README'. 237 238 9. Update SubversionCheckout 239 240 a) In section 'svndigest latest release' update link to 241 [source:tags/A.B.C/NEWS NEWS] and modify the svn commands to 242 243 svn checkout http://dev.thep.lu.se/svndigest/svn/tags/A.B.C svndigest-A.B.C 244 245 svn switch http://dev.thep.lu.se/svndigest/svn/tags/A.B.C 246 247 b) If this is a minor release (C=0) update link in 'svndigest stable' to 248 [source:branch/A.B-stable/NEWS NEWS] and modify the svn commands to 249 250 svn co http://dev.thep.lu.se/svndigest/svn/branches/A.B-stable svndigest-A.B 251 252 svn switch ^/branches/A.B-stable 253 254 10. Add a version A.B.C using trac-admin tool 255 256 11. Close milestone A.B.C 257 258 12. Merge the release into trunk. Go to a pristine trunk WC and 259 260 #> cd /path/to/svndigest-trunk 261 #> svn update 262 #> svn diff 263 #> svn merge ^/branches/A.B.C-stable 264 265 Resolve all conflicts. Run tests and perform all other appropriate 266 tests to make sure that the merge does not create havoc. Typically 267 changes in 'm4/version.m4' are problematic so check this file extra 268 carefully. 269 270 Commit changes to the trunk branch. 271 272 #> svn commit -m "Merged release A.B.C to the trunk." 273 274 13. Prepare stable branch for future release 275 276 a) Update version number in 'version.m4' in line 277 278 MY_VERSION_early([A], [B], [C+1], [true]) 279 280 b) Add an entry in 'NEWS' 281 282 8<--- 283 version A.B.[C+1] (released NOT YET) 284 8<--- 285 The date is set when version A.B.[C+1] is released. [[br]][[br]] 286 287 c) Commit changes to the repository, 288 289 #> svn ci -m "Bumping version" 290 291 14. Send an announcement to svndigest-users@lists.sourceforge.net 292 using 'announment.txt' as template. 293 294 15. Create a macport ticket, https://trac.macports.org/newticket, with 295 summary='svndigest A.B.C', 296 type=update, 297 keywords="haspatch maintainer", 298 and port=svndigest. 299 Attach 'Portfile.diff' to newly created ticket. 300 301 302 -------------- 131 303 Copyright (C) 2005, 2006 Jari Häkkinen 132 304 Copyright (C) 2007, 2008 Jari Häkkinen, Peter Johansson 133 Copyright (C) 2009, 2010 Peter Johansson305 Copyright (C) 2009, 2010, 2012 Peter Johansson 134 306 135 307 This file is part of svndigest, http://dev.thep.lu.se/svndigest … … 147 319 You should have received a copy of the GNU General Public License 148 320 along with svndigest. If not, see <http://www.gnu.org/licenses/>. 149 }}} -
trunk/THANKS
r1466 r1495 18 18 http://www.mhoenicka.de/system-cgi/blog/index.php?itemid=999 19 19 20 Vedran Ljubovic for reporting bug #515 21 20 22 ----------------------------------------------------------------------- 21 23 {{{ 22 24 Copyright (C) 2005, 2006 Jari Häkkinen 23 25 Copyright (C) 2007, 2008 Jari Häkkinen, Peter Johansson 24 Copyright (C) 2009, 2010 Peter Johansson26 Copyright (C) 2009, 2010, 2012 Peter Johansson 25 27 26 28 This file is part of svndigest, http://dev.thep.lu.se/svndigest -
trunk/configure.ac
r1487 r1495 304 304 test/environment.h 305 305 test/Makefile]) 306 307 AC_CONFIG_FILES([build_support/tag_and_release.sh], 308 [chmod +x-w build_support/tag_and_release.sh]) 306 309 307 310 AC_CONFIG_HEADER([yat/config_public.h]) -
trunk/lib/Functor.h
r1418 r1495 7 7 Copyright (C) 2005 Peter Johansson 8 8 Copyright (C) 2006, 2007, 2008 Jari Häkkinen, Peter Johansson 9 Copyright (C) 2010 Peter Johansson9 Copyright (C) 2010, 2012 Peter Johansson 10 10 11 11 This file is part of svndigest, http://dev.thep.lu.se/svndigest … … 163 163 public std::binary_function<T&, const std::pair<const Key, T>&, void> 164 164 { 165 T operator()(T& x, const std::pair<const Key, T>& p)165 void operator()(T& x, const std::pair<const Key, T>& p) const 166 166 { 167 167 x += p.second; 168 return x;169 168 } 170 169 }; -
trunk/lib/Stats.cc
r1478 r1495 240 240 if (iter==m.end() || iter->second.empty()) 241 241 return 0; 242 assert(iter->second.size()); 242 243 return iter->second.back(); 243 244 } -
trunk/lib/StatsPlotter.cc
r1306 r1495 126 126 Colors::instance().get_color(label, r,g,b); 127 127 gp.current_color(r,g,b); 128 gp.plot(others, label, others. back());128 gp.plot(others, label, others.size() ? others.back() : 0); 129 129 } 130 130 for ( ; i!=end; ++i) { -
trunk/lib/Vector.h
r1481 r1495 185 185 size_ = std::max(size_, other.size()); 186 186 return *this; 187 return *this; 187 188 } 188 189 -
trunk/m4/find_apr.m4
- Property svn:mergeinfo changed
/branches/0.9-stable/m4/find_apr.m4 merged: 1490
- Property svn:mergeinfo changed
-
trunk/m4/pkg.m4
- Property svn:mergeinfo changed
/branches/0.9-stable/m4/pkg.m4 merged: 1490
- Property svn:mergeinfo changed
-
trunk/m4/version.m4
- Property svn:mergeinfo changed
/branches/0.9-stable/m4/version.m4 merged: 1471,1492
- Property svn:mergeinfo changed
-
trunk/m4/yat_add_flag.m4
- Property svn:mergeinfo changed
/branches/0.9-stable/m4/yat_add_flag.m4 merged: 1490
- Property svn:mergeinfo changed
-
trunk/test/repo
-
trunk/test/traverse_test.sh
r1470 r1495 29 29 . ./init.sh || exit 99 30 30 31 # skip this test as long as it is XFAIL because we get false negative32 # with older WC33 # FIXME, remove line below when this test is expected to be successful34 $SVN --version | $GREP "version 1.7" || exit_skip35 36 31 daughter=.svndigest/branches_wc 37 32
Note: See TracChangeset
for help on using the changeset viewer.