summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Greiling <mike@pixelcog.com>2018-05-31 13:24:28 -0500
committerMike Greiling <mike@pixelcog.com>2018-05-31 13:24:28 -0500
commit0a1b2a009ed9f0a527344bdf8ffcd46833e30111 (patch)
tree5191663c9b015296605fb6f687d56aba04f1b07c
parente57ad62d488b15b9e65ea63f4ab78e51336318a5 (diff)
downloadgitlab-ce-0a1b2a009ed9f0a527344bdf8ffcd46833e30111.tar.gz
update the frontend dependency guide with distinction between dependencies and devDependencies
-rw-r--r--doc/development/new_fe_guide/dependencies.md19
1 files changed, 18 insertions, 1 deletions
diff --git a/doc/development/new_fe_guide/dependencies.md b/doc/development/new_fe_guide/dependencies.md
index 3417d77a06d..12a4f089d41 100644
--- a/doc/development/new_fe_guide/dependencies.md
+++ b/doc/development/new_fe_guide/dependencies.md
@@ -1,3 +1,20 @@
# Dependencies
-> TODO: Add Dependencies \ No newline at end of file
+## Adding Dependencies.
+
+GitLab uses `yarn` to manage dependencies. These dependencies are defined in
+two groups within `package.json`, `dependencies` and `devDependencies`. For
+our purposes, we consider anything that is required to compile our production
+assets a "production" dependency. That is, anything required to run the
+`webpack` script with `NODE_ENV=production`. Tools like `eslint`, `karma`, and
+various plugins and tools used in development are considered `devDependencies`.
+This distinction is used by omnibus to determine which dependencies it requires
+when building GitLab.
+
+Exceptions are made for some tools that we require in the
+`gitlab:assets:compile` CI job such as `webpack-bundle-analyzer` to analyze our
+production assets post-compile.
+
+---
+
+> TODO: Add Dependencies