@@ -69,28 +69,46 @@ experiments_table=$(generate_experiments_table)
69
69
early_access_table=$( generate_early_access_table)
70
70
beta_table=$( generate_beta_table)
71
71
72
- # Update the experimental features section
73
- awk \
74
- -v table=" ${experiments_table} " \
75
- ' BEGIN{include=1} /BEGIN: available-experimental-features/{print; print table; include=0} /END: available-experimental-features/{include=1; print} include' \
76
- " ${dest} " \
77
- > " ${dest} " .tmp
72
+ # We're using a single-pass awk script that replaces content between markers
73
+ # No need for cleanup operations
78
74
79
- # Update the early access features section
80
- awk \
81
- -v table=" ${early_access_table} " \
82
- ' BEGIN{include=1} /BEGIN: early-access-features/{print; print table; include=0} /END: early-access-features/{include=1; print} include' \
83
- " ${dest} " .tmp \
84
- > " ${dest} " .tmp2
75
+ # Create a single awk script to update all sections without requiring multiple temp files
76
+ awk -v exp_table=" ${experiments_table} " -v ea_table=" ${early_access_table} " -v beta_table=" ${beta_table} " '
77
+ # State variables to track which section we are in
78
+ BEGIN { in_exp = 0; in_ea = 0; in_beta = 0; }
79
+
80
+ # For experimental features section
81
+ /<!-- BEGIN: available-experimental-features -->/ {
82
+ print; print exp_table; in_exp = 1; next;
83
+ }
84
+ /<!-- END: available-experimental-features -->/ {
85
+ in_exp = 0; print; next;
86
+ }
87
+
88
+ # For early access features section
89
+ /<!-- BEGIN: early-access-features -->/ {
90
+ print; print ea_table; in_ea = 1; next;
91
+ }
92
+ /<!-- END: early-access-features -->/ {
93
+ in_ea = 0; print; next;
94
+ }
95
+
96
+ # For beta features section
97
+ /<!-- BEGIN: beta-features -->/ {
98
+ print; print beta_table; in_beta = 1; next;
99
+ }
100
+ /<!-- END: beta-features -->/ {
101
+ in_beta = 0; print; next;
102
+ }
103
+
104
+ # Skip lines between markers
105
+ (in_exp || in_ea || in_beta) { next; }
106
+
107
+ # Print all other lines
108
+ { print; }
109
+ ' " ${dest} " > " ${dest} .new"
85
110
86
- # Update the beta features section
87
- awk \
88
- -v table=" ${beta_table} " \
89
- ' BEGIN{include=1} /BEGIN: beta-features/{print; print table; include=0} /END: beta-features/{include=1; print} include' \
90
- " ${dest} " .tmp2 \
91
- > " ${dest} " .tmp3
92
-
93
- mv " ${dest} " .tmp3 " ${dest} "
94
- rm -f " ${dest} " .tmp " ${dest} " .tmp2
111
+ # Move the new file into place
112
+ mv " ${dest} .new" " ${dest} "
95
113
96
114
(cd site && pnpm exec prettier --cache --write ../" ${dest} " )
0 commit comments