Below is the file 'NEWS' from this revision. You can also download the file.
Tue May 3 00:31:37 PDT 2005
0.19 release. performance improvements, features, ui
improvements, and bug fixes.
- many operations sped up by another factor of 2 or better.
- special thanks to Matt Johnston <matt@ucc.asn.au>.
- first steps towards automated benchmarking. Thanks
to Timothy Brownawell <tbrownaw@gmail.com>.
- new major features:
- "annotate" command; still requires optimization.
Thanks to Emile Snyder <emile@alumni.reed.edu>.
- "inodeprints" for fast change detection in large
working dirs now fully supported; see manual for
details.
- new minor features:
- new selector "c:name=value" for selecting on
arbitrary certs. Thanks to Richard Levitte
<richard@levitte.org>.
- new hooks to automatically initialize attributes on
add; monotone now automatically sets execute bit on
executables. Thanks to Joel Reed
<joelwreed@comcast.net>.
- new automate command "select", to do selector
expansion. Thanks to Richard Levitte
<richard@levitte.org>.
- new automate commands "graph", "parents",
"children", "ancestors", to easily inspect history.
Special thanks to Sebastian Spaeth
<Sebastian@SSpaeth.de>.
- new command "db kill_rev_locally". Thanks to
Sebastian Spaeth <Sebastian@sspaeth.de>.
- new arguments to "commit": --author, --date; useful
for patch attribution and importing history.
- new automate command "inventory" (output format will
change in next release, however). Thanks to Derek
Scherger <derek@echologic.com>.
- ui improvements:
- netsync progress ticker in kilobytes/megabytes.
Thanks to Matt Johnston <matt@ucc.asn.au> and
Sebastian Spaeth <Sebastian@sspaeth.de>.
- tickers do not cause annoying scrolling when wider
than window. Special thanks to Matthew Gregan
<kinetik@orcon.net.nz>.
- warn users when a commit creates divergence, and
when an update ignores it. Thanks to Jeremy Cowgar
<jeremy@cowgar.com>.
- support for command-specific options (there is still
no rule that such options must appear after the
command on the command line, though). Thanks to
Richard Levitte <richard@levitte.org>.
- bug fixes:
- many cvs_import bugs fixed. Special thanks to Jon
Bright <jon@siliconcircus.com>, Emile Snyder
<emile@alumni.reed.edu>, Hansjoerg Lipp
<hjlipp@web.de>, Matthew Gregan
<kinetik@orcon.net.nz>.
- windows/unix working copy line ending conversion now
works correctly. Thanks to Emile Snyder
<emile@alumni.reed.edu>.
- many fixes to i18n-ized filename support
- "drop" and "rename" now affect file attributes as
well. Thanks to Richard Levitte
<richard@levitte.org> and Joel Reed
<joelwreed@comcast.com>.
- better error reporting in netsync. Thanks to
Grahame Bowland <grahame@angrygoats.net>.
- only set working directory's default branch on some
commands (update, commit). Thanks to Florian Weimer
<fw@deneb.enyo.de>.
- "db check" now sets exit status correctly, for use
in scripts. Thanks to Derek Scherger
<derek@echologic.com>.
- many others...
- fantastic emacs integration in contrib/monotone.el. Thanks
to Harley Gorrell <harley@panix.com>.
- 45 new integration tests. total line coverage: ~84%.
- upgrading from 0.18: database and working copies are
fully compatible. NOTE that the configuration file
is now ~/.monotone/monotonerc, rather than old
~/.monotonerc. Simply create ~/.monotone, and
rename any existing configuration file.
Sun Apr 10 17:49:25 PDT 2005
0.18 release. performance improvements, features, and bug fixes.
This release is dedicated to Shweta Narayan.
- most operations sped up by a factor of 2 or better; many sped up
by up several orders of magnitude.
- special thanks to Matt Johnston <matt@ucc.asn.au>, Derek
Scherger <derek@echologic.com>, Linus Torvalds
<torvalds@osdl.org>.
- new concept: "database vars". Used in several features below.
- new features:
- new file "MT/log" can be edited while you work,
sets default changelog. (no change in behaviour if
you do not edit it.) Thanks to Jeremy Cowgar
<jeremy@cowgar.com>.
- monotone now stores default netsync
server/collection, initialized on first use of
netsync.
- you no longer need to manually import server
keys, monotone will fetch the key from the server on
first netsync.
- monotone keeps track of keys of servers you have
previously synced with, to prevent man-in-the-middle
attacks.
- several powerful new "automate" commands added.
- new command 'ls known', lists files that are under version
control. Thanks to Florian Weimer <fw@deneb.enyo.de>.
- preliminary "inodeprints" functionality -- speeds up diff,
status, etc. No UI or documentation yet -- in a working
copy, 'touch MT/inodeprints' to enable, then commit or
update to populate cache.
- UI improvements:
- Added short options -r, -b, -k, -m.
- default to 'dot' ticker-style when stderr is
not a tty, thanks to Derek Scherger
<derek@echologic.com>.
- New "-@/--xargs" option, helpful when using new
automate commands. Thanks to Richard Levitte
<richard@levitte.org>.
- New "--depth" argument to 'log'. Thanks to Richard
Levitte <richard@levitte.org>.
- 'db info' gives statistics on space usage.
- new command 'dropkey'. Thanks to Jeremy Cowgar
<jeremy@cowgar.com>.
- robustness improvement: if monotone crashes in a working
directory and --dump and --debug were not specified, saves
debug dump to "MT/debug" for analysis, instead of
discarding.
- new contributed scripts: CIA (cia.navi.cx) notification,
email notification, Bash completion.
- 33 new integration tests. total line coverage: ~82%.
- many bug fixes
- Special thanks to Matt Johnston <matt@ucc.asn.au>,
for going above and beyond to track down the last
release blocker.
- upgrading from 0.17 requires only a 'db migrate'.
Fri Mar 18 15:38:52 PST 2005
0.17 release. bug fixes and features.
- many, many robustness improvements
- more careful checking everywhere
- much more thorough test suite
- all revisions subject to careful checks before
entering database
- not yet fully optimized; "pull" may be very
slow and use lots of cpu
- support for "epochs", to safely manage future
rebuilds, hash migration, etc.
- new "db check" command, thanks to Derek Scherger
<derek@echologic.com>.
- now uses sqlite3, thanks to Christof Petig
<christof@petig-baender.de>.
- removes most former size limitations
- "restrictions" support, thanks to Derek Scherger
<derek@echologic.com>.
- most commands now take a list of files to limit
their actions to
- monotone can now be run from anywhere in the working
directory (not just the root)
- new command "monotone setup" required to create a
working directory for a new project
- important security fix -- don't use shell when calling
external merge commands.
- format change for "MT/options", ".mt-attrs"; you may have to
edit these files
- new command "attr" for managing .mt-attrs.
- builds merkle tries in-memory -- netsync starts up many
times faster
- start of new "automate" interface, for shell scripts and
others.
- new command "cdiff": generates context diffs.
- remove most of now-obsolete manifest/file cert support.
- 60+ new integration tests.
- many portability fixes
- in particular, major win32 cleanups, thanks to Jon
Bright <jon@siliconcircus.com>. win32 is once again
fully and natively supported.
- many bug fixes
- several incompatible changes: see file UPGRADE for
migration information
Thu Dec 30 01:37:54 EST 2004
0.16 release. bug fixes.
- 50+ new integration tests
- many NetBSD portability fixes
- release build on gcc 3.4 / FC3
- masses of changeset bugs in 0.15 fixed
- some bogus changesets were generated
in the 0.16 development cycle. you will
need to rebuild revision graph.
Sun Nov 7 14:06:03 EST 2004
0.15 release. major changes.
- overhauled the internal representation of changes. see
README.changesets for details
- fixed bugs in merkle trie synchronization code
- fixed echoing and progress UI bugs
(helps when using in emacs)
- upgraded cryptopp to 5.2.1
- fixed bug 8715, diff hunk coordinate reporting
- added figures, new tutorial to manual
- improve accuracy of log command
- several build, configure, and linkage fixes
- some OSX / PPC portability fixes
Sat Jul 31 15:38:02 EDT 2004
0.14 release. bug fixes.
- some compile fixes for g++ 3.4
- made --dump=FILE option for saving traces,
otherwise failures just print reason (no trace)
- some things disabled, as scheduled for replacement
by upcoming changeset branch work
- disabled "disapprove" command due to bad semantics
- removed "bump" and .mt-nonce machinery
- several critical rename-merging bugs fixed
- renames vs. deletes
- renames vs. deltas
- parallel renames
- bugs fixed from savannah bug tracker:
- 9223 argv overflow
- 9075 empty commits
- 8919 rename --verbose to --debug
- 8958 rename debug to db execute
- 8920 empty passphrase message
- 8917 connection refused message
- 8913 testresult argument
- 8912 passphrase read on serve
- 8472 approve into branch
- 8428 duplicate key warning
- 8928 nonce uses too many bits
Thu May 20 22:26:27 EDT 2004
0.13 release. bug fixes.
- remove (file|manifest) in several commands
- "list missing" command
- fixed bugs:
- (critical) empty data netsync crash
- mkstemp, platform lua
- runtime error reporting chatter
- non-posix database names
- non-posix dirnames
- non-posix merge names
- 2-way merge algorithm and hook
- single-character filenames
- multiple password reads
- .svn ignore pattern
Sun May 2 21:03:38 EDT 2004
0.12 release. win32 port, bug fixes and optimizations.
- ported to native win32 (mingw)
- implemented human friendly version selectors
- added post-commit hook for change notification
- removed spirit-based parsers, reduced compile costs
- many netsync bugs removed, pipeline performance improved
- removed old, deprecated networking system
- several minor CVS import bugs fixed
- upgraded bundled netxx
Sun Mar 28 12:41:07 EST 2004
0.11 release. bug fixes and optimizations.
NOTE: this release expands the sqlite page size. YOU WILL NEED
to dump existing databases before upgrading and reload it
after upgrading, otherwise monotone will complain that the
database image appears malformed. this condition cannot
unfortunately be distinguished from a real malformed image on
disk. for example:
$ monotone --db=my.db db dump >dump.sql
$ <upgrade to new monotone>
$ mv my.db my.db.backup
$ monotone --db=my.db db load <dump.sql
- fixed bugs:
- aliasing bug on debian (-O2 now works)
- netsync ppc portability / checksums
- sha1 whitespace bug
- netsync broken formatter
- broken symlink handling
- merger execution pessimism
- LCA bitset calculation pessimism
- static object initialization order
- CVS single-version import
- CVS first-version changelog
- CVS branch inference and topology
- cryptographic SSE2 paths enabled on linux/x86.
- builds against boost 1.31.0.
- removed boost::socket
- removed documentation about old networking system.
- "officially" deprecated old networking system.
- enable building with system-local libraries.
- upgraded bundled sqlite.
- changed sqlite page size from 1k -> 8k
Mon Mar 1 00:32:07 EST 2004
0.10 release. new "netsync" protocol implemented, allowing
direct monotone-to-monotone database synchronization. random
number underflow problem fixed. more tests added. database
schema changed, must migrate schema. added new QA logic to
update and merge algorithms (testresult / approval).
Thu Jan 1 18:23:06 EST 2004
0.9 release. support international users (non-ASCII character
sets, locales). some corrections to update algorithm. line
merging algorithm reimplemented. support working copy
MT/monotonerc file. broke format compatibility with MT/work
files; commit any pending work before upgrading. permit
spaces, colons, other "funny" characters in filenames. support
HTTP 1.1, HTTP proxies, handle some corner cases in ancestry
graph and database faults.
Fri Nov 21 20:25:26 EST 2003
0.8 release. row size increased to 16mb. more performance
improvements in cvs importer. cvs branch tags imported now.
minor UI improvements. new commands: SQL dump and load, vcheck
for enhanced collision detection, queue addtree for recursive
queueing. improved networking scalability. historical rename
certs and .mt-attrs file format changed to accomodate upcoming
i18n work.
Sun Nov 2 23:38:09 EST 2003
0.7 release. many critical merge and patch set calculation
bugs fixed. groups merged with URLs, "monotone db migrate"
necessary. directory renames and explicit rename certs
supported. added SMTP support. incorporated adns library,
avoiding gethostbyname(). new queue commands.
Sat Oct 18 22:10:09 EDT 2003
0.6 release. more stability and bug fixing, including fix to
some silent failures in LCA calculation. some minor new
features: persistent attributes (eg. 'the execute bit'),
rename and log commands. performance of cvs importer greatly
improved, lua system upgraded to 5.0, much expanded
documentation.
Sat Sep 27 11:50:08 EDT 2003
0.5 release. stability and bug fixing. many UI issues
addressed, including SHA1 completion, persistent options, new
revert command and new diff modes. database migration,
inspection and debugging interfaces added. LCS algorithm and
line-merger overhauled. several multi-depot bugs
fixed. existing depot databases should be migrated (depot.cgi
migratedb).
Thu Sep 4 15:40:07 EDT 2003
0.4 release. monotone is now self-hosting. database
compatibility broken since 0.3. depot uses RSA signatures now,
not mac keys. many bugs removed. depot database compatibility
broken. database schemas should now remain stable (or be
provided with safe schema-upgrading function).
Mon Aug 25 18:00:37 EDT 2003
0.3 release. database compatibility broken. packet format
compatibility broken. dropped boost sandbox library dependency.
redid networking to support private HTTP+CGI depots along with
netnews. wrote depot. added 'propagate' command to move changes
between branches asymmetrically. rewrote testsuite in autotest.
cleaned up command line processing. expanded testsuite. improved
user-friendly error reporting.
Fri Aug 8 10:20:01 EDT 2003
0.2 release. database compatibility broken. dropped many
library dependencies. hand-reimplemented xdelta, parts of
nana. incorporated subset of cryptopp and sqlite into
sources. added RCS and CVS importer. switched to piecewise
reconstruction. generally much more robust storage system.
scalability tests against real world CVS archives show
performance gap with CVS closing, but still present.
Sun Apr 6 20:20:42 EDT 2003
initial release