Skip to content

Commit c9b93a5

Browse files
committed
Change cwd into more meaningful labels
1 parent c7d29db commit c9b93a5

16 files changed

+144
-144
lines changed

jscomp/bsb/bsb_build_util.ml

+2-2
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ let (|?) m (key, cb) =
154154
m |> Ext_json.test key cb
155155

156156
type package_context = {
157-
cwd : string ;
157+
proj_dir : string ;
158158
top : bool ;
159159
}
160160

@@ -220,7 +220,7 @@ let rec walk_all_deps_aux
220220
begin
221221
explore_deps Bsb_build_schemas.bs_dependencies;
222222
if top then explore_deps Bsb_build_schemas.bs_dev_dependencies;
223-
cb {top ; cwd = dir};
223+
cb {top ; proj_dir = dir};
224224
String_hashtbl.add visited cur_package_name dir;
225225
end
226226
| _ -> ()

jscomp/bsb/bsb_build_util.mli

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ val resolve_bsb_magic_file :
9191
result
9292

9393
type package_context = {
94-
cwd : string ;
94+
proj_dir : string ;
9595
top : bool ;
9696
}
9797

jscomp/bsb/bsb_clean.ml

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ let clean_bs_garbage proj_dir =
5656
let clean_bs_deps proj_dir =
5757
Bsb_build_util.walk_all_deps proj_dir (fun pkg_cxt ->
5858
(* whether top or not always do the cleaning *)
59-
clean_bs_garbage pkg_cxt.cwd
59+
clean_bs_garbage pkg_cxt.proj_dir
6060
)
6161

6262
let clean_self proj_dir =

jscomp/bsb/bsb_config_parse.ml

+11-11
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ let extract_js_post_build (map : json_map) cwd : string option =
375375
With a given [cwd] it works anywhere*)
376376
let interpret_json
377377
~toplevel_package_specs
378-
~per_proj_dir:(cwd:string)
378+
~per_proj_dir:(per_proj_dir:string)
379379

380380
: Bsb_config_types.t =
381381

