Skip to content

Commit eb0c780

Browse files
committed
tweak
1 parent 095311d commit eb0c780

File tree

5 files changed

+62
-50
lines changed

5 files changed

+62
-50
lines changed

jscomp/bsb/bsb_config_parse.ml

+20-16
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,17 @@ let extract_generators (map : json_map) =
303303
!generators
304304

305305

306+
let extract_dependencies (map : json_map) cwd (field : string )
307+
: Bsb_config_types.dependencies =
308+
let deps = ref [] in
309+
(match String_map.find_opt map field with
310+
| None -> ()
311+
| Some (Arr ({content = s})) ->
312+
deps := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))
313+
| Some config ->
314+
Bsb_exception.config_error config
315+
(field ^ " expect an array"));
316+
!deps
306317

307318
(** ATT: make sure such function is re-entrant.
308319
With a given [cwd] it works anywhere*)
@@ -325,16 +336,12 @@ let interpret_json
325336
let ppx_checked_files : string list ref = ref [] in
326337
let js_post_build_cmd = ref None in
327338

328-
329-
330-
331339
(* When we plan to add more deps here,
332340
Make sure check it is consistent that for nested deps, we have a
333341
quck check by just re-parsing deps
334342
Make sure it works with [-make-world] [-clean-world]
335343
*)
336-
let bs_dependencies = ref [] in
337-
let bs_dev_dependencies = ref [] in
344+
338345
(* Setting ninja is a bit complex
339346
1. if [build.ninja] does use [ninja] we need set a variable
340347
2. we need store it so that we can call ninja correctly
@@ -362,6 +369,11 @@ let interpret_json
362369
Some (Bsb_build_util.resolve_bsb_magic_file ~cwd ~desc:Bsb_build_schemas.pp_flags p).path
363370
) in
364371
let reason_react_jsx = extract_reason_react_jsx map in
372+
let bs_dependencies = extract_dependencies map cwd Bsb_build_schemas.bs_dependencies in
373+
let bs_dev_dependencies =
374+
if not not_dev then
375+
extract_dependencies map cwd Bsb_build_schemas.bs_dev_dependencies
376+
else [] in
365377
map
366378
|? (Bsb_build_schemas.js_post_build, `Obj begin fun m ->
367379
m |? (Bsb_build_schemas.cmd , `Str (fun s ->
@@ -371,15 +383,7 @@ let interpret_json
371383
)
372384
|> ignore
373385
end)
374-
375-
|? (Bsb_build_schemas.bs_dependencies, `Arr (fun s -> bs_dependencies := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))))
376-
|? (Bsb_build_schemas.bs_dev_dependencies,
377-
`Arr (fun s ->
378-
if not not_dev then
379-
bs_dev_dependencies
380-
:= Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s)))
381-
)
382-
386+
383387
(* More design *)
384388
|? (Bsb_build_schemas.bs_external_includes, `Arr (fun s -> bs_external_includes := get_list_string s))
385389
|? (Bsb_build_schemas.bsc_flags, `Arr (fun s -> bsc_flags := Bsb_build_util.get_list_string_acc s !bsc_flags))
@@ -422,8 +426,8 @@ let interpret_json
422426
ppx_files = !ppx_files ;
423427
ppx_checked_files = !ppx_checked_files;
424428
pp_file = pp_flags ;
425-
bs_dependencies = !bs_dependencies;
426-
bs_dev_dependencies = !bs_dev_dependencies;
429+
bs_dependencies ;
430+
bs_dev_dependencies ;
427431
(*
428432
reference for quoting
429433
{[

jscomp/build_tests/ocamlgraph/input.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ var p = require('child_process')
44
var path = require('path')
55
var fs = require('fs')
66
var assert = require('assert')
7-
p.execSync(`npm link bs-platform && bsb`,{cwd: __dirname})
7+
p.execSync(`bsb`,{cwd: __dirname})
88
var check_file = path.join(__dirname,'tests','check.bs.js')
99
var xs = p.spawnSync('node',
1010
[check_file],

lib/4.02.3/bsb.ml

+20-16
Original file line numberDiff line numberDiff line change
@@ -10909,6 +10909,17 @@ let extract_generators (map : json_map) =
1090910909
!generators
1091010910

1091110911

10912+
let extract_dependencies (map : json_map) cwd (field : string )
10913+
: Bsb_config_types.dependencies =
10914+
let deps = ref [] in
10915+
(match String_map.find_opt map field with
10916+
| None -> ()
10917+
| Some (Arr ({content = s})) ->
10918+
deps := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))
10919+
| Some config ->
10920+
Bsb_exception.config_error config
10921+
(field ^ " expect an array"));
10922+
!deps
1091210923

1091310924
(** ATT: make sure such function is re-entrant.
1091410925
With a given [cwd] it works anywhere*)
@@ -10931,16 +10942,12 @@ let interpret_json
1093110942
let ppx_checked_files : string list ref = ref [] in
1093210943
let js_post_build_cmd = ref None in
1093310944

10934-
10935-
10936-
1093710945
(* When we plan to add more deps here,
1093810946
Make sure check it is consistent that for nested deps, we have a
1093910947
quck check by just re-parsing deps
1094010948
Make sure it works with [-make-world] [-clean-world]
1094110949
*)
10942-
let bs_dependencies = ref [] in
10943-
let bs_dev_dependencies = ref [] in
10950+
1094410951
(* Setting ninja is a bit complex
1094510952
1. if [build.ninja] does use [ninja] we need set a variable
1094610953
2. we need store it so that we can call ninja correctly
@@ -10968,6 +10975,11 @@ let interpret_json
1096810975
Some (Bsb_build_util.resolve_bsb_magic_file ~cwd ~desc:Bsb_build_schemas.pp_flags p).path
1096910976
) in
1097010977
let reason_react_jsx = extract_reason_react_jsx map in
10978+
let bs_dependencies = extract_dependencies map cwd Bsb_build_schemas.bs_dependencies in
10979+
let bs_dev_dependencies =
10980+
if not not_dev then
10981+
extract_dependencies map cwd Bsb_build_schemas.bs_dev_dependencies
10982+
else [] in
1097110983
map
1097210984
|? (Bsb_build_schemas.js_post_build, `Obj begin fun m ->
1097310985
m |? (Bsb_build_schemas.cmd , `Str (fun s ->
@@ -10977,15 +10989,7 @@ let interpret_json
1097710989
)
1097810990
|> ignore
1097910991
end)
10980-
10981-
|? (Bsb_build_schemas.bs_dependencies, `Arr (fun s -> bs_dependencies := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))))
10982-
|? (Bsb_build_schemas.bs_dev_dependencies,
10983-
`Arr (fun s ->
10984-
if not not_dev then
10985-
bs_dev_dependencies
10986-
:= Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s)))
10987-
)
10988-
10992+
1098910993
(* More design *)
1099010994
|? (Bsb_build_schemas.bs_external_includes, `Arr (fun s -> bs_external_includes := get_list_string s))
1099110995
|? (Bsb_build_schemas.bsc_flags, `Arr (fun s -> bsc_flags := Bsb_build_util.get_list_string_acc s !bsc_flags))
@@ -11028,8 +11032,8 @@ let interpret_json
1102811032
ppx_files = !ppx_files ;
1102911033
ppx_checked_files = !ppx_checked_files;
1103011034
pp_file = pp_flags ;
11031-
bs_dependencies = !bs_dependencies;
11032-
bs_dev_dependencies = !bs_dev_dependencies;
11035+
bs_dependencies ;
11036+
bs_dev_dependencies ;
1103311037
(*
1103411038
reference for quoting
1103511039
{[

lib/4.02.3/unstable/bsb_native.ml

+20-16
Original file line numberDiff line numberDiff line change
@@ -10941,6 +10941,17 @@ let extract_generators (map : json_map) =
1094110941
!generators
1094210942

1094310943

10944+
let extract_dependencies (map : json_map) cwd (field : string )
10945+
: Bsb_config_types.dependencies =
10946+
let deps = ref [] in
10947+
(match String_map.find_opt map field with
10948+
| None -> ()
10949+
| Some (Arr ({content = s})) ->
10950+
deps := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))
10951+
| Some config ->
10952+
Bsb_exception.config_error config
10953+
(field ^ " expect an array"));
10954+
!deps
1094410955

1094510956
(** ATT: make sure such function is re-entrant.
1094610957
With a given [cwd] it works anywhere*)
@@ -10963,16 +10974,12 @@ let interpret_json
1096310974
let ppx_checked_files : string list ref = ref [] in
1096410975
let js_post_build_cmd = ref None in
1096510976

10966-
10967-
10968-
1096910977
(* When we plan to add more deps here,
1097010978
Make sure check it is consistent that for nested deps, we have a
1097110979
quck check by just re-parsing deps
1097210980
Make sure it works with [-make-world] [-clean-world]
1097310981
*)
10974-
let bs_dependencies = ref [] in
10975-
let bs_dev_dependencies = ref [] in
10982+
1097610983
(* Setting ninja is a bit complex
1097710984
1. if [build.ninja] does use [ninja] we need set a variable
1097810985
2. we need store it so that we can call ninja correctly
@@ -11000,6 +11007,11 @@ let interpret_json
1100011007
Some (Bsb_build_util.resolve_bsb_magic_file ~cwd ~desc:Bsb_build_schemas.pp_flags p).path
1100111008
) in
1100211009
let reason_react_jsx = extract_reason_react_jsx map in
11010+
let bs_dependencies = extract_dependencies map cwd Bsb_build_schemas.bs_dependencies in
11011+
let bs_dev_dependencies =
11012+
if not not_dev then
11013+
extract_dependencies map cwd Bsb_build_schemas.bs_dev_dependencies
11014+
else [] in
1100311015
map
1100411016
|? (Bsb_build_schemas.js_post_build, `Obj begin fun m ->
1100511017
m |? (Bsb_build_schemas.cmd , `Str (fun s ->
@@ -11009,15 +11021,7 @@ let interpret_json
1100911021
)
1101011022
|> ignore
1101111023
end)
11012-
11013-
|? (Bsb_build_schemas.bs_dependencies, `Arr (fun s -> bs_dependencies := Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s))))
11014-
|? (Bsb_build_schemas.bs_dev_dependencies,
11015-
`Arr (fun s ->
11016-
if not not_dev then
11017-
bs_dev_dependencies
11018-
:= Ext_list.map (Bsb_build_util.get_list_string s) (fun s -> resolve_package cwd (Bsb_pkg_types.string_as_package s)))
11019-
)
11020-
11024+
1102111025
(* More design *)
1102211026
|? (Bsb_build_schemas.bs_external_includes, `Arr (fun s -> bs_external_includes := get_list_string s))
1102311027
|? (Bsb_build_schemas.bsc_flags, `Arr (fun s -> bsc_flags := Bsb_build_util.get_list_string_acc s !bsc_flags))
@@ -11060,8 +11064,8 @@ let interpret_json
1106011064
ppx_files = !ppx_files ;
1106111065
ppx_checked_files = !ppx_checked_files;
1106211066
pp_file = pp_flags ;
11063-
bs_dependencies = !bs_dependencies;
11064-
bs_dev_dependencies = !bs_dev_dependencies;
11067+
bs_dependencies ;
11068+
bs_dev_dependencies ;
1106511069
(*
1106611070
reference for quoting
1106711071
{[

scripts/ciTest.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ function main() {
150150
// note existsSync test already ensure that it is a directory
151151
cp.exec(`node input.js`, {cwd : testDir, encoding : 'utf8'},function (error, stdout, stderr){
152152
console.log(stdout)
153-
console.log(stderr)
153+
// console.log(stderr)
154154
if (error !== null) {
155155
throw new Error (`working in ${testDir} Error: \n${error} `)
156156
}

0 commit comments

Comments
 (0)