Show More
The requested changes are too big and content was truncated. Show full diff
@@ -48,5 +48,6 b' recursive-include rhodecode/public/js *' | |||
|
48 | 48 | recursive-include rhodecode/templates * |
|
49 | 49 | |
|
50 | 50 | # skip any tests files |
|
51 | recursive-exclude result * | |
|
51 | 52 | recursive-exclude rhodecode/tests * |
|
52 | 53 |
@@ -1,4 +1,3 b'' | |||
|
1 | .DEFAULT_GOAL := help | |
|
2 | 1 |
|
|
3 | 2 | # set by: PATH_TO_OUTDATED_PACKAGES=/some/path/outdated_packages.py |
|
4 | 3 | OUTDATED_PACKAGES = ${PATH_TO_OUTDATED_PACKAGES} |
@@ -8,91 +7,129 b' WEBPACK=./node_binaries/webpack' | |||
|
8 | 7 | GRUNT=./node_binaries/grunt |
|
9 | 8 | |
|
10 | 9 | .PHONY: clean |
|
11 | clean: ## full clean | |
|
10 | ## Cleanup compiled and cache py files | |
|
11 | clean: | |
|
12 | 12 | make test-clean |
|
13 | 13 | find . -type f \( -iname '*.c' -o -iname '*.pyc' -o -iname '*.so' -o -iname '*.orig' \) -exec rm '{}' ';' |
|
14 | 14 | |
|
15 | 15 | |
|
16 | 16 | .PHONY: test |
|
17 |
|
|
|
17 | ## run test-clean and tests | |
|
18 | test: | |
|
18 | 19 | make test-clean |
|
19 | 20 | make test-only |
|
20 | 21 | |
|
21 | 22 | |
|
22 | 23 | .PHONY:test-clean |
|
23 |
|
|
|
24 | ## run test-clean and tests | |
|
25 | test-clean: | |
|
24 | 26 | rm -rf coverage.xml htmlcov junit.xml pylint.log result |
|
25 | 27 | find . -type d -name "__pycache__" -prune -exec rm -rf '{}' ';' |
|
26 | 28 | find . -type f \( -iname '.coverage.*' \) -exec rm '{}' ';' |
|
27 | 29 | |
|
28 | 30 | |
|
29 | 31 | .PHONY: test-only |
|
30 | test-only: ## run tests | |
|
32 | ## Run tests only without cleanup | |
|
33 | test-only: | |
|
31 | 34 | PYTHONHASHSEED=random \ |
|
32 | 35 | py.test -x -vv -r xw -p no:sugar \ |
|
33 |
|
|
|
34 | rhodecode | |
|
35 | ||
|
36 | --cov-report=term-missing --cov-report=html \ | |
|
37 | --cov=rhodecode rhodecode | |
|
36 | 38 | |
|
37 | 39 | .PHONY: test-only-mysql |
|
38 |
|
|
|
40 | ## run tests against mysql | |
|
41 | test-only-mysql: | |
|
39 | 42 | PYTHONHASHSEED=random \ |
|
40 | 43 | py.test -x -vv -r xw -p no:sugar \ |
|
41 |
|
|
|
44 | --cov-report=term-missing --cov-report=html \ | |
|
42 | 45 | --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "mysql://root:qweqwe@localhost/rhodecode_test?charset=utf8"}}' \ |
|
43 | rhodecode | |
|
46 | --cov=rhodecode rhodecode | |
|
44 | 47 | |
|
45 | 48 | |
|
46 | 49 | .PHONY: test-only-postgres |
|
47 |
|
|
|
50 | ## run tests against postgres | |
|
51 | test-only-postgres: | |
|
48 | 52 | PYTHONHASHSEED=random \ |
|
49 | 53 | py.test -x -vv -r xw -p no:sugar \ |
|
50 |
|
|
|
54 | --cov-report=term-missing --cov-report=html \ | |
|
51 | 55 | --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "postgresql://postgres:qweqwe@localhost/rhodecode_test"}}' \ |
|
52 | rhodecode | |
|
56 | --cov=rhodecode rhodecode | |
|
53 | 57 | |
|
54 | 58 | .PHONY: docs |
|
55 |
|
|
|
59 | ## build docs | |
|
60 | docs: | |
|
56 | 61 | (cd docs; nix-build default.nix -o result; make clean html) |
|
57 | 62 | |
|
58 | 63 | |
|
59 | 64 | .PHONY: docs-clean |
|
60 |
|
|
|
65 | ## Cleanup docs | |
|
66 | docs-clean: | |
|
61 | 67 | (cd docs; make clean) |
|
62 | 68 | |
|
63 | 69 | |
|
64 | 70 | .PHONY: docs-cleanup |
|
65 |
|
|
|
71 | ## Cleanup docs | |
|
72 | docs-cleanup: | |
|
66 | 73 | (cd docs; make cleanup) |
|
67 | 74 | |
|
68 | 75 | |
|
69 | 76 | .PHONY: web-build |
|
70 |
|
|
|
77 | ## Build JS packages static/js | |
|
78 | web-build: | |
|
71 | 79 | NODE_PATH=$(NODE_PATH) $(GRUNT) |
|
72 | 80 | |
|
73 | 81 | |
|
74 | .PHONY: generate-pkgs | |
|
75 | generate-pkgs: ## generate new python packages | |
|
76 | nix-shell pkgs/shell-generate.nix --command "pip2nix generate --licenses" | |
|
77 | ||
|
78 | ||
|
79 | 82 | .PHONY: pip-packages |
|
80 |
|
|
|
83 | ## show outdated packages | |
|
84 | pip-packages: | |
|
81 | 85 | python ${OUTDATED_PACKAGES} |
|
82 | 86 | |
|
83 | 87 | |
|
84 | .PHONY: generate-js-pkgs | |
|
85 | generate-js-pkgs: ## generate js packages | |
|
86 | rm -rf node_modules && \ | |
|
87 | nix-shell pkgs/shell-generate.nix --command "node2nix --input package.json -o pkgs/node-packages.nix -e pkgs/node-env.nix -c pkgs/node-default.nix -d --flatten --nodejs-8" && \ | |
|
88 | sed -i -e 's/http:\/\//https:\/\//g' pkgs/node-packages.nix | |
|
88 | .PHONY: sdist | |
|
89 | ## Build sdist | |
|
90 | sdist: | |
|
91 | python setup.py sdist | |
|
89 | 92 | |
|
90 | 93 | |
|
91 | .PHONY: generate-license-meta | |
|
92 | generate-license-meta: ## Generate license metadata | |
|
93 | nix-build pkgs/license-generate.nix -o result-license && \ | |
|
94 | cat result-license/licenses.json | python -m json.tool > rhodecode/config/licenses.json | |
|
94 | # Default command on calling make | |
|
95 | .DEFAULT_GOAL := show-help | |
|
95 | 96 | |
|
96 | .PHONY: help | |
|
97 | help: | |
|
98 | @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-24s\033[0m %s\n", $$1, $$2}' | |
|
97 | .PHONY: show-help | |
|
98 | show-help: | |
|
99 | @echo "$$(tput bold)Available rules:$$(tput sgr0)" | |
|
100 | @echo | |
|
101 | @sed -n -e "/^## / { \ | |
|
102 | h; \ | |
|
103 | s/.*//; \ | |
|
104 | :doc" \ | |
|
105 | -e "H; \ | |
|
106 | n; \ | |
|
107 | s/^## //; \ | |
|
108 | t doc" \ | |
|
109 | -e "s/:.*//; \ | |
|
110 | G; \ | |
|
111 | s/\\n## /---/; \ | |
|
112 | s/\\n/ /g; \ | |
|
113 | p; \ | |
|
114 | }" ${MAKEFILE_LIST} \ | |
|
115 | | LC_ALL='C' sort --ignore-case \ | |
|
116 | | awk -F '---' \ | |
|
117 | -v ncol=$$(tput cols) \ | |
|
118 | -v indent=19 \ | |
|
119 | -v col_on="$$(tput setaf 6)" \ | |
|
120 | -v col_off="$$(tput sgr0)" \ | |
|
121 | '{ \ | |
|
122 | printf "%s%*s%s ", col_on, -indent, $$1, col_off; \ | |
|
123 | n = split($$2, words, " "); \ | |
|
124 | line_length = ncol - indent; \ | |
|
125 | for (i = 1; i <= n; i++) { \ | |
|
126 | line_length -= length(words[i]) + 1; \ | |
|
127 | if (line_length <= 0) { \ | |
|
128 | line_length = ncol - indent - length(words[i]) - 1; \ | |
|
129 | printf "\n%*s ", -indent, " "; \ | |
|
130 | } \ | |
|
131 | printf "%s ", words[i]; \ | |
|
132 | } \ | |
|
133 | printf "\n"; \ | |
|
134 | }' | |
|
135 |
@@ -47,20 +47,22 b' let' | |||
|
47 | 47 | |
|
48 | 48 | # Evaluates to the last segment of a file system path. |
|
49 | 49 | basename = path: with pkgs.lib; last (splitString "/" path); |
|
50 | startsWith = prefix: full: let | |
|
51 | actualPrefix = builtins.substring 0 (builtins.stringLength prefix) full; | |
|
52 | in actualPrefix == prefix; | |
|
50 | 53 | |
|
51 | 54 | # source code filter used as arugment to builtins.filterSource. |
|
52 | 55 | src-filter = path: type: with pkgs.lib; |
|
53 | 56 | let |
|
54 | 57 | ext = last (splitString "." path); |
|
58 | parts = last (splitString "/" path); | |
|
55 | 59 | in |
|
56 | 60 | !builtins.elem (basename path) [ |
|
57 | 61 | ".git" ".hg" "__pycache__" ".eggs" ".idea" ".dev" |
|
58 | 62 | "node_modules" "node_binaries" |
|
59 | 63 | "build" "data" "result" "tmp"] && |
|
60 | 64 | !builtins.elem ext ["egg-info" "pyc"] && |
|
61 | # TODO: johbo: This check is wrong, since "path" contains an absolute path, | |
|
62 | # it would still be good to restore it since we want to ignore "result-*". | |
|
63 | !hasPrefix "result" path; | |
|
65 | !startsWith "result" (basename path); | |
|
64 | 66 | |
|
65 | 67 | sources = |
|
66 | 68 | let |
@@ -69,6 +71,7 b' let' | |||
|
69 | 71 | all |
|
70 | 72 | isString |
|
71 | 73 | attrValues; |
|
74 | ||
|
72 | 75 | sourcesConfig = pkgs.config.rc.sources or {}; |
|
73 | 76 | in |
|
74 | 77 | # Ensure that sources are configured as strings. Using a path |
@@ -76,8 +79,8 b' let' | |||
|
76 | 79 | assert all isString (attrValues sourcesConfig); |
|
77 | 80 | sourcesConfig; |
|
78 | 81 | |
|
82 | rhodecode-enterprise-ce-src = builtins.filterSource src-filter ./.; | |
|
79 | 83 | version = builtins.readFile "${rhodecode-enterprise-ce-src}/rhodecode/VERSION"; |
|
80 | rhodecode-enterprise-ce-src = builtins.filterSource src-filter ./.; | |
|
81 | 84 | |
|
82 | 85 | nodeEnv = import ./pkgs/node-default.nix { |
|
83 | 86 | inherit |
@@ -122,6 +125,12 b' let' | |||
|
122 | 125 | ''; |
|
123 | 126 | |
|
124 | 127 | releaseName = "RhodeCodeEnterpriseCE-${version}"; |
|
128 | pythonWithEnv = | |
|
129 | self.python.buildEnv.override { | |
|
130 | extraLibs = [ ] ++ self.rhodecode-enterprise-ce.propagatedBuildInputs; | |
|
131 | ignoreCollisions = true; | |
|
132 | #--set PYTHONHASHSEED random TODO | |
|
133 | }; | |
|
125 | 134 | in super.rhodecode-enterprise-ce.override (attrs: { |
|
126 | 135 | inherit |
|
127 | 136 | doCheck |
@@ -142,6 +151,7 b' let' | |||
|
142 | 151 | pythonCommunityOverrides; |
|
143 | 152 | |
|
144 | 153 | pythonPackages = self; |
|
154 | rc_pkgs = pkgs; | |
|
145 | 155 | }; |
|
146 | 156 | |
|
147 | 157 | buildInputs = |
@@ -153,16 +163,23 b' let' | |||
|
153 | 163 | propagatedBuildInputs = |
|
154 | 164 | attrs.propagatedBuildInputs or [] ++ [ |
|
155 | 165 | |
|
156 |
|
|
|
166 | ]; | |
|
167 | ||
|
168 | preBuild = '' | |
|
169 | export NIX_PATH=nixpkgs=${pkgs.path} | |
|
170 | export SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt | |
|
157 | 171 | |
|
158 | LC_ALL = "en_US.UTF-8"; | |
|
159 | LOCALE_ARCHIVE = | |
|
160 | if pkgs.stdenv.isLinux | |
|
161 | then "${pkgs.glibcLocales}/lib/locale/locale-archive" | |
|
162 | else ""; | |
|
172 | echo "[BEGIN]: Building frontend assets" | |
|
173 | ${linkNodePackages} | |
|
174 | make web-build | |
|
175 | rm -fr node_modules | |
|
176 | rm -fr node_binaries | |
|
177 | echo "[DONE ]: Building frontend assets" | |
|
178 | ''; | |
|
163 | 179 | |
|
164 | 180 | # Add bin directory to path so that tests can find 'rhodecode'. |
|
165 | 181 | preCheck = '' |
|
182 | echo "Expanding PATH with $out/bin directory" | |
|
166 | 183 | export PATH="$out/bin:$PATH" |
|
167 | 184 | ''; |
|
168 | 185 | |
@@ -178,15 +195,6 b' let' | |||
|
178 | 195 | rm -rf $out/lib/${self.python.libPrefix}/site-packages/rhodecode/tests |
|
179 | 196 | ''; |
|
180 | 197 | |
|
181 | preBuild = '' | |
|
182 | echo "[BEGIN]: Building frontend assets" | |
|
183 | ${linkNodePackages} | |
|
184 | make web-build | |
|
185 | rm -fr node_modules | |
|
186 | rm -fr node_binaries | |
|
187 | echo "[DONE ]: Building frontend assets" | |
|
188 | ''; | |
|
189 | ||
|
190 | 198 | postInstall = '' |
|
191 | 199 | # check required files |
|
192 | 200 | STATIC_CHECK="/robots.txt /502.html |
@@ -210,31 +218,34 b' let' | |||
|
210 | 218 | cp configs/production.ini $out/etc |
|
211 | 219 | echo "[DONE ]: saved enterprise-ce production.ini into $out/etc" |
|
212 | 220 | |
|
221 | echo "saving env in $out/etc/env_vars.txt" | |
|
222 | touch $out/etc/env_vars.txt | |
|
223 | echo "# RhodeCode build env vars" >> $out/etc/env_vars.txt | |
|
224 | echo "LOCALE_ARCHIVE=\"${pkgs.glibcLocales}/lib/locale/locale-archive\"" >> $out/etc/env_vars.txt | |
|
225 | echo "LC_ALL=\"en_US.UTF-8\"" >> $out/etc/env_vars.txt | |
|
226 | ||
|
213 | 227 | cp -Rf rhodecode/config/rcextensions $out/etc/rcextensions.tmpl |
|
214 | 228 | echo "[DONE ]: saved enterprise-ce rcextensions into $out/etc/rcextensions.tmpl" |
|
215 | 229 | |
|
216 | 230 | # python based programs need to be wrapped |
|
217 | 231 | mkdir -p $out/bin |
|
218 | 232 | |
|
233 | # expose python | |
|
234 | ln -s ${pythonWithEnv}/bin/python $out/bin/ | |
|
235 | ||
|
219 | 236 | # required binaries from dependencies |
|
220 |
ln -s ${ |
|
|
221 |
ln -s ${ |
|
|
222 |
ln -s ${ |
|
|
223 |
ln -s ${ |
|
|
224 |
ln -s ${ |
|
|
225 |
ln -s ${ |
|
|
226 |
ln -s ${ |
|
|
227 |
ln -s ${ |
|
|
237 | ln -s ${pythonWithEnv}/bin/supervisorctl $out/bin/ | |
|
238 | ln -s ${pythonWithEnv}/bin/supervisord $out/bin/ | |
|
239 | ln -s ${pythonWithEnv}/bin/paster $out/bin/ | |
|
240 | ln -s ${pythonWithEnv}/bin/channelstream $out/bin/ | |
|
241 | ln -s ${pythonWithEnv}/bin/celery $out/bin/ | |
|
242 | ln -s ${pythonWithEnv}/bin/gunicorn $out/bin/ | |
|
243 | ln -s ${pythonWithEnv}/bin/prequest $out/bin/ | |
|
244 | ln -s ${pythonWithEnv}/bin/pserve $out/bin/ | |
|
228 | 245 | |
|
229 | 246 | echo "[DONE ]: created symlinks into $out/bin" |
|
230 | DEPS="$out/bin/supervisorctl \ | |
|
231 | $out/bin/supervisord \ | |
|
232 | $out/bin/paster \ | |
|
233 | $out/bin/channelstream \ | |
|
234 | $out/bin/celery \ | |
|
235 | $out/bin/gunicorn \ | |
|
236 | $out/bin/prequest \ | |
|
237 | $out/bin/pserve" | |
|
247 | DEPS=" | |
|
248 | " | |
|
238 | 249 | |
|
239 | 250 | # wrap only dependency scripts, they require to have full PYTHONPATH set |
|
240 | 251 | # to be able to import all packages |
@@ -251,17 +262,17 b' let' | |||
|
251 | 262 | # rhodecode-tools don't need wrapping |
|
252 | 263 | ln -s ${self.rhodecode-tools}/bin/rhodecode-* $out/bin/ |
|
253 | 264 | |
|
254 | # expose sources of CE | |
|
255 | ln -s $out $out/etc/rhodecode_enterprise_ce_source | |
|
256 | ||
|
257 | 265 | # expose static files folder |
|
258 | 266 | cp -Rf $out/lib/${self.python.libPrefix}/site-packages/rhodecode/public/ $out/etc/static |
|
259 | 267 | chmod 755 -R $out/etc/static |
|
260 | 268 | |
|
269 | # expose sources of rhodecode-enterprise-ce | |
|
270 | ln -s $out $out/etc/rhodecode_enterprise_ce_source | |
|
261 | 271 | ''; |
|
272 | ||
|
262 | 273 | }); |
|
274 | }; | |
|
263 | 275 | |
|
264 | }; | |
|
265 | 276 | |
|
266 | 277 | basePythonPackages = with builtins; |
|
267 | 278 | if isAttrs pythonPackages then |
@@ -270,13 +281,8 b' let' | |||
|
270 | 281 | getAttr pythonPackages pkgs; |
|
271 | 282 | |
|
272 | 283 | pythonGeneratedPackages = import ./pkgs/python-packages.nix { |
|
273 | inherit | |
|
274 | pkgs; | |
|
275 | inherit | |
|
276 | (pkgs) | |
|
277 | fetchurl | |
|
278 | fetchgit | |
|
279 | fetchhg; | |
|
284 | inherit pkgs; | |
|
285 | inherit (pkgs) fetchurl fetchgit fetchhg; | |
|
280 | 286 | }; |
|
281 | 287 | |
|
282 | 288 | pythonCommunityOverrides = import ./pkgs/python-packages-overrides.nix { |
@@ -1,6 +1,6 b'' | |||
|
1 | 1 | { |
|
2 | 2 | "name": "rhodecode-enterprise", |
|
3 |
"version": " |
|
|
3 | "version": "4.19.0", | |
|
4 | 4 | "private": true, |
|
5 | 5 | "description" : "RhodeCode JS packaged", |
|
6 | 6 | "license": "SEE LICENSE IN LICENSE.txt", |
@@ -14,4 +14,12 b' rec {' | |||
|
14 | 14 | pythonPackages; |
|
15 | 15 | }; |
|
16 | 16 | |
|
17 | pip-tools = pythonPackages.pip-tools; | |
|
18 | ||
|
19 | setuptools = pythonPackages.setuptools; | |
|
20 | ||
|
21 | wheel = pythonPackages.wheel; | |
|
22 | ||
|
23 | pip = pythonPackages.pip; | |
|
24 | ||
|
17 | 25 | } |
@@ -1,8 +1,8 b'' | |||
|
1 |
# This file has been generated by node2nix 1. |
|
|
1 | # This file has been generated by node2nix 1.8.0. Do not edit! | |
|
2 | 2 | |
|
3 | 3 | {pkgs ? import <nixpkgs> { |
|
4 | 4 | inherit system; |
|
5 |
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs- |
|
|
5 | }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}: | |
|
6 | 6 | |
|
7 | 7 | let |
|
8 | 8 | nodeEnv = import ./node-env.nix { |
@@ -11,7 +11,7 b' let' | |||
|
11 | 11 | |
|
12 | 12 | cat > $out/bin/tar <<EOF |
|
13 | 13 | #! ${stdenv.shell} -e |
|
14 | $(type -p tar) "\$@" --warning=no-unknown-keyword | |
|
14 | $(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore | |
|
15 | 15 | EOF |
|
16 | 16 | |
|
17 | 17 | chmod +x $out/bin/tar |
@@ -57,7 +57,7 b' let' | |||
|
57 | 57 | |
|
58 | 58 | # Recursively composes the dependencies of a package |
|
59 | 59 | composePackage = { name, packageName, src, dependencies ? [], ... }@args: |
|
60 | '' | |
|
60 | builtins.addErrorContext "while evaluating node package '${packageName}'" '' | |
|
61 | 61 | DIR=$(pwd) |
|
62 | 62 | cd $TMPDIR |
|
63 | 63 | |
@@ -72,7 +72,7 b' let' | |||
|
72 | 72 | packageDir="$(find . -maxdepth 1 -type d | tail -1)" |
|
73 | 73 | |
|
74 | 74 | # Restore write permissions to make building work |
|
75 |
find "$packageDir" -type d - |
|
|
75 | find "$packageDir" -type d -exec chmod u+x {} \; | |
|
76 | 76 | chmod -R u+w "$packageDir" |
|
77 | 77 | |
|
78 | 78 | # Move the extracted tarball into the output folder |
@@ -219,7 +219,16 b' let' | |||
|
219 | 219 | packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads. |
|
220 | 220 | } |
|
221 | 221 | |
|
222 | packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories. | |
|
222 | if(dependency.resolved) { | |
|
223 | packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided | |
|
224 | } else { | |
|
225 | packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories. | |
|
226 | } | |
|
227 | ||
|
228 | if(dependency.from !== undefined) { // Adopt from property if one has been provided | |
|
229 | packageObj["_from"] = dependency.from; | |
|
230 | } | |
|
231 | ||
|
223 | 232 | fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2)); |
|
224 | 233 | } |
|
225 | 234 | |
@@ -308,50 +317,11 b' let' | |||
|
308 | 317 | ''; |
|
309 | 318 | }; |
|
310 | 319 | |
|
311 | # Builds and composes an NPM package including all its dependencies | |
|
312 | buildNodePackage = | |
|
313 | { name | |
|
314 | , packageName | |
|
315 | , version | |
|
316 | , dependencies ? [] | |
|
317 | , buildInputs ? [] | |
|
318 | , production ? true | |
|
319 | , npmFlags ? "" | |
|
320 | , dontNpmInstall ? false | |
|
321 | , bypassCache ? false | |
|
322 | , preRebuild ? "" | |
|
323 | , dontStrip ? true | |
|
324 | , unpackPhase ? "true" | |
|
325 | , buildPhase ? "true" | |
|
326 | , ... }@args: | |
|
327 | ||
|
320 | prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}: | |
|
328 | 321 | let |
|
329 | 322 | forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com"; |
|
330 | extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ]; | |
|
331 | 323 | in |
|
332 | stdenv.mkDerivation ({ | |
|
333 | name = "node-${name}-${version}"; | |
|
334 | buildInputs = [ tarWrapper python nodejs ] | |
|
335 | ++ stdenv.lib.optional (stdenv.isLinux) utillinux | |
|
336 | ++ stdenv.lib.optional (stdenv.isDarwin) libtool | |
|
337 | ++ buildInputs; | |
|
338 | ||
|
339 | inherit dontStrip; # Stripping may fail a build for some package deployments | |
|
340 | inherit dontNpmInstall preRebuild unpackPhase buildPhase; | |
|
341 | ||
|
342 | compositionScript = composePackage args; | |
|
343 | pinpointDependenciesScript = pinpointDependenciesOfPackage args; | |
|
344 | ||
|
345 | passAsFile = [ "compositionScript" "pinpointDependenciesScript" ]; | |
|
346 | ||
|
347 | installPhase = '' | |
|
348 | # Create and enter a root node_modules/ folder | |
|
349 | mkdir -p $out/lib/node_modules | |
|
350 | cd $out/lib/node_modules | |
|
351 | ||
|
352 | # Compose the package and all its dependencies | |
|
353 | source $compositionScriptPath | |
|
354 | ||
|
324 | '' | |
|
355 | 325 | # Pinpoint the versions of all dependencies to the ones that are actually being used |
|
356 | 326 | echo "pinpointing versions of dependencies..." |
|
357 | 327 | source $pinpointDependenciesScriptPath |
@@ -375,24 +345,80 b' let' | |||
|
375 | 345 | runHook preRebuild |
|
376 | 346 | |
|
377 | 347 | ${stdenv.lib.optionalString bypassCache '' |
|
378 | if [ ! -f package-lock.json ] | |
|
379 | then | |
|
380 | echo "No package-lock.json file found, reconstructing..." | |
|
381 | node ${reconstructPackageLock} | |
|
382 | fi | |
|
348 | ${stdenv.lib.optionalString reconstructLock '' | |
|
349 | if [ -f package-lock.json ] | |
|
350 | then | |
|
351 | echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!" | |
|
352 | echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!" | |
|
353 | rm package-lock.json | |
|
354 | else | |
|
355 | echo "No package-lock.json file found, reconstructing..." | |
|
356 | fi | |
|
357 | ||
|
358 | node ${reconstructPackageLock} | |
|
359 | ''} | |
|
383 | 360 | |
|
384 | 361 | node ${addIntegrityFieldsScript} |
|
385 | 362 | ''} |
|
386 | 363 | |
|
387 | 364 | npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild |
|
388 | 365 | |
|
389 | if [ "$dontNpmInstall" != "1" ] | |
|
366 | if [ "''${dontNpmInstall-}" != "1" ] | |
|
390 | 367 | then |
|
391 | 368 | # NPM tries to download packages even when they already exist if npm-shrinkwrap is used. |
|
392 | 369 | rm -f npm-shrinkwrap.json |
|
393 | 370 | |
|
394 | 371 | npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install |
|
395 | 372 | fi |
|
373 | ''; | |
|
374 | ||
|
375 | # Builds and composes an NPM package including all its dependencies | |
|
376 | buildNodePackage = | |
|
377 | { name | |
|
378 | , packageName | |
|
379 | , version | |
|
380 | , dependencies ? [] | |
|
381 | , buildInputs ? [] | |
|
382 | , production ? true | |
|
383 | , npmFlags ? "" | |
|
384 | , dontNpmInstall ? false | |
|
385 | , bypassCache ? false | |
|
386 | , reconstructLock ? false | |
|
387 | , preRebuild ? "" | |
|
388 | , dontStrip ? true | |
|
389 | , unpackPhase ? "true" | |
|
390 | , buildPhase ? "true" | |
|
391 | , ... }@args: | |
|
392 | ||
|
393 | let | |
|
394 | extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ]; | |
|
395 | in | |
|
396 | stdenv.mkDerivation ({ | |
|
397 | name = "node_${name}-${version}"; | |
|
398 | buildInputs = [ tarWrapper python nodejs ] | |
|
399 | ++ stdenv.lib.optional (stdenv.isLinux) utillinux | |
|
400 | ++ stdenv.lib.optional (stdenv.isDarwin) libtool | |
|
401 | ++ buildInputs; | |
|
402 | ||
|
403 | inherit nodejs; | |
|
404 | ||
|
405 | inherit dontStrip; # Stripping may fail a build for some package deployments | |
|
406 | inherit dontNpmInstall preRebuild unpackPhase buildPhase; | |
|
407 | ||
|
408 | compositionScript = composePackage args; | |
|
409 | pinpointDependenciesScript = pinpointDependenciesOfPackage args; | |
|
410 | ||
|
411 | passAsFile = [ "compositionScript" "pinpointDependenciesScript" ]; | |
|
412 | ||
|
413 | installPhase = '' | |
|
414 | # Create and enter a root node_modules/ folder | |
|
415 | mkdir -p $out/lib/node_modules | |
|
416 | cd $out/lib/node_modules | |
|
417 | ||
|
418 | # Compose the package and all its dependencies | |
|
419 | source $compositionScriptPath | |
|
420 | ||
|
421 | ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }} | |
|
396 | 422 | |
|
397 | 423 | # Create symlink to the deployed executable folder, if applicable |
|
398 | 424 | if [ -d "$out/lib/node_modules/.bin" ] |
@@ -431,14 +457,13 b' let' | |||
|
431 | 457 | , npmFlags ? "" |
|
432 | 458 | , dontNpmInstall ? false |
|
433 | 459 | , bypassCache ? false |
|
460 | , reconstructLock ? false | |
|
434 | 461 | , dontStrip ? true |
|
435 | 462 | , unpackPhase ? "true" |
|
436 | 463 | , buildPhase ? "true" |
|
437 | 464 | , ... }@args: |
|
438 | 465 | |
|
439 | 466 | let |
|
440 | forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com"; | |
|
441 | ||
|
442 | 467 | extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ]; |
|
443 | 468 | |
|
444 | 469 | nodeDependencies = stdenv.mkDerivation ({ |
@@ -473,39 +498,13 b' let' | |||
|
473 | 498 | fi |
|
474 | 499 | ''} |
|
475 | 500 | |
|
476 | # Pinpoint the versions of all dependencies to the ones that are actually being used | |
|
477 | echo "pinpointing versions of dependencies..." | |
|
501 | # Go to the parent folder to make sure that all packages are pinpointed | |
|
478 | 502 | cd .. |
|
479 | 503 | ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} |
|
480 | 504 | |
|
481 | source $pinpointDependenciesScriptPath | |
|
482 | cd ${packageName} | |
|
483 | ||
|
484 | # Patch the shebangs of the bundled modules to prevent them from | |
|
485 | # calling executables outside the Nix store as much as possible | |
|
486 | patchShebangs . | |
|
487 | ||
|
488 | export HOME=$PWD | |
|
505 | ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }} | |
|
489 | 506 | |
|
490 | ${stdenv.lib.optionalString bypassCache '' | |
|
491 | if [ ! -f package-lock.json ] | |
|
492 | then | |
|
493 | echo "No package-lock.json file found, reconstructing..." | |
|
494 | node ${reconstructPackageLock} | |
|
495 | fi | |
|
496 | ||
|
497 | node ${addIntegrityFieldsScript} | |
|
498 | ''} | |
|
499 | ||
|
500 | npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild | |
|
501 | ||
|
502 | ${stdenv.lib.optionalString (!dontNpmInstall) '' | |
|
503 | # NPM tries to download packages even when they already exist if npm-shrinkwrap is used. | |
|
504 | rm -f npm-shrinkwrap.json | |
|
505 | ||
|
506 | npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install | |
|
507 | ''} | |
|
508 | ||
|
507 | # Expose the executables that were installed | |
|
509 | 508 | cd .. |
|
510 | 509 | ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} |
|
511 | 510 | |
@@ -531,7 +530,8 b' let' | |||
|
531 | 530 | # Provide the dependencies in a development shell through the NODE_PATH environment variable |
|
532 | 531 | inherit nodeDependencies; |
|
533 | 532 | shellHook = stdenv.lib.optionalString (dependencies != []) '' |
|
534 | export NODE_PATH=$nodeDependencies/lib/node_modules | |
|
533 | export NODE_PATH=${nodeDependencies}/lib/node_modules | |
|
534 | export PATH="${nodeDependencies}/bin:$PATH" | |
|
535 | 535 | ''; |
|
536 | 536 | }; |
|
537 | 537 | in |
@@ -1,4 +1,4 b'' | |||
|
1 |
# This file has been generated by node2nix 1. |
|
|
1 | # This file has been generated by node2nix 1.8.0. Do not edit! | |
|
2 | 2 | |
|
3 | 3 | {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}: |
|
4 | 4 | |
@@ -211,13 +211,13 b' let' | |||
|
211 | 211 | sha512 = "yiUk09opTEnE1lK+tb501ENb+yQBi4p++Ep0eGJAHesVYKVMPNgPphVKkIizkDaU+n0SE+zXfTsRbYyOMDYXSg=="; |
|
212 | 212 | }; |
|
213 | 213 | }; |
|
214 |
"@polymer/polymer-3. |
|
|
214 | "@polymer/polymer-3.4.1" = { | |
|
215 | 215 | name = "_at_polymer_slash_polymer"; |
|
216 | 216 | packageName = "@polymer/polymer"; |
|
217 |
version = "3. |
|
|
218 | src = fetchurl { | |
|
219 |
url = "https://registry.npmjs.org/@polymer/polymer/-/polymer-3. |
|
|
220 | sha512 = "8KaB48tzyMjdsHdxo5KvCAaqmTe7rYDzQAoj/pyEfq9Fp4YfUaS+/xqwYj0GbiDAUNzwkmEQ7dw9cgnRNdKO8A=="; | |
|
217 | version = "3.4.1"; | |
|
218 | src = fetchurl { | |
|
219 | url = "https://registry.npmjs.org/@polymer/polymer/-/polymer-3.4.1.tgz"; | |
|
220 | sha512 = "KPWnhDZibtqKrUz7enIPOiO4ZQoJNOuLwqrhV2MXzIt3VVnUVJVG5ORz4Z2sgO+UZ+/UZnPD0jqY+jmw/+a9mQ=="; | |
|
221 | 221 | }; |
|
222 | 222 | }; |
|
223 | 223 | "@types/clone-0.1.30" = { |
@@ -499,13 +499,13 b' let' | |||
|
499 | 499 | sha1 = "82ffb02b29e662ae53bdc20af15947706739c536"; |
|
500 | 500 | }; |
|
501 | 501 | }; |
|
502 |
"ajv-6.12. |
|
|
502 | "ajv-6.12.2" = { | |
|
503 | 503 | name = "ajv"; |
|
504 | 504 | packageName = "ajv"; |
|
505 |
version = "6.12. |
|
|
506 | src = fetchurl { | |
|
507 |
url = "https://registry.npmjs.org/ajv/-/ajv-6.12. |
|
|
508 | sha512 = "D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw=="; | |
|
505 | version = "6.12.2"; | |
|
506 | src = fetchurl { | |
|
507 | url = "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz"; | |
|
508 | sha512 = "k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ=="; | |
|
509 | 509 | }; |
|
510 | 510 | }; |
|
511 | 511 | "ajv-keywords-3.4.1" = { |
@@ -1472,6 +1472,15 b' let' | |||
|
1472 | 1472 | sha512 = "ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA=="; |
|
1473 | 1473 | }; |
|
1474 | 1474 | }; |
|
1475 | "bn.js-5.1.1" = { | |
|
1476 | name = "bn.js"; | |
|
1477 | packageName = "bn.js"; | |
|
1478 | version = "5.1.1"; | |
|
1479 | src = fetchurl { | |
|
1480 | url = "https://registry.npmjs.org/bn.js/-/bn.js-5.1.1.tgz"; | |
|
1481 | sha512 = "IUTD/REb78Z2eodka1QZyyEk66pciRcP6Sroka0aI3tG/iwIdYLrBD62RsubR7vqdt3WyX8p4jxeatzmRSphtA=="; | |
|
1482 | }; | |
|
1483 | }; | |
|
1475 | 1484 | "boolbase-1.0.0" = { |
|
1476 | 1485 | name = "boolbase"; |
|
1477 | 1486 | packageName = "boolbase"; |
@@ -1553,13 +1562,13 b' let' | |||
|
1553 | 1562 | sha1 = "21e0abfaf6f2029cf2fafb133567a701d4135524"; |
|
1554 | 1563 | }; |
|
1555 | 1564 | }; |
|
1556 |
"browserify-sign-4.0 |
|
|
1565 | "browserify-sign-4.1.0" = { | |
|
1557 | 1566 | name = "browserify-sign"; |
|
1558 | 1567 | packageName = "browserify-sign"; |
|
1559 |
version = "4.0 |
|
|
1560 | src = fetchurl { | |
|
1561 |
url = "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0 |
|
|
1562 | sha1 = "aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298"; | |
|
1568 | version = "4.1.0"; | |
|
1569 | src = fetchurl { | |
|
1570 | url = "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.1.0.tgz"; | |
|
1571 | sha512 = "VYxo7cDCeYUoBZ0ZCy4UyEUCP3smyBd4DRQM5nrFS1jJjPJjX7rP3oLRpPoWfkhQfyJ0I9ZbHbKafrFD/SGlrg=="; | |
|
1563 | 1572 | }; |
|
1564 | 1573 | }; |
|
1565 | 1574 | "browserify-zlib-0.2.0" = { |
@@ -1679,22 +1688,22 b' let' | |||
|
1679 | 1688 | sha1 = "b534e7c734c4f81ec5fbe8aca2ad24354b962c6c"; |
|
1680 | 1689 | }; |
|
1681 | 1690 | }; |
|
1682 |
"caniuse-db-1.0.300010 |
|
|
1691 | "caniuse-db-1.0.30001058" = { | |
|
1683 | 1692 | name = "caniuse-db"; |
|
1684 | 1693 | packageName = "caniuse-db"; |
|
1685 |
version = "1.0.300010 |
|
|
1686 | src = fetchurl { | |
|
1687 |
url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.300010 |
|
|
1688 | sha512 = "2RKrB2hkLCW/8Uj32oaXj0O+N9ROo0/BF0EueWHwgs6AeeSiL+rCSsbICR3ayBJOZavgcFx65ZCw7QiafsoUFQ=="; | |
|
1689 | }; | |
|
1690 | }; | |
|
1691 |
"caniuse-lite-1.0.300010 |
|
|
1694 | version = "1.0.30001058"; | |
|
1695 | src = fetchurl { | |
|
1696 | url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30001058.tgz"; | |
|
1697 | sha512 = "DhGWGTuINKNdqrJzw6ag7RnkuHtg3B4m/b4SsvqAN3n1UXzSXtINS2ReBFOA5mO3TukrW39Fr9pUWW02i8Zvcw=="; | |
|
1698 | }; | |
|
1699 | }; | |
|
1700 | "caniuse-lite-1.0.30001058" = { | |
|
1692 | 1701 | name = "caniuse-lite"; |
|
1693 | 1702 | packageName = "caniuse-lite"; |
|
1694 |
version = "1.0.300010 |
|
|
1695 | src = fetchurl { | |
|
1696 |
url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.300010 |
|
|
1697 | sha512 = "igMQ4dlqnf4tWv0xjaaE02op9AJ2oQzXKjWf4EuAHFN694Uo9/EfPVIPJcmn2WkU9RqozCxx5e2KPcVClHDbDw=="; | |
|
1703 | version = "1.0.30001058"; | |
|
1704 | src = fetchurl { | |
|
1705 | url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001058.tgz"; | |
|
1706 | sha512 = "UiRZmBYd1HdVVdFKy7PuLVx9e2NS7SMyx7QpWvFjiklYrLJKpLd19cRnRNqlw4zYa7vVejS3c8JUVobX241zHQ=="; | |
|
1698 | 1707 | }; |
|
1699 | 1708 | }; |
|
1700 | 1709 | "caseless-0.12.0" = { |
@@ -2552,13 +2561,13 b' let' | |||
|
2552 | 2561 | sha1 = "3a83a904e54353287874c564b7549386849a98c9"; |
|
2553 | 2562 | }; |
|
2554 | 2563 | }; |
|
2555 |
"electron-to-chromium-1.3.4 |
|
|
2564 | "electron-to-chromium-1.3.437" = { | |
|
2556 | 2565 | name = "electron-to-chromium"; |
|
2557 | 2566 | packageName = "electron-to-chromium"; |
|
2558 |
version = "1.3.4 |
|
|
2559 | src = fetchurl { | |
|
2560 |
url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.4 |
|
|
2561 | sha512 = "4bVdSeJScR8fT7ERveLWbxemY5uXEHVseqMRyORosiKcTUSGtVwBkV8uLjXCqoFLeImA57Z9hbz3TOid01U4Hw=="; | |
|
2567 | version = "1.3.437"; | |
|
2568 | src = fetchurl { | |
|
2569 | url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.437.tgz"; | |
|
2570 | sha512 = "PBQn2q68ErqMyBUABh9Gh8R6DunGky8aB5y3N5lPM7OVpldwyUbAK5AX9WcwE/5F6ceqvQ+iQLYkJYRysAs6Bg=="; | |
|
2562 | 2571 | }; |
|
2563 | 2572 | }; |
|
2564 | 2573 | "elliptic-6.5.2" = { |
@@ -2624,13 +2633,13 b' let' | |||
|
2624 | 2633 | sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26"; |
|
2625 | 2634 | }; |
|
2626 | 2635 | }; |
|
2627 |
"entities-2.0. |
|
|
2636 | "entities-2.0.2" = { | |
|
2628 | 2637 | name = "entities"; |
|
2629 | 2638 | packageName = "entities"; |
|
2630 |
version = "2.0. |
|
|
2631 | src = fetchurl { | |
|
2632 |
url = "https://registry.npmjs.org/entities/-/entities-2.0. |
|
|
2633 | sha512 = "D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw=="; | |
|
2639 | version = "2.0.2"; | |
|
2640 | src = fetchurl { | |
|
2641 | url = "https://registry.npmjs.org/entities/-/entities-2.0.2.tgz"; | |
|
2642 | sha512 = "dmD3AvJQBUjKpcNkoqr+x+IF0SdRtPz9Vk0uTy4yWqga9ibB6s4v++QFWNohjiUGoMlF552ZvNyXDxz5iW0qmw=="; | |
|
2634 | 2643 | }; |
|
2635 | 2644 | }; |
|
2636 | 2645 | "errno-0.1.7" = { |
@@ -3101,13 +3110,13 b' let' | |||
|
3101 | 3110 | sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f"; |
|
3102 | 3111 | }; |
|
3103 | 3112 | }; |
|
3104 |
"fsevents-1.2.1 |
|
|
3113 | "fsevents-1.2.13" = { | |
|
3105 | 3114 | name = "fsevents"; |
|
3106 | 3115 | packageName = "fsevents"; |
|
3107 |
version = "1.2.1 |
|
|
3108 | src = fetchurl { | |
|
3109 |
url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.1 |
|
|
3110 | sha512 = "Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q=="; | |
|
3116 | version = "1.2.13"; | |
|
3117 | src = fetchurl { | |
|
3118 | url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz"; | |
|
3119 | sha512 = "oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw=="; | |
|
3111 | 3120 | }; |
|
3112 | 3121 | }; |
|
3113 | 3122 | "function-bind-1.1.1" = { |
@@ -3281,13 +3290,13 b' let' | |||
|
3281 | 3290 | sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364"; |
|
3282 | 3291 | }; |
|
3283 | 3292 | }; |
|
3284 |
"graceful-fs-4.2. |
|
|
3293 | "graceful-fs-4.2.4" = { | |
|
3285 | 3294 | name = "graceful-fs"; |
|
3286 | 3295 | packageName = "graceful-fs"; |
|
3287 |
version = "4.2. |
|
|
3288 | src = fetchurl { | |
|
3289 |
url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2. |
|
|
3290 | sha512 = "a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ=="; | |
|
3296 | version = "4.2.4"; | |
|
3297 | src = fetchurl { | |
|
3298 | url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz"; | |
|
3299 | sha512 = "WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="; | |
|
3291 | 3300 | }; |
|
3292 | 3301 | }; |
|
3293 | 3302 | "grunt-0.4.5" = { |
@@ -3524,13 +3533,13 b' let' | |||
|
3524 | 3533 | sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f"; |
|
3525 | 3534 | }; |
|
3526 | 3535 | }; |
|
3527 |
"hash-base-3.0 |
|
|
3536 | "hash-base-3.1.0" = { | |
|
3528 | 3537 | name = "hash-base"; |
|
3529 | 3538 | packageName = "hash-base"; |
|
3530 |
version = "3.0 |
|
|
3531 | src = fetchurl { | |
|
3532 |
url = "https://registry.npmjs.org/hash-base/-/hash-base-3.0 |
|
|
3533 | sha1 = "5fc8686847ecd73499403319a6b0a3f3f6ae4918"; | |
|
3539 | version = "3.1.0"; | |
|
3540 | src = fetchurl { | |
|
3541 | url = "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz"; | |
|
3542 | sha512 = "1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA=="; | |
|
3534 | 3543 | }; |
|
3535 | 3544 | }; |
|
3536 | 3545 | "hash.js-1.1.7" = { |
@@ -4262,13 +4271,13 b' let' | |||
|
4262 | 4271 | sha1 = "46c3fec8c1892b12b0833db9bc7622176dbab34b"; |
|
4263 | 4272 | }; |
|
4264 | 4273 | }; |
|
4265 |
"jshint-2.11. |
|
|
4274 | "jshint-2.11.1" = { | |
|
4266 | 4275 | name = "jshint"; |
|
4267 | 4276 | packageName = "jshint"; |
|
4268 |
version = "2.11. |
|
|
4269 | src = fetchurl { | |
|
4270 |
url = "https://registry.npmjs.org/jshint/-/jshint-2.11. |
|
|
4271 | sha512 = "ooaD/hrBPhu35xXW4gn+o3SOuzht73gdBuffgJzrZBJZPGgGiiTvJEgTyxFvBO2nz0+X1G6etF8SzUODTlLY6Q=="; | |
|
4277 | version = "2.11.1"; | |
|
4278 | src = fetchurl { | |
|
4279 | url = "https://registry.npmjs.org/jshint/-/jshint-2.11.1.tgz"; | |
|
4280 | sha512 = "WXWePB8ssAH3DlD05IoqolsY6arhbll/1+i2JkRPpihQAuiNaR/gSt8VKIcxpV5m6XChP0hCwESQUqpuQMA8Tg=="; | |
|
4272 | 4281 | }; |
|
4273 | 4282 | }; |
|
4274 | 4283 | "jshint-2.9.7" = { |
@@ -4730,22 +4739,22 b' let' | |||
|
4730 | 4739 | sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="; |
|
4731 | 4740 | }; |
|
4732 | 4741 | }; |
|
4733 |
"mime-db-1.4 |
|
|
4742 | "mime-db-1.44.0" = { | |
|
4734 | 4743 | name = "mime-db"; |
|
4735 | 4744 | packageName = "mime-db"; |
|
4736 |
version = "1.4 |
|
|
4737 | src = fetchurl { | |
|
4738 |
url = "https://registry.npmjs.org/mime-db/-/mime-db-1.4 |
|
|
4739 | sha512 = "+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ=="; | |
|
4740 | }; | |
|
4741 | }; | |
|
4742 |
"mime-types-2.1.2 |
|
|
4745 | version = "1.44.0"; | |
|
4746 | src = fetchurl { | |
|
4747 | url = "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz"; | |
|
4748 | sha512 = "/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg=="; | |
|
4749 | }; | |
|
4750 | }; | |
|
4751 | "mime-types-2.1.27" = { | |
|
4743 | 4752 | name = "mime-types"; |
|
4744 | 4753 | packageName = "mime-types"; |
|
4745 |
version = "2.1.2 |
|
|
4746 | src = fetchurl { | |
|
4747 |
url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.2 |
|
|
4748 | sha512 = "01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ=="; | |
|
4754 | version = "2.1.27"; | |
|
4755 | src = fetchurl { | |
|
4756 | url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz"; | |
|
4757 | sha512 = "JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w=="; | |
|
4749 | 4758 | }; |
|
4750 | 4759 | }; |
|
4751 | 4760 | "mimic-fn-2.1.0" = { |
@@ -4838,13 +4847,13 b' let' | |||
|
4838 | 4847 | sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ=="; |
|
4839 | 4848 | }; |
|
4840 | 4849 | }; |
|
4841 |
"moment-2.2 |
|
|
4850 | "moment-2.25.3" = { | |
|
4842 | 4851 | name = "moment"; |
|
4843 | 4852 | packageName = "moment"; |
|
4844 |
version = "2.2 |
|
|
4845 | src = fetchurl { | |
|
4846 |
url = "https://registry.npmjs.org/moment/-/moment-2.2 |
|
|
4847 | sha512 = "bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg=="; | |
|
4853 | version = "2.25.3"; | |
|
4854 | src = fetchurl { | |
|
4855 | url = "https://registry.npmjs.org/moment/-/moment-2.25.3.tgz"; | |
|
4856 | sha512 = "PuYv0PHxZvzc15Sp8ybUCoQ+xpyPWvjOuK72a5ovzp2LI32rJXOiIfyoFoYvG3s6EwwrdkMyWuRiEHSZRLJNdg=="; | |
|
4848 | 4857 | }; |
|
4849 | 4858 | }; |
|
4850 | 4859 | "mousetrap-1.6.5" = { |
@@ -4874,13 +4883,13 b' let' | |||
|
4874 | 4883 | sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8"; |
|
4875 | 4884 | }; |
|
4876 | 4885 | }; |
|
4877 |
"nan-2.14. |
|
|
4886 | "nan-2.14.1" = { | |
|
4878 | 4887 | name = "nan"; |
|
4879 | 4888 | packageName = "nan"; |
|
4880 |
version = "2.14. |
|
|
4881 | src = fetchurl { | |
|
4882 |
url = "https://registry.npmjs.org/nan/-/nan-2.14. |
|
|
4883 | sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg=="; | |
|
4889 | version = "2.14.1"; | |
|
4890 | src = fetchurl { | |
|
4891 | url = "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz"; | |
|
4892 | sha512 = "isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw=="; | |
|
4884 | 4893 | }; |
|
4885 | 4894 | }; |
|
4886 | 4895 | "nanomatch-1.2.13" = { |
@@ -6071,6 +6080,15 b' let' | |||
|
6071 | 6080 | sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw=="; |
|
6072 | 6081 | }; |
|
6073 | 6082 | }; |
|
6083 | "readable-stream-3.6.0" = { | |
|
6084 | name = "readable-stream"; | |
|
6085 | packageName = "readable-stream"; | |
|
6086 | version = "3.6.0"; | |
|
6087 | src = fetchurl { | |
|
6088 | url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz"; | |
|
6089 | sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA=="; | |
|
6090 | }; | |
|
6091 | }; | |
|
6074 | 6092 | "readdirp-2.2.1" = { |
|
6075 | 6093 | name = "readdirp"; |
|
6076 | 6094 | packageName = "readdirp"; |
@@ -6296,13 +6314,13 b' let' | |||
|
6296 | 6314 | sha1 = "97f717b69d48784f5f526a6c5aa8ffdda055a4d1"; |
|
6297 | 6315 | }; |
|
6298 | 6316 | }; |
|
6299 |
"resolve-1.1 |
|
|
6317 | "resolve-1.17.0" = { | |
|
6300 | 6318 | name = "resolve"; |
|
6301 | 6319 | packageName = "resolve"; |
|
6302 |
version = "1.1 |
|
|
6303 | src = fetchurl { | |
|
6304 |
url = "https://registry.npmjs.org/resolve/-/resolve-1.1 |
|
|
6305 | sha512 = "LarL/PIKJvc09k1jaeT4kQb/8/7P+qV4qSnN2K80AES+OHdfZELAKVOBjxsvtToT/uLOfFbvYvKfZmV8cee7nA=="; | |
|
6320 | version = "1.17.0"; | |
|
6321 | src = fetchurl { | |
|
6322 | url = "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz"; | |
|
6323 | sha512 = "ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w=="; | |
|
6306 | 6324 | }; |
|
6307 | 6325 | }; |
|
6308 | 6326 | "resolve-cwd-2.0.0" = { |
@@ -6404,13 +6422,13 b' let' | |||
|
6404 | 6422 | sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="; |
|
6405 | 6423 | }; |
|
6406 | 6424 | }; |
|
6407 |
"safe-buffer-5.2. |
|
|
6425 | "safe-buffer-5.2.1" = { | |
|
6408 | 6426 | name = "safe-buffer"; |
|
6409 | 6427 | packageName = "safe-buffer"; |
|
6410 |
version = "5.2. |
|
|
6411 | src = fetchurl { | |
|
6412 |
url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2. |
|
|
6413 | sha512 = "fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="; | |
|
6428 | version = "5.2.1"; | |
|
6429 | src = fetchurl { | |
|
6430 | url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"; | |
|
6431 | sha512 = "rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="; | |
|
6414 | 6432 | }; |
|
6415 | 6433 | }; |
|
6416 | 6434 | "safe-regex-1.1.0" = { |
@@ -6980,13 +6998,13 b' let' | |||
|
6980 | 6998 | sha1 = "9f5772413952135c6fefbf40afe6a4faa88b4bb5"; |
|
6981 | 6999 | }; |
|
6982 | 7000 | }; |
|
6983 |
"sweetalert2-9.10.1 |
|
|
7001 | "sweetalert2-9.10.13" = { | |
|
6984 | 7002 | name = "sweetalert2"; |
|
6985 | 7003 | packageName = "sweetalert2"; |
|
6986 |
version = "9.10.1 |
|
|
6987 | src = fetchurl { | |
|
6988 |
url = "https://registry.npmjs.org/sweetalert2/-/sweetalert2-9.10.1 |
|
|
6989 | sha512 = "RnarmbDGTPmwecJbaVdq5LvlzbVReIOtPk0huPnXOE19G00xMxGcTY0wjt9AjwsexUnLivLXc3b6nD6+D6NlGg=="; | |
|
7004 | version = "9.10.13"; | |
|
7005 | src = fetchurl { | |
|
7006 | url = "https://registry.npmjs.org/sweetalert2/-/sweetalert2-9.10.13.tgz"; | |
|
7007 | sha512 = "JiZtO9SQdnS/Uvlqw5MlWpGpYVqH/eBQi7u61+Oxba7ZA4vfX0tSdyzQsiMk56HTUw8Nk8IvNPvfbt3WR3FOsQ=="; | |
|
6990 | 7008 | }; |
|
6991 | 7009 | }; |
|
6992 | 7010 | "tapable-0.2.9" = { |
@@ -7133,13 +7151,13 b' let' | |||
|
7133 | 7151 | sha1 = "30c6203e1e66b841a88701ed8858f1725d94b026"; |
|
7134 | 7152 | }; |
|
7135 | 7153 | }; |
|
7136 |
"tslib-1.1 |
|
|
7154 | "tslib-1.13.0" = { | |
|
7137 | 7155 | name = "tslib"; |
|
7138 | 7156 | packageName = "tslib"; |
|
7139 |
version = "1.1 |
|
|
7140 | src = fetchurl { | |
|
7141 |
url = "https://registry.npmjs.org/tslib/-/tslib-1.1 |
|
|
7142 | sha512 = "aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA=="; | |
|
7157 | version = "1.13.0"; | |
|
7158 | src = fetchurl { | |
|
7159 | url = "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz"; | |
|
7160 | sha512 = "i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q=="; | |
|
7143 | 7161 | }; |
|
7144 | 7162 | }; |
|
7145 | 7163 | "tty-browserify-0.0.0" = { |
@@ -7205,13 +7223,13 b' let' | |||
|
7205 | 7223 | sha512 = "Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw=="; |
|
7206 | 7224 | }; |
|
7207 | 7225 | }; |
|
7208 |
"uglify-js-3.9. |
|
|
7226 | "uglify-js-3.9.3" = { | |
|
7209 | 7227 | name = "uglify-js"; |
|
7210 | 7228 | packageName = "uglify-js"; |
|
7211 |
version = "3.9. |
|
|
7212 | src = fetchurl { | |
|
7213 |
url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9. |
|
|
7214 | sha512 = "JUPoL1jHsc9fOjVFHdQIhqEEJsQvfKDjlubcCilu8U26uZ73qOg8VsN8O1jbuei44ZPlwL7kmbAdM4tzaUvqnA=="; | |
|
7229 | version = "3.9.3"; | |
|
7230 | src = fetchurl { | |
|
7231 | url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.3.tgz"; | |
|
7232 | sha512 = "r5ImcL6QyzQGVimQoov3aL2ZScywrOgBXGndbWrdehKoSvGe/RmiE5Jpw/v+GvxODt6l2tpBXwA7n+qZVlHBMA=="; | |
|
7215 | 7233 | }; |
|
7216 | 7234 | }; |
|
7217 | 7235 | "uglify-to-browserify-1.0.2" = { |
@@ -7731,7 +7749,7 b' let' | |||
|
7731 | 7749 | args = { |
|
7732 | 7750 | name = "rhodecode-enterprise"; |
|
7733 | 7751 | packageName = "rhodecode-enterprise"; |
|
7734 |
version = " |
|
|
7752 | version = "4.19.0"; | |
|
7735 | 7753 | src = ./..; |
|
7736 | 7754 | dependencies = [ |
|
7737 | 7755 | sources."@polymer/font-roboto-3.0.2" |
@@ -7757,7 +7775,7 b' let' | |||
|
7757 | 7775 | sources."@polymer/paper-toast-3.0.1" |
|
7758 | 7776 | sources."@polymer/paper-toggle-button-3.0.1" |
|
7759 | 7777 | sources."@polymer/paper-tooltip-3.0.1" |
|
7760 |
sources."@polymer/polymer-3. |
|
|
7778 | sources."@polymer/polymer-3.4.1" | |
|
7761 | 7779 | sources."@types/clone-0.1.30" |
|
7762 | 7780 | sources."@types/node-6.14.10" |
|
7763 | 7781 | sources."@types/parse5-2.2.34" |
@@ -7824,7 +7842,11 b' let' | |||
|
7824 | 7842 | sources."array-unique-0.3.2" |
|
7825 | 7843 | sources."asap-2.0.6" |
|
7826 | 7844 | sources."asn1-0.2.4" |
|
7827 | sources."asn1.js-4.10.1" | |
|
7845 | (sources."asn1.js-4.10.1" // { | |
|
7846 | dependencies = [ | |
|
7847 | sources."bn.js-4.11.8" | |
|
7848 | ]; | |
|
7849 | }) | |
|
7828 | 7850 | (sources."assert-1.5.0" // { |
|
7829 | 7851 | dependencies = [ |
|
7830 | 7852 | sources."inherits-2.0.1" |
@@ -7960,7 +7982,7 b' let' | |||
|
7960 | 7982 | sources."binary-extensions-1.13.1" |
|
7961 | 7983 | sources."bindings-1.5.0" |
|
7962 | 7984 | sources."bluebird-3.7.2" |
|
7963 |
sources."bn.js- |
|
|
7985 | sources."bn.js-5.1.1" | |
|
7964 | 7986 | sources."boolbase-1.0.0" |
|
7965 | 7987 | sources."boom-2.10.1" |
|
7966 | 7988 | sources."brace-expansion-1.1.11" |
@@ -7973,8 +7995,17 b' let' | |||
|
7973 | 7995 | sources."browserify-aes-1.2.0" |
|
7974 | 7996 | sources."browserify-cipher-1.0.1" |
|
7975 | 7997 | sources."browserify-des-1.0.2" |
|
7976 | sources."browserify-rsa-4.0.1" | |
|
7977 | sources."browserify-sign-4.0.4" | |
|
7998 | (sources."browserify-rsa-4.0.1" // { | |
|
7999 | dependencies = [ | |
|
8000 | sources."bn.js-4.11.8" | |
|
8001 | ]; | |
|
8002 | }) | |
|
8003 | (sources."browserify-sign-4.1.0" // { | |
|
8004 | dependencies = [ | |
|
8005 | sources."readable-stream-3.6.0" | |
|
8006 | sources."string_decoder-1.3.0" | |
|
8007 | ]; | |
|
8008 | }) | |
|
7978 | 8009 | sources."browserify-zlib-0.2.0" |
|
7979 | 8010 | sources."browserslist-3.2.8" |
|
7980 | 8011 | sources."buffer-4.9.2" |
@@ -7984,7 +8015,7 b' let' | |||
|
7984 | 8015 | (sources."cacache-10.0.4" // { |
|
7985 | 8016 | dependencies = [ |
|
7986 | 8017 | sources."glob-7.1.6" |
|
7987 |
sources."graceful-fs-4.2. |
|
|
8018 | sources."graceful-fs-4.2.4" | |
|
7988 | 8019 | sources."lru-cache-4.1.5" |
|
7989 | 8020 | sources."minimatch-3.0.4" |
|
7990 | 8021 | sources."rimraf-2.7.1" |
@@ -7998,8 +8029,8 b' let' | |||
|
7998 | 8029 | sources."browserslist-1.7.7" |
|
7999 | 8030 | ]; |
|
8000 | 8031 | }) |
|
8001 |
sources."caniuse-db-1.0.300010 |
|
|
8002 |
sources."caniuse-lite-1.0.300010 |
|
|
8032 | sources."caniuse-db-1.0.30001058" | |
|
8033 | sources."caniuse-lite-1.0.30001058" | |
|
8003 | 8034 | sources."caseless-0.12.0" |
|
8004 | 8035 | sources."center-align-0.1.3" |
|
8005 | 8036 | sources."chalk-0.5.1" |
@@ -8103,7 +8134,11 b' let' | |||
|
8103 | 8134 | }) |
|
8104 | 8135 | sources."core-js-2.6.11" |
|
8105 | 8136 | sources."core-util-is-1.0.2" |
|
8106 | sources."create-ecdh-4.0.3" | |
|
8137 | (sources."create-ecdh-4.0.3" // { | |
|
8138 | dependencies = [ | |
|
8139 | sources."bn.js-4.11.8" | |
|
8140 | ]; | |
|
8141 | }) | |
|
8107 | 8142 | sources."create-hash-1.2.0" |
|
8108 | 8143 | sources."create-hmac-1.1.7" |
|
8109 | 8144 | (sources."cross-spawn-6.0.5" // { |
@@ -8148,13 +8183,17 b' let' | |||
|
8148 | 8183 | sources."des.js-1.0.1" |
|
8149 | 8184 | sources."detect-file-1.0.0" |
|
8150 | 8185 | sources."detect-indent-4.0.0" |
|
8151 | sources."diffie-hellman-5.0.3" | |
|
8186 | (sources."diffie-hellman-5.0.3" // { | |
|
8187 | dependencies = [ | |
|
8188 | sources."bn.js-4.11.8" | |
|
8189 | ]; | |
|
8190 | }) | |
|
8152 | 8191 | sources."dir-glob-2.2.2" |
|
8153 | 8192 | sources."dom-converter-0.2.0" |
|
8154 | 8193 | (sources."dom-serializer-0.2.2" // { |
|
8155 | 8194 | dependencies = [ |
|
8156 | 8195 | sources."domelementtype-2.0.1" |
|
8157 |
sources."entities-2.0. |
|
|
8196 | sources."entities-2.0.2" | |
|
8158 | 8197 | ]; |
|
8159 | 8198 | }) |
|
8160 | 8199 | (sources."dom5-2.3.0" // { |
@@ -8177,13 +8216,17 b' let' | |||
|
8177 | 8216 | ]; |
|
8178 | 8217 | }) |
|
8179 | 8218 | sources."ecc-jsbn-0.1.2" |
|
8180 |
sources."electron-to-chromium-1.3.4 |
|
|
8181 | sources."elliptic-6.5.2" | |
|
8219 | sources."electron-to-chromium-1.3.437" | |
|
8220 | (sources."elliptic-6.5.2" // { | |
|
8221 | dependencies = [ | |
|
8222 | sources."bn.js-4.11.8" | |
|
8223 | ]; | |
|
8224 | }) | |
|
8182 | 8225 | sources."emojis-list-3.0.0" |
|
8183 | 8226 | sources."end-of-stream-1.4.4" |
|
8184 | 8227 | (sources."enhanced-resolve-4.1.1" // { |
|
8185 | 8228 | dependencies = [ |
|
8186 |
sources."graceful-fs-4.2. |
|
|
8229 | sources."graceful-fs-4.2.4" | |
|
8187 | 8230 | sources."memory-fs-0.5.0" |
|
8188 | 8231 | sources."readable-stream-2.3.7" |
|
8189 | 8232 | sources."safe-buffer-5.1.2" |
@@ -8286,11 +8329,11 b' let' | |||
|
8286 | 8329 | }) |
|
8287 | 8330 | (sources."fs-write-stream-atomic-1.0.10" // { |
|
8288 | 8331 | dependencies = [ |
|
8289 |
sources."graceful-fs-4.2. |
|
|
8332 | sources."graceful-fs-4.2.4" | |
|
8290 | 8333 | ]; |
|
8291 | 8334 | }) |
|
8292 | 8335 | sources."fs.realpath-1.0.0" |
|
8293 |
sources."fsevents-1.2.1 |
|
|
8336 | sources."fsevents-1.2.13" | |
|
8294 | 8337 | sources."function-bind-1.1.1" |
|
8295 | 8338 | sources."gaze-0.5.2" |
|
8296 | 8339 | sources."get-caller-file-1.0.3" |
@@ -8418,7 +8461,12 b' let' | |||
|
8418 | 8461 | sources."kind-of-4.0.0" |
|
8419 | 8462 | ]; |
|
8420 | 8463 | }) |
|
8421 |
sources."hash-base-3.0 |
|
|
8464 | (sources."hash-base-3.1.0" // { | |
|
8465 | dependencies = [ | |
|
8466 | sources."readable-stream-3.6.0" | |
|
8467 | sources."string_decoder-1.3.0" | |
|
8468 | ]; | |
|
8469 | }) | |
|
8422 | 8470 | sources."hash.js-1.1.7" |
|
8423 | 8471 | sources."hawk-3.1.3" |
|
8424 | 8472 | sources."he-1.2.0" |
@@ -8525,7 +8573,7 b' let' | |||
|
8525 | 8573 | sources."js-yaml-2.0.5" |
|
8526 | 8574 | sources."jsbn-0.1.1" |
|
8527 | 8575 | sources."jsesc-1.3.0" |
|
8528 |
(sources."jshint-2.11. |
|
|
8576 | (sources."jshint-2.11.1" // { | |
|
8529 | 8577 | dependencies = [ |
|
8530 | 8578 | sources."lodash-4.17.15" |
|
8531 | 8579 | sources."minimatch-3.0.4" |
@@ -8548,7 +8596,7 b' let' | |||
|
8548 | 8596 | sources."lcid-2.0.0" |
|
8549 | 8597 | (sources."less-2.7.3" // { |
|
8550 | 8598 | dependencies = [ |
|
8551 |
sources."graceful-fs-4.2. |
|
|
8599 | sources."graceful-fs-4.2.4" | |
|
8552 | 8600 | ]; |
|
8553 | 8601 | }) |
|
8554 | 8602 | (sources."liftoff-2.5.0" // { |
@@ -8595,10 +8643,14 b' let' | |||
|
8595 | 8643 | ]; |
|
8596 | 8644 | }) |
|
8597 | 8645 | sources."micromatch-3.1.10" |
|
8598 | sources."miller-rabin-4.0.1" | |
|
8646 | (sources."miller-rabin-4.0.1" // { | |
|
8647 | dependencies = [ | |
|
8648 | sources."bn.js-4.11.8" | |
|
8649 | ]; | |
|
8650 | }) | |
|
8599 | 8651 | sources."mime-1.6.0" |
|
8600 |
sources."mime-db-1.4 |
|
|
8601 |
sources."mime-types-2.1.2 |
|
|
8652 | sources."mime-db-1.44.0" | |
|
8653 | sources."mime-types-2.1.27" | |
|
8602 | 8654 | sources."mimic-fn-2.1.0" |
|
8603 | 8655 | sources."minimalistic-assert-1.0.1" |
|
8604 | 8656 | sources."minimalistic-crypto-utils-1.0.1" |
@@ -8611,7 +8663,7 b' let' | |||
|
8611 | 8663 | ]; |
|
8612 | 8664 | }) |
|
8613 | 8665 | sources."mkdirp-0.5.5" |
|
8614 |
sources."moment-2.2 |
|
|
8666 | sources."moment-2.25.3" | |
|
8615 | 8667 | sources."mousetrap-1.6.5" |
|
8616 | 8668 | (sources."move-concurrently-1.0.1" // { |
|
8617 | 8669 | dependencies = [ |
@@ -8621,7 +8673,7 b' let' | |||
|
8621 | 8673 | ]; |
|
8622 | 8674 | }) |
|
8623 | 8675 | sources."ms-2.0.0" |
|
8624 |
sources."nan-2.14. |
|
|
8676 | sources."nan-2.14.1" | |
|
8625 | 8677 | sources."nanomatch-1.2.13" |
|
8626 | 8678 | sources."neo-async-2.6.1" |
|
8627 | 8679 | sources."nice-try-1.0.5" |
@@ -8636,7 +8688,7 b' let' | |||
|
8636 | 8688 | sources."safe-buffer-5.1.2" |
|
8637 | 8689 | (sources."string_decoder-1.3.0" // { |
|
8638 | 8690 | dependencies = [ |
|
8639 |
sources."safe-buffer-5.2. |
|
|
8691 | sources."safe-buffer-5.2.1" | |
|
8640 | 8692 | ]; |
|
8641 | 8693 | }) |
|
8642 | 8694 | ]; |
@@ -8828,7 +8880,11 b' let' | |||
|
8828 | 8880 | sources."promise-inflight-1.0.1" |
|
8829 | 8881 | sources."prr-1.0.1" |
|
8830 | 8882 | sources."pseudomap-1.0.2" |
|
8831 | sources."public-encrypt-4.0.3" | |
|
8883 | (sources."public-encrypt-4.0.3" // { | |
|
8884 | dependencies = [ | |
|
8885 | sources."bn.js-4.11.8" | |
|
8886 | ]; | |
|
8887 | }) | |
|
8832 | 8888 | sources."pump-2.0.1" |
|
8833 | 8889 | sources."pumpify-1.5.1" |
|
8834 | 8890 | sources."punycode-1.4.1" |
@@ -8848,7 +8904,7 b' let' | |||
|
8848 | 8904 | }) |
|
8849 | 8905 | (sources."readdirp-2.2.1" // { |
|
8850 | 8906 | dependencies = [ |
|
8851 |
sources."graceful-fs-4.2. |
|
|
8907 | sources."graceful-fs-4.2.4" | |
|
8852 | 8908 | sources."readable-stream-2.3.7" |
|
8853 | 8909 | sources."safe-buffer-5.1.2" |
|
8854 | 8910 | sources."string_decoder-1.1.1" |
@@ -8892,7 +8948,7 b' let' | |||
|
8892 | 8948 | sources."request-2.81.0" |
|
8893 | 8949 | sources."require-directory-2.1.1" |
|
8894 | 8950 | sources."require-main-filename-1.0.1" |
|
8895 |
sources."resolve-1.1 |
|
|
8951 | sources."resolve-1.17.0" | |
|
8896 | 8952 | sources."resolve-cwd-2.0.0" |
|
8897 | 8953 | sources."resolve-dir-1.0.1" |
|
8898 | 8954 | sources."resolve-from-3.0.0" |
@@ -8902,13 +8958,13 b' let' | |||
|
8902 | 8958 | sources."rimraf-2.2.8" |
|
8903 | 8959 | sources."ripemd160-2.0.2" |
|
8904 | 8960 | sources."run-queue-1.0.3" |
|
8905 |
sources."safe-buffer-5.2. |
|
|
8961 | sources."safe-buffer-5.2.1" | |
|
8906 | 8962 | sources."safe-regex-1.1.0" |
|
8907 | 8963 | sources."safer-buffer-2.1.2" |
|
8908 | 8964 | sources."sax-1.2.4" |
|
8909 | 8965 | (sources."schema-utils-0.4.7" // { |
|
8910 | 8966 | dependencies = [ |
|
8911 |
sources."ajv-6.12. |
|
|
8967 | sources."ajv-6.12.2" | |
|
8912 | 8968 | ]; |
|
8913 | 8969 | }) |
|
8914 | 8970 | sources."select-1.1.2" |
@@ -9032,7 +9088,7 b' let' | |||
|
9032 | 9088 | sources."js-yaml-3.7.0" |
|
9033 | 9089 | ]; |
|
9034 | 9090 | }) |
|
9035 |
sources."sweetalert2-9.10.1 |
|
|
9091 | sources."sweetalert2-9.10.13" | |
|
9036 | 9092 | sources."tapable-1.1.3" |
|
9037 | 9093 | sources."through-2.3.8" |
|
9038 | 9094 | (sources."through2-2.0.5" // { |
@@ -9068,13 +9124,13 b' let' | |||
|
9068 | 9124 | sources."colors-1.4.0" |
|
9069 | 9125 | sources."emojis-list-2.1.0" |
|
9070 | 9126 | sources."enhanced-resolve-3.4.1" |
|
9071 |
sources."graceful-fs-4.2. |
|
|
9127 | sources."graceful-fs-4.2.4" | |
|
9072 | 9128 | sources."json5-0.5.1" |
|
9073 | 9129 | sources."loader-utils-0.2.17" |
|
9074 | 9130 | sources."tapable-0.2.9" |
|
9075 | 9131 | ]; |
|
9076 | 9132 | }) |
|
9077 |
sources."tslib-1.1 |
|
|
9133 | sources."tslib-1.13.0" | |
|
9078 | 9134 | sources."tty-browserify-0.0.0" |
|
9079 | 9135 | sources."tunnel-agent-0.6.0" |
|
9080 | 9136 | sources."tweetnacl-0.14.5" |
@@ -9085,7 +9141,7 b' let' | |||
|
9085 | 9141 | sources."source-map-0.6.1" |
|
9086 | 9142 | ]; |
|
9087 | 9143 | }) |
|
9088 |
sources."uglify-js-3.9. |
|
|
9144 | sources."uglify-js-3.9.3" | |
|
9089 | 9145 | sources."uglify-to-browserify-1.0.2" |
|
9090 | 9146 | (sources."uglifyjs-webpack-plugin-1.3.0" // { |
|
9091 | 9147 | dependencies = [ |
@@ -9149,13 +9205,13 b' let' | |||
|
9149 | 9205 | sources."vm-browserify-1.1.2" |
|
9150 | 9206 | (sources."watchpack-1.6.1" // { |
|
9151 | 9207 | dependencies = [ |
|
9152 |
sources."graceful-fs-4.2. |
|
|
9208 | sources."graceful-fs-4.2.4" | |
|
9153 | 9209 | ]; |
|
9154 | 9210 | }) |
|
9155 | 9211 | sources."waypoints-4.0.1" |
|
9156 | 9212 | (sources."webpack-4.23.1" // { |
|
9157 | 9213 | dependencies = [ |
|
9158 |
sources."ajv-6.12. |
|
|
9214 | sources."ajv-6.12.2" | |
|
9159 | 9215 | ]; |
|
9160 | 9216 | }) |
|
9161 | 9217 | (sources."webpack-cli-3.1.2" // { |
@@ -9225,9 +9281,12 b' let' | |||
|
9225 | 9281 | }; |
|
9226 | 9282 | production = false; |
|
9227 | 9283 | bypassCache = true; |
|
9284 | reconstructLock = true; | |
|
9228 | 9285 | }; |
|
9229 | 9286 | in |
|
9230 | 9287 | { |
|
9288 | args = args; | |
|
9289 | sources = sources; | |
|
9231 | 9290 | tarball = nodeEnv.buildNodeSourceDist args; |
|
9232 | 9291 | package = nodeEnv.buildNodePackage args; |
|
9233 | 9292 | shell = nodeEnv.buildNodeShell args; |
|
1 | NO CONTENT: modified file | |
The requested commit or file is too big and content was truncated. Show full diff |
@@ -4,7 +4,11 b'' | |||
|
4 | 4 | |
|
5 | 5 | with pkgs.lib; |
|
6 | 6 | |
|
7 | let _pythonPackages = pythonPackages; in | |
|
7 | let | |
|
8 | _pythonPackages = pythonPackages; | |
|
9 | ||
|
10 | in | |
|
11 | ||
|
8 | 12 | let |
|
9 | 13 | pythonPackages = getAttr _pythonPackages pkgs; |
|
10 | 14 | |
@@ -18,16 +22,23 b' in' | |||
|
18 | 22 | |
|
19 | 23 | pkgs.stdenv.mkDerivation { |
|
20 | 24 | name = "pip2nix-generated"; |
|
25 | ||
|
21 | 26 | buildInputs = [ |
|
22 | 27 | # Allows to generate python packages |
|
23 | 28 | pip2nix.pip2nix |
|
24 | pythonPackages.pip-tools | |
|
29 | pip2nix.pip | |
|
30 | pip2nix.pip-tools | |
|
31 | ||
|
32 | # compile using ffi | |
|
33 | pkgs.libffi | |
|
34 | ||
|
35 | pythonPackages.cython | |
|
25 | 36 | |
|
26 | 37 | # Allows to generate node dependencies |
|
27 | 38 | pkgs.nodePackages.node2nix |
|
28 | 39 | |
|
29 | 40 | # We need mysql_config to be around |
|
30 | pkgs.mysql | |
|
41 | pkgs.libmysqlclient | |
|
31 | 42 | |
|
32 | 43 | # We need postgresql to be around |
|
33 | 44 | pkgs.postgresql |
@@ -48,8 +59,15 b' pkgs.stdenv.mkDerivation {' | |||
|
48 | 59 | |
|
49 | 60 | preShellHook = '' |
|
50 | 61 | echo "Starting Generate Shell" |
|
62 | # set unpack source date to 1980 to fix ZIP problems that does not support <1980 | |
|
63 | export SOURCE_DATE_EPOCH=315532800 | |
|
64 | export TMPDIR=/tmp | |
|
65 | export LOCALE_ARCHIVE="${pkgs.glibcLocales}/lib/locale/locale-archive" | |
|
66 | export LC_ALL="en_US.UTF-8" | |
|
67 | export PYCURL_SSL_LIBRARY=openssl | |
|
68 | ||
|
51 | 69 | # Custom prompt to distinguish from other dev envs. |
|
52 |
export PS1="\n\[\033[1;32m\][ |
|
|
53 | export PYCURL_SSL_LIBRARY=openssl | |
|
70 | export PS1="\n\[\033[1;32m\][pip2nix-generate-shell]$\[\033[0m\] " | |
|
71 | ||
|
54 | 72 | ''; |
|
55 | 73 | } |
@@ -87,7 +87,7 b' psycopg2==2.8.4' | |||
|
87 | 87 | |
|
88 | 88 | # IPYTHON RENDERING |
|
89 | 89 | # entrypoints backport, pypi version doesn't support egg installs |
|
90 |
https://code.rhodecode.com/upstream/entrypoints/artifacts/download/0-8e9ee9e4-c4db-409c-b07e-81568fd1832d.tar.gz?md5=3a027b8ff1d257b91fe257de6c43357d#egg=entrypoints==0.2.2 |
|
|
90 | https://code.rhodecode.com/upstream/entrypoints/artifacts/download/0-8e9ee9e4-c4db-409c-b07e-81568fd1832d.tar.gz?md5=3a027b8ff1d257b91fe257de6c43357d#egg=entrypoints==0.2.2 | |
|
91 | 91 | nbconvert==5.3.1 |
|
92 | 92 | nbformat==4.4.0 |
|
93 | 93 | jupyter-client==5.0.0 |
@@ -1,6 +1,6 b'' | |||
|
1 | 1 | # contains not directly required libraries we want to pin the version. |
|
2 | 2 | |
|
3 |
atomicwrites==1. |
|
|
3 | atomicwrites==1.4.0 | |
|
4 | 4 | attrs==19.3.0 |
|
5 | 5 | asn1crypto==0.24.0 |
|
6 | 6 | billiard==3.6.4.0 |
@@ -1,10 +1,6 b'' | |||
|
1 | 1 | [aliases] |
|
2 | 2 | test = pytest |
|
3 | 3 | |
|
4 | [egg_info] | |
|
5 | tag_build = | |
|
6 | tag_svn_revision = false | |
|
7 | ||
|
8 | 4 | # Babel configuration |
|
9 | 5 | [compile_catalog] |
|
10 | 6 | domain = rhodecode |
@@ -27,12 +27,12 b' let' | |||
|
27 | 27 | optionalDevelopInstall = attributeName: |
|
28 | 28 | let |
|
29 | 29 | path = pkgs.lib.attrByPath [attributeName] null sources; |
|
30 |
doI |
|
|
30 | doDI = doDevelopInstall && path != null; | |
|
31 | 31 | |
|
32 | 32 | in |
|
33 | 33 | # do develop installation with empty hosts to skip any package duplicates to |
|
34 | 34 | # be replaced. This only pushes the package to be locally available |
|
35 |
pkgs.lib.optionalString doI |
|
|
35 | pkgs.lib.optionalString doDI ('' | |
|
36 | 36 | echo "[BEGIN] Develop install of '${attributeName}' from '${path}'" |
|
37 | 37 | pushd ${path} |
|
38 | 38 | python setup.py develop --prefix $tmp_path --allow-hosts "" |
@@ -47,8 +47,8 b' let' | |||
|
47 | 47 | optionalDevelopInstallBuildInputs = attributeName: |
|
48 | 48 | let |
|
49 | 49 | path = pkgs.lib.attrByPath [attributeName] null sources; |
|
50 | doIt = doDevelopInstall && path != null && pkgs.lib.pathExists "${nixFile}"; | |
|
51 | 50 | nixFile = "${path}/default.nix"; |
|
51 | doDI = doDevelopInstall && path != null && pkgs.lib.pathExists "${nixFile}"; | |
|
52 | 52 | |
|
53 | 53 | derivate = import "${nixFile}" { |
|
54 | 54 | inherit |
@@ -56,13 +56,30 b' let' | |||
|
56 | 56 | pythonPackages; |
|
57 | 57 | }; |
|
58 | 58 | in |
|
59 |
pkgs.lib.lists.optionals doI |
|
|
59 | pkgs.lib.lists.optionals doDI ( | |
|
60 | 60 | derivate.propagatedBuildInputs |
|
61 | 61 | ); |
|
62 | 62 | |
|
63 | optionalBinDeps = attributeName: | |
|
64 | let | |
|
65 | path = pkgs.lib.attrByPath [attributeName] null sources; | |
|
66 | nixFile = "${path}/default.nix"; | |
|
67 | doDI = doDevelopInstall && path != null && pkgs.lib.pathExists "${nixFile}"; | |
|
68 | ||
|
69 | derivate = import "${nixFile}" { | |
|
70 | inherit | |
|
71 | doCheck | |
|
72 | pythonPackages; | |
|
73 | }; | |
|
74 | in | |
|
75 | pkgs.lib.optionalString doDI ('' | |
|
76 | echo "Wrapping PATH with vcsserver vcs binaries" | |
|
77 | export PATH="${derivate.vcs_pkgs.subversion}/bin:${derivate.vcs_pkgs.git}/bin:${derivate.pythonPackages.mercurial}/bin:$PATH" | |
|
78 | ''); | |
|
79 | ||
|
63 | 80 | developInstalls = [ "rhodecode-vcsserver" ]; |
|
64 | 81 | |
|
65 | in enterprise-ce.override (attrs: { | |
|
82 | in enterprise-ce.override (attrs: rec { | |
|
66 | 83 | # Avoid that we dump any sources into the store when entering the shell and |
|
67 | 84 | # make development a little bit more convenient. |
|
68 | 85 | src = null; |
@@ -90,10 +107,14 b' in enterprise-ce.override (attrs: {' | |||
|
90 | 107 | ''; |
|
91 | 108 | |
|
92 | 109 | preShellHook = '' |
|
93 |
echo "Entering |
|
|
110 | echo "Entering rhodecode-ce" | |
|
94 | 111 | |
|
95 | 112 | # Custom prompt to distinguish from other dev envs. |
|
96 |
export PS1="\n\[\033[1;32m\][ |
|
|
113 | export PS1="\n\[\033[1;32m\][rhodecode-ce-shell:\w]$\[\033[0m\] " | |
|
114 | ||
|
115 | # Set locale | |
|
116 | export LOCALE_ARCHIVE="${pkgs.glibcLocales}/lib/locale/locale-archive" | |
|
117 | export LC_ALL="en_US.UTF-8" | |
|
97 | 118 | |
|
98 | 119 | echo "Building frontend assets" |
|
99 | 120 | ${enterprise-ce.linkNodePackages} |
@@ -111,9 +132,8 b' in enterprise-ce.override (attrs: {' | |||
|
111 | 132 | |
|
112 | 133 | postShellHook = '' |
|
113 | 134 | echo "** Additional develop installs **" |
|
114 | '' + | |
|
115 |
pkgs.lib.strings.concatMapStrings optionalDe |
|
|
116 | + '' | |
|
135 | '' + pkgs.lib.strings.concatMapStrings optionalDevelopInstall developInstalls + '' | |
|
136 | '' + pkgs.lib.strings.concatMapStrings optionalBinDeps [ "rhodecode-vcsserver" ] + '' | |
|
117 | 137 | ''; |
|
118 | 138 | |
|
119 | 139 | }) |
@@ -20,7 +20,7 b' let babelRCOptions = {' | |||
|
20 | 20 | }] |
|
21 | 21 | ], |
|
22 | 22 | "plugins": ["transform-object-rest-spread"] |
|
23 | } | |
|
23 | }; | |
|
24 | 24 | |
|
25 | 25 | module.exports = { |
|
26 | 26 | // Tell Webpack which file kicks off our app. |
@@ -33,6 +33,7 b' module.exports = {' | |||
|
33 | 33 | }, |
|
34 | 34 | // Tell Webpack which directories to look in to resolve import statements. |
|
35 | 35 | // Normally Webpack will look in node_modules by default but since we’re overriding |
|
36 | // the property we’ll need to tell it to look there. | |
|
36 | 37 | resolve: { |
|
37 | 38 | modules: [ |
|
38 | 39 | path.resolve(__dirname, 'node_modules'), |
@@ -55,8 +56,7 b' module.exports = {' | |||
|
55 | 56 | // polymer-webpack-loader, and hand the output to |
|
56 | 57 | // babel-loader. This let's us transpile JS in our `<script>` elements. |
|
57 | 58 | use: [ |
|
58 | {loader: 'babel-loader', | |
|
59 | options: babelRCOptions}, | |
|
59 | {loader: 'babel-loader', options: babelRCOptions}, | |
|
60 | 60 | {loader: 'polymer-webpack-loader', |
|
61 | 61 | options: { |
|
62 | 62 | processStyleLinks: true, |
General Comments 0
You need to be logged in to leave comments.
Login now