]> gitweb.factorcode.org Git - factor.git/commitdiff
contributing: more on license and extra/
authorrazetime <rraghu.11502@gmail,com>
Wed, 6 Dec 2023 00:40:01 +0000 (08:40 +0800)
committerrazetime <rraghu.11502@gmail,com>
Wed, 6 Dec 2023 00:40:01 +0000 (08:40 +0800)
CONTRIBUTING.md

index b18f58d3c494cab7562db29ba1bd4c9554c9e8b2..97a8465fac6f2959a6d8b10926cd3e290bbcbae9 100644 (file)
@@ -18,12 +18,19 @@ If you have found a bug in the Factor distribution,
 
 # Submitting a patch
 - Commits must always have vocabulary names prefixed to them. The commit history has many good examples of this.
-- All contributions to Factor are mandatorily under the [BSD license](LICENSE.txt). In new vocabularies, you must add a comment stating the same. You can use your real name or your GitHub nickname. See [this](https://github.com/factor/factor/blob/master/core/alien/alien.factor) for an example.
+- All contributions to Factor are mandatorily under the [BSD license](LICENSE.txt). In new vocabularies, you must add a comment stating the same. You can use your real name or your GitHub nickname.
+  See [this](https://github.com/factor/factor/blob/master/core/alien/alien.factor) for an example.
+  - If you are fixing a bug, then you can add your name to the copyright section of the vocabulary, adding the current year if necessary.
+  - If you make substantial changes and want to be included in bugfixes and future direction for the vocabulary, add you name to the vocabulary's AUTHORS.txt as well.
 - Do not submit features without creating a feature request first.
 - The repository is structured as follows:
-  - `basis`: Vocabularies which are well-tested, well-documented, and have a wide variety of uses.
+  - `basis`: Vocabularies which are well-tested, well-documented, and have a wide variety of uses in Factor code.
   - `core`: The set of libraries which are most integral for compiling and bootstrapping Factor. **Do not modify core unless it is absolutely necessary.** You will need to re-bootstrap to check your changes.
-  - `extra`: Vocabularies which are in beta. May be unstable or broken. This is where most contributions start.
+  - `extra`: Vocabularies which are in beta, or do not necessarily belong in the other vocabularies.
+    - These vocabularies may be unstable or broken.
+    - Most new vocabulary contributions start.
+    - Notably, `extra/webapps` contains the code for the [Concatenative Wiki](https://concatenative.org), [Factor pastebin](https://paste.factorcode.org),
+      [Planet Factor](https://planet.factorcode.org) and many others. You can contribute to them from here.
   - `misc`: Code which is not written in Factor, but holds significance to Factor users. Some editor-specific plugins reside here.
   - `vm`: Factor C++ VM files.
   - `work`: Store your personal work here. You cannot contribute changes made to work, as it is reserved for the user.