summaryrefslogtreecommitdiff
path: root/usr.bin/cvs/rcs.h
AgeCommit message (Collapse)Author
2008-06-15Support the addition of new files in branches.Tobias Stoeckmann
ok joris
2008-06-12You successfully cast 'remove dead cruft'Joris Vink
2008-03-02rcs_errno is gone: zap rcs_errstr() and rcs_errstrs[] as well.Tobias Stoeckmann
ok joris
2008-03-01goodbye rcs_errno - we didnt use you and you wont be missedJoris Vink
2008-02-27prevent file racesJoris Vink
ok tobias@
2008-02-09- always remove the additional .0 from magic branches, even whenJoris Vink
running the log command. - change getlog.c so it will add any .0 for magic branches in its output if required less confusing for rcs_translate_tag();
2008-01-31Handle magic branch numbers in OpenCVS as well.Tobias Stoeckmann
OK joris@
2008-01-31add changed lines support to log and rlog (the + and - stuff)Joris Vink
from Pierre Riteau;
2008-01-10rcs_getrev is gone: zap prototype, too.Tobias Stoeckmann
2008-01-10Our keyword expansion had a big flaw, due to this construction:Tobias Stoeckmann
if (!(mode & RCS_KWEXP_NONE)) RCS_KWEXP_NONE is defined to 0, so expansion happened always. Left shifted all RCS_KWEXP defines and looked carefully at hard-coded values throughout the code.
2008-01-10Slap in -b support for tag command. It was missing for a full regress testTobias Stoeckmann
as of now.
2007-11-11Added CVS keyword "Locker". Although it is a dummy function, it's alreadyTobias Stoeckmann
enough for OpenBSD's src/.
2007-10-09Added proper support for branch revisions in annotate.Tobias Stoeckmann
OK niallo@, twice :)
2007-09-24add support to commit modified files to branches.Joris Vink
2007-09-13Added annotate support for local and remote repositories. Behaves likeTobias Stoeckmann
GNU cvs but is a little faster. OK joris@, ray@, xsa@
2007-06-01add support for local and remote branch checkout. for example,Niall O'Higgins
cvs co -rOPENBSD_3_0 works now. along the way, simplify and rationalise code and fix a few nits. ok joris@ xsa@ ray@
2007-05-26add support for Mdocdate rcs keyword in opencvs too.Niall O'Higgins
also add check for strftime return in date keyword parsing while here. requested by jmc@, ok ray@
2007-02-19Fix const inconsistencies, void pointer artithmetic and a few otherOtto Moerbeek
things. now gcc -Wall and lint are more happy. ok joris@ xsa@
2007-02-12remove unused leftovers from openrcs; OK joris@.Xavier Santolaria
2007-01-14move things around in rcs_rev_getbuf() and rcs_rev_write_fd()Joris Vink
so that we do keyword expansion on-the-fly if required instead of obtaining the revision in memory first, running over the revision lines while expanding keywords and only then writing them to the fd or memory buffer. this drasticly decreases cpu usage by opencvs on very large trees (like src). OK niallo@
2007-01-13add missing prototypes for some new rcs api functions;Joris Vink
2007-01-12major re-work of the RCS api. this results in 100x performance improvements ↵Niall O'Higgins
in some places and much reduced memory usage. note that only checkout has been fully converted to use the new high-performance functions. other codepaths (e.g. update) still use the old method which is provided for backwards compatibility. we can convert the remaining slow bits over to the new api piece-by-piece. "commit this, now" joris@ brad@ tested, too.
2007-01-12complete binary support for opencvs,Joris Vink
adding/importing binary files now works too partially taken from openrcs
2006-06-09handle `cvs tag -F'; input && OK joris@.Xavier Santolaria
2006-06-01major rewrite of some rcs parsing stuff:Joris Vink
- rework rcs_getrev() to correctly support branches - rework rcs_translate_tag() to correctly translate given symbols or branches into their matching revisions - rework rcs_rev_add() to correctly update its 'next' pointers and insert the new revision in the correct place on the list. - rework rcs_head_get() to return the latest revision on the default branch if it has been set or the normal HEAD revision otherwise. - no longer access the rf_head member of the RCSFILE struct manually, use the rcs_head_get() function which correctly returns the HEAD revision, there might be a default branch that has to be used. - for now, when commiting a new revision reset the default branch.
2006-05-31have rcs_translate_tag translate branches too, whichJoris Vink
allows us to completely use branches for diffing, logging, updating, etc.. more branches support coming up!
2006-05-30look inside the Attic if a specified RCS file cannot be foundJoris Vink
in the normal repository, and a way to identify an RCS file in the Attic in the RCSFILE struct. will come in handy later on.
2006-05-29add rcs_translate_tag which will translate a specifiedJoris Vink
revision or symbol given to us on the command line into the matching revision in the RCS file (if any);
2006-05-28add rf_dead field to RCSFILE which can tell usJoris Vink
if an RCSFILE is dead, will come in usefull later in commands.
2006-05-28enable merging on update. if your file in your working copyJoris Vink
has been modified by yourself and there is a newer revision we try and merge them together. if the merge fails and has conflicts it will mark them inside the file, you will need to resolve these by hand first before you will be able to commit your modified file. works transparent with gnu cvs, as it is suppose to.
2006-05-27commit the new opencvs code, i have been hacking onJoris Vink
this for the past 2 weeks now and it should go in at the start of the hackathon so others can help out. this code is a lot safer, smarter, faster and best of all it is actually doing what it is suppose to do! basic checkout, update, status, diff and commit are working in local mode only. there is no support for any remote setups now.
2006-04-14- swap a hack for a slightly nicer hack using a global variable. this avoidsNiall O'Higgins
adding a really nasty hack to make some upcoming rlog fixes from joris work. ok joris@
2006-04-13add support for the openrcs -o'range' option.Joris Vink
-o allows users to delete revisions in the specified RCS files. example: rcs -o1.4:1.6 foo deletes revisions 1.4 - 1.6 rcs -o1.3 foo deletes revision 1.3 joint work with niallo@ okay niallo@
2006-04-13fix -z option for openrcs, this was broken by xsaJoris Vink
when he yanked the code out of rcs.c and placed it in rcstime.c. struct tm ltb, *tb; tb = &ltb; return (tb); isn't really the most perfect idiom to return a value to the caller, now is it? as a bonus -z for rlog now works too. okay niallo@
2006-04-10change rcs_kwexp_set() return type to void and simplify its use. OK niallo@.Xavier Santolaria
2006-03-30first part of supporting branches in openrcs. right now we can onlyJoris Vink
check them out. commit is not working yet, but will be soon. tested by myself and ray@ okay ray@
2006-03-30Add rlog -r[REV1][:][REV2] supportRay Lai
From Pierre-Yves Ritschard. OK niallo@
2006-03-30 - Comment fixes.Ray Lai
- int rcsnum_cpy() -> void rcsnum_cpy(). - Check for overflow in rcsnum_cpy(). OK niallo@
2006-03-27- properly implement GNU file modes. basically, checkout will inheritNiall O'Higgins
permissions from rcs file and initial checkin will inherit permissions from working file. problem spotted by uwe@ ok ray@ xsa@
2006-03-27rcs_comment_set() will never return non-zero; change its return type to void.Xavier Santolaria
OK ray@.
2006-03-27rcs_desc_set() will never return non-zero; change its return type to void.Xavier Santolaria
OK niallo@.
2006-03-24Fix RCS_KWEXP_INVAL() macro.Ray Lai
Pointed out by Theo. Okay xsa@.
2006-03-23Use TAILQ_HEAD() macro instead of custom struct definition.Ray Lai
From Pierre-Yves Ritschard. OK xsa@
2006-03-09move joris' timezone support into rcstime.c; more work to be done there.Xavier Santolaria
OK joris@.
2006-03-07-z support for RCS;Joris Vink
2006-03-05our deltatexts were sometimes different from gnu. rcs_getrev() wasNiall O'Higgins
unconditionally doing keyword expansion, even when this wasn't what we wanted e.g. in checkout_rev() and cvs_checkout_rev(). so: - change semantics of rcs_getrev() to not do keyword expansion - add an rcs.c api function rcs_kwexp_buf() which does this - change both checkout_rev() and cvs_checkout_rev() to use this function. eyeballed by xsa, joris and Ray Lai
2006-02-09- move rcs_kw-related data into rcs.h and de-static the keyword array. thisNiall O'Higgins
allows access from outside rcs.c and will be needed for upcoming features in ci(1). ok joris@ xsa@
2006-01-02more includes cleanup;Xavier Santolaria
2005-12-30- zap unused 'rf_ref' member of RCSFILE structure.Niall O'Higgins
spotted by joris@
2005-12-27- implement lazy-parsing of rcs files, that is only parse as much as weNiall O'Higgins
need. this can save us much work, particularly with very large rcs files. first of a few important performance improvements. ok joris@