Skip to content

Commit a139cc1

Browse files
committed
json-check: use min.json
dwg: support .min.json json: support -m
1 parent 3ce5a33 commit a139cc1

File tree

4 files changed

+54
-16
lines changed

4 files changed

+54
-16
lines changed

NEWS

+7
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ See the end for copying conditions.
44

55
LibreDWG version 0.13.1 - 2023-02-10 - beta:
66

7+
Minor features:
8+
* dwgread now supports --fmt=minJSON or --file=XXX.min.json
9+
to emit minimized json without whitespace. Use eg.
10+
jq . XXX.min.json
11+
to unminimize it. Saves about 50% size.
712
Minor bugfixes:
813
* Fixed DXF XRECORD xdata values and sizes (wrong binary encoding in outdxf,
914
wrong xdata_size in indxf)
@@ -15,6 +20,8 @@ Minor bugfixes:
1520
* Change DIMSTYLE.DIMTXTDIRECTION dxf code from 295 to 294. (#835)
1621
Undocumented, ODA has it as 295, netDXF as 294. on indxf accept both.
1722
* Fix encode ERROR: Wrong object size on MS adjust on large objects.
23+
* Fix encode downconvert_DIMSTYLE, when the eed already had one
24+
member, AcadAnnotative.
1825

1926
LibreDWG version 0.13 - 2023-02-04 - beta:
2027

dwg.in

+36-9
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,41 @@ for d in "$@"; do
9090
if [ "$dir" = "_." ]; then dir=""; fi
9191
if [ -z "$ext" ]; then
9292
case $(basename "$d") in
93-
*.dwg) ext=dwg ;;
94-
*.DWG) ext=dwg ;;
95-
*.dxf) ext=dxf ;;
96-
*.DXF) ext=dxf ;;
97-
*.dxfb) ext=dxfb ;;
98-
*.DXFB) ext=dxfb ;;
99-
*.json) ext=json ;;
100-
*.JSON) ext=json ;;
93+
*.dwg)
94+
ext=dwg
95+
b=$(basename "$d" ".$ext")
96+
;;
97+
*.DWG)
98+
ext=dwg
99+
b=$(basename "$d" .DWG)
100+
;;
101+
*.dxf)
102+
ext=dxf
103+
b=$(basename "$d" ".$ext")
104+
;;
105+
*.DXF)
106+
ext=dxf
107+
b=$(basename "$d" .DXF)
108+
;;
109+
*.dxfb)
110+
ext=dxfb
111+
b=$(basename "$d" ".$ext")
112+
;;
113+
*.DXFB)
114+
ext=dxfb
115+
b=$(basename "$d" .DXFB)
116+
;;
117+
*.min.json)
118+
b=$(basename "$d" .min.json)
119+
ext=json ;;
120+
*.json)
121+
ext=json
122+
b=$(basename "$d" ".$ext")
123+
;;
124+
*.JSON)
125+
ext=json
126+
b=$(basename "$d" .JSON)
127+
;;
101128
*)
102129
if [ "$(head -c1 "$d")" = "{" ]; then
103130
ext=json
@@ -112,10 +139,10 @@ for d in "$@"; do
112139
echo "Illegal extension for $d"
113140
exit
114141
fi
142+
b=$(basename "$d" ."$ext")
115143
;;
116144
esac
117145
fi
118-
b=$(basename "$d" ."$ext")
119146
log="$b$dir.$ext.log"
120147
out="$b$dir.dwg"
121148
ori_timeout="$timeout"

json-check

+4-4
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,12 @@ esac
4646

4747
# first create a dwg log to compare against
4848
# ./log "$v" "$d"
49-
rm "./$b.log" "./$b.json" "./$b.dwg" 2>/dev/null
50-
if ! ./json "-l$b.log" "$v" "$d"; then
49+
rm "./$b.log" "./$b.min.json" "./$b.dwg" 2>/dev/null
50+
if ! ./json -m "-l$b.log" "$v" "$d"; then
5151
exit 2
5252
fi
53-
if [ -f "$b.json" ]; then
54-
if ! ./dwg -y "$v" "$b.json"; then
53+
if [ -f "$b.min.json" ]; then
54+
if ! ./dwg -y "$v" "$b.min.json"; then
5555
exit 1
5656
fi
5757
fi

json.in

+7-3
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,13 @@ ob="$b"
3333
ext=
3434
gerr=0
3535
log=
36+
jext="json"
3637

3738
for d in "$@"; do
3839
case $d in
40+
-m)
41+
jext="min.json"
42+
;;
3943
-v*)
4044
v="$d"
4145
;;
@@ -97,10 +101,10 @@ for d in "$@"; do
97101
if [ -z "$log" ]; then
98102
log="$b$dir.log"
99103
fi
100-
out="$b$dir.json"
101-
echo "$timeout $TESTPROG programs/dwgread $v -Ojson -o $out $d 2>$log"
104+
out="$b$dir.$jext"
105+
echo "$timeout $TESTPROG programs/dwgread $v -o $out $d 2>$log"
102106
# shellcheck disable=SC2086
103-
$timeout $TESTPROG programs/dwgread "$v" -Ojson -o "$out" "$d" 2>"$log"
107+
$timeout $TESTPROG programs/dwgread "$v" -o "$out" "$d" 2>"$log"
104108
err=$?
105109
[ $err -gt $gerr ] && gerr=$err
106110
tail -n2 "$log"

0 commit comments

Comments
 (0)