@@ -396,15 +396,15 @@ let interpret_json
396396
1. if [build.ninja] does use [ninja] we need set a variable
397397
2. we need store it so that we can call ninja correctly
398398
*)
399-
match Ext_json_parse.parse_json_from_file (cwd // Literals.bsconfig_json) with
399+
match Ext_json_parse.parse_json_from_file (per_proj_dir // Literals.bsconfig_json) with
400400
| Obj { map } ->
401401
let package_name, namespace =
402402
extract_package_name_and_namespace map in
403-
let refmt = extract_refmt map cwd in
404-
let gentype_config = extract_gentype_config map cwd in
403+
let refmt = extract_refmt map per_proj_dir in
404+
let gentype_config = extract_gentype_config map per_proj_dir in
405405
let bs_suffix = extract_bs_suffix_exn map in
406406
(* The default situation is empty *)
407-
let built_in_package = check_stdlib map cwd in
407+
let built_in_package = check_stdlib map per_proj_dir in
408408
let package_specs =
409409
match String_map.find_opt map Bsb_build_schemas.package_specs with
410410
| Some x ->
@@ -416,14 +416,14 @@ let interpret_json
416416
if p = "" then
417417
Bsb_exception.invalid_spec "invalid pp, empty string found"
418418
else
419-
Some (Bsb_build_util.resolve_bsb_magic_file ~cwd ~desc:Bsb_build_schemas.pp_flags p).path
419+
Some (Bsb_build_util.resolve_bsb_magic_file ~cwd:per_proj_dir ~desc:Bsb_build_schemas.pp_flags p).path
420420
) in
421421
let reason_react_jsx = extract_reason_react_jsx map in
422-
let bs_dependencies = extract_dependencies map cwd Bsb_build_schemas.bs_dependencies in
422+
let bs_dependencies = extract_dependencies map per_proj_dir Bsb_build_schemas.bs_dependencies in
423423
let toplevel = toplevel_package_specs = None in
424424
let bs_dev_dependencies =
425425
if toplevel then
426-
extract_dependencies map cwd Bsb_build_schemas.bs_dev_dependencies
426+
extract_dependencies map per_proj_dir Bsb_build_schemas.bs_dev_dependencies
427427
else [] in
428428
begin match String_map.find_opt map Bsb_build_schemas.sources with
429429
| Some sources ->
@@ -432,7 +432,7 @@ let interpret_json
432432
let groups, number_of_dev_groups = Bsb_parse_sources.scan
433433
~ignored_dirs:(extract_ignored_dirs map)
434434
~toplevel
435-
~root: cwd
435+
~root: per_proj_dir
436436
~cut_generators
437437
~bs_suffix
438438
~namespace
@@ -445,7 +445,7 @@ let interpret_json
445445
warning = extract_warning map;
446446
external_includes = extract_string_list map Bsb_build_schemas.bs_external_includes;
447447
bsc_flags = extract_string_list map Bsb_build_schemas.bsc_flags ;
448-
ppx_files = extract_ppx map ~cwd Bsb_build_schemas.ppx_flags;
448+
ppx_files = extract_ppx map ~cwd:per_proj_dir Bsb_build_schemas.ppx_flags;
449449
pp_file = pp_flags ;
450450
bs_dependencies ;
451451
bs_dev_dependencies ;
@@ -459,7 +459,7 @@ let interpret_json
459459
]}
460460
*)
461461
refmt;
462-
js_post_build_cmd = (extract_js_post_build map cwd);
462+
js_post_build_cmd = (extract_js_post_build map per_proj_dir);
463463
package_specs =
464464
(match toplevel_package_specs with
465465
| None -> package_specs

jscomp/bsb/bsb_merlin_gen.ml

+2-2
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ let warning_to_merlin_flg (warning: Bsb_warning.t option) : string=
9797
merlin_flg ^ Bsb_warning.get_warning_flag warning
9898

9999

100-
let merlin_file_gen ~cwd
100+
let merlin_file_gen ~per_proj_dir:(per_proj_dir:string)
101101
built_in_ppx
102102
({file_groups = res_files ;
103103
generate_merlin;
@@ -185,7 +185,7 @@ let merlin_file_gen ~cwd
185185
end
186186
) ;
187187
Buffer.add_string buffer "\n";
188-
revise_merlin (cwd // merlin) buffer
188+
revise_merlin (per_proj_dir // merlin) buffer
189189
end
190190

191191

jscomp/bsb/bsb_merlin_gen.mli

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,4 @@
2626

2727

2828
val merlin_file_gen :
29-
cwd:string -> string -> Bsb_config_types.t -> unit
29+
per_proj_dir:string -> string -> Bsb_config_types.t -> unit

jscomp/bsb/bsb_ninja_check.ml

+6-6
Original file line numberDiff line numberDiff line change
@@ -87,18 +87,18 @@ let read (fname : string) (cont : t -> check_result) =
8787
cont res
8888
| exception _ -> Bsb_file_not_exist
8989

90-
let record ~cwd ~file (file_or_dirs : string list) : unit =
90+
let record ~per_proj_dir ~file (file_or_dirs : string list) : unit =
9191
let dir_or_files = Array.of_list file_or_dirs in
9292
let st_mtimes =
9393
Ext_array.map dir_or_files
9494
(fun x ->
95-
(Unix.stat (Filename.concat cwd x )).st_mtime
95+
(Unix.stat (Filename.concat per_proj_dir x )).st_mtime
9696
)
9797
in
9898
write file
9999
{ st_mtimes ;
100100
dir_or_files;
101-
source_directory = cwd ;
101+
source_directory = per_proj_dir ;
102102
}
103103

104104
(** check time stamp for all files
@@ -107,15 +107,15 @@ let record ~cwd ~file (file_or_dirs : string list) : unit =
107107
Even forced, we still need walk through a little
108108
bit in case we found a different version of compiler
109109
*)
110-
let check ~cwd ~forced ~file : check_result =
110+
let check ~(per_proj_dir:string) ~forced ~file : check_result =
111111
read file (fun {
112112
dir_or_files ; source_directory; st_mtimes
113113
} ->
114-
if cwd <> source_directory then Bsb_source_directory_changed else
114+
if per_proj_dir <> source_directory then Bsb_source_directory_changed else
115115
if forced then Bsb_forced (* No need walk through *)
116116
else
117117
try
118-
check_aux cwd dir_or_files st_mtimes 0 (Array.length dir_or_files)
118+
check_aux per_proj_dir dir_or_files st_mtimes 0 (Array.length dir_or_files)
119119
with e ->
120120
begin
121121
Bsb_log.info

jscomp/bsb/bsb_ninja_check.mli

+2-2
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,15 @@ val pp_check_result :
5959
[build.ninja] should be regenerated
6060
*)
6161
val record :
62-
cwd:string ->
62+
per_proj_dir:string ->
6363
file:string ->
6464
string list ->
6565
unit
6666

6767

6868
(** check if [build.ninja] should be regenerated *)
6969
val check :
70-
cwd:string ->
70+
per_proj_dir:string ->
7171
forced:bool ->
7272
file:string ->
7373
check_result

jscomp/bsb/bsb_ninja_gen.ml

+4-4
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ let output_static_resources
9494

9595

9696
let output_ninja_and_namespace_map
97-
~cwd
97+
~per_proj_dir
9898
~toplevel
9999
({
100100
bs_suffix;
@@ -121,7 +121,7 @@ let output_ninja_and_namespace_map
121121
} : Bsb_config_types.t) : unit
122122
=
123123

124-
let cwd_lib_bs = cwd // Bsb_config.lib_bs in
124+
let cwd_lib_bs = per_proj_dir // Bsb_config.lib_bs in
125125
let ppx_flags = Bsb_build_util.ppx_flags ppx_files in
126126
let oc = open_out_bin (cwd_lib_bs // Literals.build_ninja) in
127127
let g_pkg_flg , g_ns_flg =
@@ -154,7 +154,7 @@ let output_ninja_and_namespace_map
154154
Bsb_ninja_targets.output_kvs
155155
[|
156156
Bsb_ninja_global_vars.g_pkg_flg, g_pkg_flg ;
157-
Bsb_ninja_global_vars.src_root_dir, cwd (* TODO: need check its integrity -- allow relocate or not? *);
157+
Bsb_ninja_global_vars.src_root_dir, per_proj_dir (* TODO: need check its integrity -- allow relocate or not? *);
158158
(* The path to [bsc.exe] independent of config *)
159159
Bsb_ninja_global_vars.bsc, (Ext_filename.maybe_quote Bsb_global_paths.vendor_bsc);
160160
(* The path to [bsb_heler.exe] *)
@@ -244,7 +244,7 @@ let output_ninja_and_namespace_map
244244

245245
Ext_option.iter namespace (fun ns ->
246246
let namespace_dir =
247-
cwd // Bsb_config.lib_bs in
247+
per_proj_dir // Bsb_config.lib_bs in
248248
Bsb_namespace_map_gen.output
249249
~dir:namespace_dir ns
250250
bs_file_groups;

jscomp/bsb/bsb_ninja_gen.mli

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@
2626
generate ninja file based on [cwd]
2727
*)
2828
val output_ninja_and_namespace_map :
29-
cwd:string ->
29+
per_proj_dir:string ->
3030
toplevel:bool ->
3131
Bsb_config_types.t -> unit

jscomp/bsb/bsb_ninja_regen.ml

+9-9
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ let (//) = Ext_path.combine
3232
*)
3333
let regenerate_ninja
3434
~(toplevel_package_specs : Bsb_package_specs.t option)
35-
~forced ~cwd
35+
~forced ~per_proj_dir
3636
: Bsb_config_types.t option =
3737
let toplevel = toplevel_package_specs = None in
38-
let lib_bs_dir = cwd // Bsb_config.lib_bs in
38+
let lib_bs_dir = per_proj_dir // Bsb_config.lib_bs in
3939
let output_deps = lib_bs_dir // bsdeps in
4040
let check_result =
4141
Bsb_ninja_check.check
42-
~cwd
42+
~per_proj_dir:per_proj_dir
4343
~forced ~file:output_deps in
4444
Bsb_log.info
4545
"@{<info>BSB check@} build spec : %a @." Bsb_ninja_check.pp_check_result check_result ;
@@ -53,32 +53,32 @@ let regenerate_ninja
5353
| Other _ ->
5454
if check_result = Bsb_bsc_version_mismatch then begin
5555
Bsb_log.warn "@{<info>Different compiler version@}: clean current repo@.";
56-
Bsb_clean.clean_self cwd;
56+
Bsb_clean.clean_self per_proj_dir;
5757
end ;
5858

5959
let config =
6060
Bsb_config_parse.interpret_json
6161
~toplevel_package_specs
62-
~per_proj_dir:cwd in
62+
~per_proj_dir in
6363
(* create directory, lib/bs, lib/js, lib/es6 etc *)
6464
Bsb_build_util.mkp lib_bs_dir;
6565
Bsb_package_specs.list_dirs_by config.package_specs
6666
(fun x ->
67-
let dir = cwd // x in (*Unix.EEXIST error*)
67+
let dir = per_proj_dir // x in (*Unix.EEXIST error*)
6868
if not (Sys.file_exists dir) then Unix.mkdir dir 0o777);
6969
if toplevel then
7070
Bsb_watcher_gen.generate_sourcedirs_meta
7171
~name:(lib_bs_dir // Literals.sourcedirs_meta)
7272
config.file_groups
7373
;
74-
Bsb_merlin_gen.merlin_file_gen ~cwd
74+
Bsb_merlin_gen.merlin_file_gen ~per_proj_dir
7575
(Bsb_global_paths.vendor_bsppx) config;
7676
Bsb_ninja_gen.output_ninja_and_namespace_map
77-
~cwd ~toplevel config ;
77+
~per_proj_dir ~toplevel config ;
7878

7979
(* PR2184: we still need record empty dir
8080
since it may add files in the future *)
81-
Bsb_ninja_check.record ~cwd ~file:output_deps
81+
Bsb_ninja_check.record ~per_proj_dir ~file:output_deps
8282
(Literals.bsconfig_json::config.file_groups.globbed_dirs) ;
8383
Some config
8484

jscomp/bsb/bsb_ninja_regen.mli

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
val regenerate_ninja :
3333
toplevel_package_specs:Bsb_package_specs.t option ->
3434
forced: bool ->
35-
cwd:string ->
35+
per_proj_dir:string ->
3636
Bsb_config_types.t option

jscomp/bsb/bsb_world.ml

+4-4
Original file line numberDiff line numberDiff line change
@@ -68,17 +68,17 @@ let build_bs_deps cwd (deps : Bsb_package_specs.t) (ninja_args : string array) =
6868
if Ext_array.is_empty ninja_args then [|vendor_ninja|]
6969
else Array.append [|vendor_ninja|] ninja_args
7070
in
71-
Bsb_build_util.walk_all_deps cwd (fun {top; cwd} ->
71+
Bsb_build_util.walk_all_deps cwd (fun {top; proj_dir} ->
7272
if not top then
7373
begin
7474
let config_opt =
7575
Bsb_ninja_regen.regenerate_ninja
7676
~toplevel_package_specs:(Some deps)
7777
~forced:true
78-
~cwd in (* set true to force regenrate ninja file so we have [config_opt]*)
78+
~per_proj_dir:proj_dir in (* set true to force regenrate ninja file so we have [config_opt]*)
7979
let command =
8080
{Bsb_unix.cmd = vendor_ninja;
81-
cwd = cwd // Bsb_config.lib_bs;
81+
cwd = proj_dir // Bsb_config.lib_bs;
8282
args
8383
} in
8484
let eid =
@@ -91,7 +91,7 @@ let build_bs_deps cwd (deps : Bsb_package_specs.t) (ninja_args : string array) =
9191
Note that we can check if ninja print "no work to do",
9292
then don't need reinstall more
9393
*)
94-
install_targets cwd config_opt;
94+
install_targets proj_dir config_opt;
9595
end
9696
)
9797

jscomp/main/bsb_main.ml

+3-3
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ let () =
139139
Bsb_ninja_regen.regenerate_ninja
140140
~toplevel_package_specs:None
141141
~forced:false
142-
~cwd:Bsb_global_paths.cwd |> ignore;
142+
~per_proj_dir:Bsb_global_paths.cwd |> ignore;
143143
ninja_command_exit [||]
144144

145145
| argv ->
@@ -168,7 +168,7 @@ let () =
168168
(let config_opt =
169169
Bsb_ninja_regen.regenerate_ninja
170170
~toplevel_package_specs:None
171-
~forced:force_regenerate ~cwd:Bsb_global_paths.cwd in
171+
~forced:force_regenerate ~per_proj_dir:Bsb_global_paths.cwd in
172172
if make_world then begin
173173
Bsb_world.make_world_deps Bsb_global_paths.cwd config_opt [||]
174174
end;
@@ -190,7 +190,7 @@ let () =
190190
let config_opt =
191191
Bsb_ninja_regen.regenerate_ninja
192192
~toplevel_package_specs:None
193-
~cwd:Bsb_global_paths.cwd
193+
~per_proj_dir:Bsb_global_paths.cwd
194194
~forced:!force_regenerate in
195195
(* [-make-world] should never be combined with [-package-specs] *)
196196
if !make_world then

0 commit comments

Comments
 (0)