This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Is cygwin1.dll backward compatible?


On Saturday 20 Oct 01, egor duda writes:
> ... if/when cygwin team is about to make backward-incompatible
> changes to cygwin, dll is supposed to be renamed to cygwin2.dll
> 
> you can look at "api major" and "api minor" lines in output from
> 'cygcheck -v -s'. "api minor" is incremented whenever anybody makes
> forward-incompatible changes to dll (such as exporting new function or
> data from dll). "api major" is incremented whenever backward-
> incompatible change is made.

There is an entry in the API section of the FAQ, but it has not been
updated since B19:

Q.  What version numbers are associated with Cygwin?

A.  There is a cygwin.dll major version number that gets incremented
    every time we make a new Cygwin release available. This
    corresponds to the name of the release (e.g. beta 19's major
    number is "19"). There is also a cygwin.dll minor version
    number. If we release an update of the library for an existing
    release, the minor number would be incremented.
    
    There are also Cygwin API major and minor numbers. The major
    number tracks important non-backward-compatible interface changes
    to the API. An executable linked with an earlier major number will
    not be compatible with the latest DLL. The minor number tracks
    significant API additions or changes that will not break older
    executables but may be required by newly compiled ones.
    
    Then there is a shared memory region compatibity version
    number. It is incremented when incompatible changes are made to
    the shared memory region or to any named shared mutexes,
    semaphores, etc.
    
    Finally there is a mount point registry version number which keeps
    track of non-backwards-compatible changes to the registry mount
    table layout. This has been "B15.0" since the beta 15 release.

It would be great if someone could provide the text that brings it up
to date.  Maybe I just have to remove references to "beta 19"?  What
about the mount table?  I guess now it's "mount v2"?

Thanks,
David


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]