Skip to contentSkip to conversation

Is the BitKeeper network protocol documented?

DISCUSSION Theodore Ts'o 2 participants 2 messages Jan 20, 2003

lore
Share & tools
lore
#0 lore raw
Quoted 5 lines · David Schwartz

I think you're ignoring the way the GPL defines the "source code".
The GPL defines the "source code" as the preferred form for modifying the program. If the preferred form of a work for purposes of modifying it is live access to a BK repository, then that's the "source code" for GPL purposes.

You're being insane. The preferred form is still the C source code. You can store that C source code in many different forms. For example, I could put that C code in a CVS source repository, and only allow access to it to core team members. Many other open source projects do things that way. And many other open source projects don't give raw access to the CVS source repository. Sometimes this is necessary, if they need to fix a security bug before it is announced to the entire world.

The GPL does not guarantee that you have access to the master source repository, whether it is stored in a CVS repository, or a BK repository. And whether the master source repository is CVS or BK, the preferred form for modifications doesn't change; it's still the C code.

Quoted 4 lines

You are using the conventional meaning of "source code", which is
roughly, "whatever you compile to get the executable". However, this is not the "source" for GPL purposes. For GPL purposes, the source is the preferred form of a work for purposes of modifying it.

You don't run emacs on the CVS ,v files, or BK's s. files. That's just the container. It's no different from the raw underlying filesystem format.

You need to distinguish between how information is stored, and the information itself. If I store the master repository for an Open Source project on an NTFS filesystem, does that make the NTFS filesystem part of the preferred form? Of course not! You might have to use the NTFS filesystem to get at the sources, but that doesn't make it part of the preferred form.

- Ted

#1 lore raw
Quoted 10 lines

You need to distinguish between how information is stored, and the information itself. If I store the master repository for an Open Source project on an NTFS filesystem, does that make the NTFS filesystem part of the preferred form? Of course not! You might have
to use the NTFS filesystem to get at the sources, but that doesn't make it part of the preferred form.

- Ted

I think you're deliberately glossing over a critical distinction.
Taking source code out of an NTFS filesystem and packing it up in a tarball doesn't obfuscate the source and in no way affects your ability to make changes to the source. Taking source code out of a version control system obfuscates the rationale for changes and makes it more difficult to modify the source.

I would argue that if the development of a project is based around a
version control system, checking the source out of that version control system is equivalent to stripping the comments out of it.

The GPL makes it quite clear that the source code is not "whatever
you can compile to get the executable", but it is the source code in its preferred form for modifications. The loss of metainformation helpful to modifying the source, such as check-in comments, is different from the loss of irrelevant metainformation such as inode numbers.

DS