summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2023-04-27 13:50:24 +0300
committerArnold D. Robbins <arnold@skeeve.com>2023-04-27 13:50:24 +0300
commitd4eca8ab748b9ff38300f393fd7bf0ef5145e2ec (patch)
tree3353a157787bbac2d151e55655a29e1ec6ccdff1
parente26e3eed5c17af799962e22d59b67aadec25387e (diff)
parent5580bd4357d9d498e495cacadef0837d1ec9b9fb (diff)
downloadgawk-d4eca8ab748b9ff38300f393fd7bf0ef5145e2ec.tar.gz
Merge branch 'gawk-5.2-stable'
-rw-r--r--doc/ChangeLog7
-rw-r--r--doc/awkcard.in14
-rw-r--r--doc/gawk.info493
-rw-r--r--doc/gawk.texi19
-rw-r--r--doc/gawktexi.in19
5 files changed, 298 insertions, 254 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 7cf1e681..2b250328 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,10 @@
+2023-04-27 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Update copyright year, gawk version,
+ download information.
+ * gawktexi.in (Persistent Memory): Add a note about memory
+ leaks that happen over time.
+
2023-04-14 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am, gawkinet.texi: Update copyright year.
diff --git a/doc/awkcard.in b/doc/awkcard.in
index 3b0cf3af..5f89bd51 100644
--- a/doc/awkcard.in
+++ b/doc/awkcard.in
@@ -2,7 +2,7 @@
.\"
.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
.\" 2005, 2007, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018,
-.\" 2019, 2020, 2021, 2022
+.\" 2019, 2020, 2021, 2022, 2023
.\" Free Software Foundation, Inc.
.\"
.\" Permission is granted to make and distribute verbatim copies of
@@ -100,7 +100,7 @@ Variables 5\*(CX
\*(CD
.SL
.nf
-\*(FRCopyright \(co 1996\(en2005, 2007, 2009\(en2022
+\*(FRCopyright \(co 1996\(en2005, 2007, 2009\(en2023
Free Software Foundation, Inc.
.nf
.BT
@@ -1984,18 +1984,18 @@ The default for \*(FIcat\*(FR is \*(FC"LC_MESSAGES"\*(FR.\*(CB
.in -.2i
.EB "\s+2\f(HBINTERNATIONALIZATION (\*(GK\f(HB)\*(FR\s0"
.sp .5
-.\" --- FTP/HTTP/GIT Information
+.\" --- FTP/HTTPS/GIT Information
.ES
.nf
\*(CDHost: \*(FCftp.gnu.org\*(FR
-File: \*(FC/gnu/gawk/gawk-5.2.1.tar.gz\fP
+File: \*(FC/gnu/gawk/gawk-5.2.2.tar.gz\fP
.in +.2i
.fi
GNU \*(AK (\*(GK). There may be a later version.
.in -.2i
.nf
.sp .4
-\*(FCgit clone git://github.com/onetrueawk/awk\fP
+\*(FCgit clone https://github.com/onetrueawk/awk\fP
.in +.2i
.fi
\*(NK. This version requires an ANSI C compiler;
@@ -2010,13 +2010,13 @@ File: \*(FC/mawk/mawk.tar.gz\fP
Michael Brennan's \*(MK. Thomas Dickey now
maintains it.\*(CX
.in -.2i
-.EB "\s+2\f(HBFTP/HTTP/GIT INFORMATION\*(FR\s0"
+.EB "\s+2\f(HBFTP/HTTPS/GIT INFORMATION\*(FR\s0"
.sp .5
.\" --- Copying Permissions
.ES
.fi
\*(CDCopyright \(co 1996\(en2005,
-2007, 2009\(en2022 Free Software Foundation, Inc.
+2007, 2009\(en2023 Free Software Foundation, Inc.
.sp .5
Permission is granted to make and distribute verbatim copies of this
reference card provided the copyright notice and this permission notice
diff --git a/doc/gawk.info b/doc/gawk.info
index 056fc2cc..368f1ea9 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -22479,8 +22479,8 @@ use the same ‘gawk’ executable from run to run.
so:
$ gawk --version
- ⊣ GNU Awk 5.2.1, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
- ⊣ Copyright (C) 1989, 1991-2022 Free Software Foundation.
+ ⊣ GNU Awk 5.2.2, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
+ ⊣ Copyright (C) 1989, 1991-2023 Free Software Foundation.
...
If you see the ‘PMA’ with a version indicator, then it’s supported.
@@ -22575,6 +22575,17 @@ the different verbosity levels are.
“leaking” into the backing file and being recovered later by an
attacker.
+ • Over time, the backing file will be filled with memory “leaked” by
+ ‘gawk’ as it runs. Most notably this is the memory used to compile
+ your program into an internal form before running it, which happens
+ each time, but there are other leakages as well. (For an extreme
+ example of this, see this thread
+ (https://lists.gnu.org/archive/html/bug-gawk/2023-04/msg00025.html)
+ in the <bug-gawk@gnu-org> mailing list archives.) It is up to you
+ to use ‘du -sh PMAFILE’ occasionally to monitor how full the file
+ is, and arrange to dump any data you may need before the backing
+ file becomes full.
+
Terence Kelly has provided a separate ‘Persistent-Memory ‘gawk’ User
Manual’ document, which is included in the ‘gawk’ distribution. It is
worth reading. *Note General Introduction: (pm-gawk)Top.
@@ -38221,7 +38232,7 @@ Index
* Kahrs, Jürgen <1>: Contributors. (line 71)
* Kasal, Stepan: Acknowledgments. (line 60)
* Kelly, Terence: Persistent Memory. (line 76)
-* Kelly, Terence <1>: Persistent Memory. (line 127)
+* Kelly, Terence <1>: Persistent Memory. (line 138)
* Kelly, Terence <2>: Feature History. (line 510)
* Kenobi, Obi-Wan: Undocumented. (line 6)
* Kernighan, Brian: History. (line 21)
@@ -40031,244 +40042,244 @@ Ref: Two-way I/O-Footnote-2929593
Node: TCP/IP Networking929675
Node: Profiling932855
Node: Persistent Memory942565
-Ref: Persistent Memory-Footnote-1951523
-Node: Extension Philosophy951654
-Node: Advanced Features Summary953189
-Node: Internationalization955459
-Node: I18N and L10N957165
-Node: Explaining gettext957860
-Ref: Explaining gettext-Footnote-1964013
-Ref: Explaining gettext-Footnote-2964208
-Node: Programmer i18n964373
-Ref: Programmer i18n-Footnote-1969486
-Node: Translator i18n969535
-Node: String Extraction970371
-Ref: String Extraction-Footnote-1971549
-Node: Printf Ordering971647
-Ref: Printf Ordering-Footnote-1974509
-Node: I18N Portability974577
-Ref: I18N Portability-Footnote-1977151
-Node: I18N Example977222
-Ref: I18N Example-Footnote-1980622
-Ref: I18N Example-Footnote-2980698
-Node: Gawk I18N980815
-Node: I18N Summary981471
-Node: Debugger982872
-Node: Debugging983896
-Node: Debugging Concepts984345
-Node: Debugging Terms986171
-Node: Awk Debugging988784
-Ref: Awk Debugging-Footnote-1989761
-Node: Sample Debugging Session989901
-Node: Debugger Invocation990453
-Node: Finding The Bug992082
-Node: List of Debugger Commands998768
-Node: Breakpoint Control1000145
-Node: Debugger Execution Control1003977
-Node: Viewing And Changing Data1007457
-Node: Execution Stack1011195
-Node: Debugger Info1012876
-Node: Miscellaneous Debugger Commands1017175
-Node: Readline Support1022428
-Node: Limitations1023374
-Node: Debugging Summary1026018
-Node: Namespaces1027321
-Node: Global Namespace1028448
-Node: Qualified Names1029893
-Node: Default Namespace1030928
-Node: Changing The Namespace1031703
-Node: Naming Rules1033397
-Node: Internal Name Management1035312
-Node: Namespace Example1036382
-Node: Namespace And Features1038965
-Node: Namespace Summary1040422
-Node: Arbitrary Precision Arithmetic1041935
-Node: Computer Arithmetic1043454
-Ref: table-numeric-ranges1047271
-Ref: table-floating-point-ranges1047769
-Ref: Computer Arithmetic-Footnote-11048428
-Node: Math Definitions1048487
-Ref: table-ieee-formats1051532
-Node: MPFR features1052106
-Node: MPFR On Parole1052559
-Ref: MPFR On Parole-Footnote-11053403
-Node: MPFR Intro1053562
-Node: FP Math Caution1055252
-Ref: FP Math Caution-Footnote-11056326
-Node: Inexactness of computations1056703
-Node: Inexact representation1057734
-Node: Comparing FP Values1059117
-Node: Errors accumulate1060375
-Node: Strange values1061842
-Ref: Strange values-Footnote-11064508
-Node: Getting Accuracy1064613
-Node: Try To Round1067350
-Node: Setting precision1068257
-Ref: table-predefined-precision-strings1068962
-Node: Setting the rounding mode1070847
-Ref: table-gawk-rounding-modes1071229
-Ref: Setting the rounding mode-Footnote-11075287
-Node: Arbitrary Precision Integers1075470
-Ref: Arbitrary Precision Integers-Footnote-11078682
-Node: Checking for MPFR1078838
-Node: POSIX Floating Point Problems1080328
-Ref: POSIX Floating Point Problems-Footnote-11085192
-Node: Floating point summary1085230
-Node: Dynamic Extensions1087494
-Node: Extension Intro1089093
-Node: Plugin License1090401
-Node: Extension Mechanism Outline1091214
-Ref: figure-load-extension1091665
-Ref: figure-register-new-function1093250
-Ref: figure-call-new-function1094360
-Node: Extension API Description1096484
-Node: Extension API Functions Introduction1098213
-Ref: table-api-std-headers1100111
-Node: General Data Types1104575
-Ref: General Data Types-Footnote-11113743
-Node: Memory Allocation Functions1114058
-Ref: Memory Allocation Functions-Footnote-11118783
-Node: Constructor Functions1118882
-Node: API Ownership of MPFR and GMP Values1122787
-Node: Registration Functions1124348
-Node: Extension Functions1125052
-Node: Exit Callback Functions1130628
-Node: Extension Version String1131947
-Node: Input Parsers1132642
-Node: Output Wrappers1147286
-Node: Two-way processors1152134
-Node: Printing Messages1154495
-Ref: Printing Messages-Footnote-11155709
-Node: Updating ERRNO1155864
-Node: Requesting Values1156663
-Ref: table-value-types-returned1157416
-Node: Accessing Parameters1158525
-Node: Symbol Table Access1159809
-Node: Symbol table by name1160325
-Ref: Symbol table by name-Footnote-11163536
-Node: Symbol table by cookie1163668
-Ref: Symbol table by cookie-Footnote-11167949
-Node: Cached values1168013
-Ref: Cached values-Footnote-11171657
-Node: Array Manipulation1171814
-Ref: Array Manipulation-Footnote-11172917
-Node: Array Data Types1172954
-Ref: Array Data Types-Footnote-11175776
-Node: Array Functions1175876
-Node: Flattening Arrays1180905
-Node: Creating Arrays1187957
-Node: Redirection API1192807
-Node: Extension API Variables1195828
-Node: Extension Versioning1196553
-Ref: gawk-api-version1196990
-Node: Extension GMP/MPFR Versioning1198778
-Node: Extension API Informational Variables1200484
-Node: Extension API Boilerplate1201645
-Node: Changes from API V11205781
-Node: Finding Extensions1207415
-Node: Extension Example1207990
-Node: Internal File Description1208814
-Node: Internal File Ops1213138
-Ref: Internal File Ops-Footnote-11224696
-Node: Using Internal File Ops1224844
-Ref: Using Internal File Ops-Footnote-11227275
-Node: Extension Samples1227553
-Node: Extension Sample File Functions1229122
-Node: Extension Sample Fnmatch1237260
-Node: Extension Sample Fork1238855
-Node: Extension Sample Inplace1240131
-Node: Extension Sample Ord1243803
-Node: Extension Sample Readdir1244679
-Ref: table-readdir-file-types1245576
-Node: Extension Sample Revout1246714
-Node: Extension Sample Rev2way1247311
-Node: Extension Sample Read write array1248063
-Node: Extension Sample Readfile1251337
-Node: Extension Sample Time1252468
-Node: Extension Sample API Tests1254758
-Node: gawkextlib1255266
-Node: Extension summary1258302
-Node: Extension Exercises1262160
-Node: Language History1263438
-Node: V7/SVR3.11265152
-Node: SVR41267502
-Node: POSIX1269034
-Node: BTL1270459
-Node: POSIX/GNU1271228
-Node: Feature History1277759
-Node: Common Extensions1297326
-Node: Ranges and Locales1298803
-Ref: Ranges and Locales-Footnote-11303604
-Ref: Ranges and Locales-Footnote-21303631
-Ref: Ranges and Locales-Footnote-31303870
-Node: Contributors1304093
-Node: History summary1310298
-Node: Installation1311744
-Node: Gawk Distribution1312708
-Node: Getting1313200
-Node: Extracting1314199
-Node: Distribution contents1315911
-Node: Unix Installation1323991
-Node: Quick Installation1324813
-Node: Compiling with MPFR1327359
-Node: Shell Startup Files1328065
-Node: Additional Configuration Options1329222
-Node: Configuration Philosophy1331609
-Node: Compiling from Git1334111
-Node: Building the Documentation1334670
-Node: Non-Unix Installation1336082
-Node: PC Installation1336558
-Node: PC Binary Installation1337431
-Node: PC Compiling1338336
-Node: PC Using1339514
-Node: Cygwin1343242
-Node: MSYS1344498
-Node: OpenVMS Installation1345130
-Node: OpenVMS Compilation1345811
-Ref: OpenVMS Compilation-Footnote-11347294
-Node: OpenVMS Dynamic Extensions1347356
-Node: OpenVMS Installation Details1348992
-Node: OpenVMS Running1351427
-Node: OpenVMS GNV1355564
-Node: Bugs1356319
-Node: Bug definition1357243
-Node: Bug address1360894
-Node: Usenet1364485
-Node: Performance bugs1365716
-Node: Asking for help1368734
-Node: Maintainers1370725
-Node: Other Versions1371752
-Node: Installation summary1380684
-Node: Notes1382068
-Node: Compatibility Mode1382878
-Node: Additions1383700
-Node: Accessing The Source1384645
-Node: Adding Code1386180
-Node: New Ports1393316
-Node: Derived Files1397826
-Ref: Derived Files-Footnote-11403673
-Ref: Derived Files-Footnote-21403708
-Ref: Derived Files-Footnote-31404325
-Node: Future Extensions1404439
-Node: Implementation Limitations1405111
-Node: Extension Design1406353
-Node: Old Extension Problems1407517
-Ref: Old Extension Problems-Footnote-11409093
-Node: Extension New Mechanism Goals1409154
-Ref: Extension New Mechanism Goals-Footnote-11412650
-Node: Extension Other Design Decisions1412851
-Node: Extension Future Growth1415050
-Node: Notes summary1415674
-Node: Basic Concepts1416887
-Node: Basic High Level1417572
-Ref: figure-general-flow1417854
-Ref: figure-process-flow1418561
-Ref: Basic High Level-Footnote-11421962
-Node: Basic Data Typing1422151
-Node: Glossary1425569
-Node: Copying1458691
-Node: GNU Free Documentation License1496452
-Node: Index1521775
+Ref: Persistent Memory-Footnote-1952175
+Node: Extension Philosophy952306
+Node: Advanced Features Summary953841
+Node: Internationalization956111
+Node: I18N and L10N957817
+Node: Explaining gettext958512
+Ref: Explaining gettext-Footnote-1964665
+Ref: Explaining gettext-Footnote-2964860
+Node: Programmer i18n965025
+Ref: Programmer i18n-Footnote-1970138
+Node: Translator i18n970187
+Node: String Extraction971023
+Ref: String Extraction-Footnote-1972201
+Node: Printf Ordering972299
+Ref: Printf Ordering-Footnote-1975161
+Node: I18N Portability975229
+Ref: I18N Portability-Footnote-1977803
+Node: I18N Example977874
+Ref: I18N Example-Footnote-1981274
+Ref: I18N Example-Footnote-2981350
+Node: Gawk I18N981467
+Node: I18N Summary982123
+Node: Debugger983524
+Node: Debugging984548
+Node: Debugging Concepts984997
+Node: Debugging Terms986823
+Node: Awk Debugging989436
+Ref: Awk Debugging-Footnote-1990413
+Node: Sample Debugging Session990553
+Node: Debugger Invocation991105
+Node: Finding The Bug992734
+Node: List of Debugger Commands999420
+Node: Breakpoint Control1000797
+Node: Debugger Execution Control1004629
+Node: Viewing And Changing Data1008109
+Node: Execution Stack1011847
+Node: Debugger Info1013528
+Node: Miscellaneous Debugger Commands1017827
+Node: Readline Support1023080
+Node: Limitations1024026
+Node: Debugging Summary1026670
+Node: Namespaces1027973
+Node: Global Namespace1029100
+Node: Qualified Names1030545
+Node: Default Namespace1031580
+Node: Changing The Namespace1032355
+Node: Naming Rules1034049
+Node: Internal Name Management1035964
+Node: Namespace Example1037034
+Node: Namespace And Features1039617
+Node: Namespace Summary1041074
+Node: Arbitrary Precision Arithmetic1042587
+Node: Computer Arithmetic1044106
+Ref: table-numeric-ranges1047923
+Ref: table-floating-point-ranges1048421
+Ref: Computer Arithmetic-Footnote-11049080
+Node: Math Definitions1049139
+Ref: table-ieee-formats1052184
+Node: MPFR features1052758
+Node: MPFR On Parole1053211
+Ref: MPFR On Parole-Footnote-11054055
+Node: MPFR Intro1054214
+Node: FP Math Caution1055904
+Ref: FP Math Caution-Footnote-11056978
+Node: Inexactness of computations1057355
+Node: Inexact representation1058386
+Node: Comparing FP Values1059769
+Node: Errors accumulate1061027
+Node: Strange values1062494
+Ref: Strange values-Footnote-11065160
+Node: Getting Accuracy1065265
+Node: Try To Round1068002
+Node: Setting precision1068909
+Ref: table-predefined-precision-strings1069614
+Node: Setting the rounding mode1071499
+Ref: table-gawk-rounding-modes1071881
+Ref: Setting the rounding mode-Footnote-11075939
+Node: Arbitrary Precision Integers1076122
+Ref: Arbitrary Precision Integers-Footnote-11079334
+Node: Checking for MPFR1079490
+Node: POSIX Floating Point Problems1080980
+Ref: POSIX Floating Point Problems-Footnote-11085844
+Node: Floating point summary1085882
+Node: Dynamic Extensions1088146
+Node: Extension Intro1089745
+Node: Plugin License1091053
+Node: Extension Mechanism Outline1091866
+Ref: figure-load-extension1092317
+Ref: figure-register-new-function1093902
+Ref: figure-call-new-function1095012
+Node: Extension API Description1097136
+Node: Extension API Functions Introduction1098865
+Ref: table-api-std-headers1100763
+Node: General Data Types1105227
+Ref: General Data Types-Footnote-11114395
+Node: Memory Allocation Functions1114710
+Ref: Memory Allocation Functions-Footnote-11119435
+Node: Constructor Functions1119534
+Node: API Ownership of MPFR and GMP Values1123439
+Node: Registration Functions1125000
+Node: Extension Functions1125704
+Node: Exit Callback Functions1131280
+Node: Extension Version String1132599
+Node: Input Parsers1133294
+Node: Output Wrappers1147938
+Node: Two-way processors1152786
+Node: Printing Messages1155147
+Ref: Printing Messages-Footnote-11156361
+Node: Updating ERRNO1156516
+Node: Requesting Values1157315
+Ref: table-value-types-returned1158068
+Node: Accessing Parameters1159177
+Node: Symbol Table Access1160461
+Node: Symbol table by name1160977
+Ref: Symbol table by name-Footnote-11164188
+Node: Symbol table by cookie1164320
+Ref: Symbol table by cookie-Footnote-11168601
+Node: Cached values1168665
+Ref: Cached values-Footnote-11172309
+Node: Array Manipulation1172466
+Ref: Array Manipulation-Footnote-11173569
+Node: Array Data Types1173606
+Ref: Array Data Types-Footnote-11176428
+Node: Array Functions1176528
+Node: Flattening Arrays1181557
+Node: Creating Arrays1188609
+Node: Redirection API1193459
+Node: Extension API Variables1196480
+Node: Extension Versioning1197205
+Ref: gawk-api-version1197642
+Node: Extension GMP/MPFR Versioning1199430
+Node: Extension API Informational Variables1201136
+Node: Extension API Boilerplate1202297
+Node: Changes from API V11206433
+Node: Finding Extensions1208067
+Node: Extension Example1208642
+Node: Internal File Description1209466
+Node: Internal File Ops1213790
+Ref: Internal File Ops-Footnote-11225348
+Node: Using Internal File Ops1225496
+Ref: Using Internal File Ops-Footnote-11227927
+Node: Extension Samples1228205
+Node: Extension Sample File Functions1229774
+Node: Extension Sample Fnmatch1237912
+Node: Extension Sample Fork1239507
+Node: Extension Sample Inplace1240783
+Node: Extension Sample Ord1244455
+Node: Extension Sample Readdir1245331
+Ref: table-readdir-file-types1246228
+Node: Extension Sample Revout1247366
+Node: Extension Sample Rev2way1247963
+Node: Extension Sample Read write array1248715
+Node: Extension Sample Readfile1251989
+Node: Extension Sample Time1253120
+Node: Extension Sample API Tests1255410
+Node: gawkextlib1255918
+Node: Extension summary1258954
+Node: Extension Exercises1262812
+Node: Language History1264090
+Node: V7/SVR3.11265804
+Node: SVR41268154
+Node: POSIX1269686
+Node: BTL1271111
+Node: POSIX/GNU1271880
+Node: Feature History1278411
+Node: Common Extensions1297978
+Node: Ranges and Locales1299455
+Ref: Ranges and Locales-Footnote-11304256
+Ref: Ranges and Locales-Footnote-21304283
+Ref: Ranges and Locales-Footnote-31304522
+Node: Contributors1304745
+Node: History summary1310950
+Node: Installation1312396
+Node: Gawk Distribution1313360
+Node: Getting1313852
+Node: Extracting1314851
+Node: Distribution contents1316563
+Node: Unix Installation1324643
+Node: Quick Installation1325465
+Node: Compiling with MPFR1328011
+Node: Shell Startup Files1328717
+Node: Additional Configuration Options1329874
+Node: Configuration Philosophy1332261
+Node: Compiling from Git1334763
+Node: Building the Documentation1335322
+Node: Non-Unix Installation1336734
+Node: PC Installation1337210
+Node: PC Binary Installation1338083
+Node: PC Compiling1338988
+Node: PC Using1340166
+Node: Cygwin1343894
+Node: MSYS1345150
+Node: OpenVMS Installation1345782
+Node: OpenVMS Compilation1346463
+Ref: OpenVMS Compilation-Footnote-11347946
+Node: OpenVMS Dynamic Extensions1348008
+Node: OpenVMS Installation Details1349644
+Node: OpenVMS Running1352079
+Node: OpenVMS GNV1356216
+Node: Bugs1356971
+Node: Bug definition1357895
+Node: Bug address1361546
+Node: Usenet1365137
+Node: Performance bugs1366368
+Node: Asking for help1369386
+Node: Maintainers1371377
+Node: Other Versions1372404
+Node: Installation summary1381336
+Node: Notes1382720
+Node: Compatibility Mode1383530
+Node: Additions1384352
+Node: Accessing The Source1385297
+Node: Adding Code1386832
+Node: New Ports1393968
+Node: Derived Files1398478
+Ref: Derived Files-Footnote-11404325
+Ref: Derived Files-Footnote-21404360
+Ref: Derived Files-Footnote-31404977
+Node: Future Extensions1405091
+Node: Implementation Limitations1405763
+Node: Extension Design1407005
+Node: Old Extension Problems1408169
+Ref: Old Extension Problems-Footnote-11409745
+Node: Extension New Mechanism Goals1409806
+Ref: Extension New Mechanism Goals-Footnote-11413302
+Node: Extension Other Design Decisions1413503
+Node: Extension Future Growth1415702
+Node: Notes summary1416326
+Node: Basic Concepts1417539
+Node: Basic High Level1418224
+Ref: figure-general-flow1418506
+Ref: figure-process-flow1419213
+Ref: Basic High Level-Footnote-11422614
+Node: Basic Data Typing1422803
+Node: Glossary1426221
+Node: Copying1459343
+Node: GNU Free Documentation License1497104
+Node: Index1522427

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 13ba6159..97fe5567 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -59,7 +59,7 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH February, 2023
+@set UPDATE-MONTH April, 2023
@set VERSION 5.3
@set PATCHLEVEL 0
@@ -31432,8 +31432,8 @@ memory like so:
@example
$ @kbd{gawk --version}
-@print{} GNU Awk 5.2.1, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
-@print{} Copyright (C) 1989, 1991-2022 Free Software Foundation.
+@print{} GNU Awk 5.2.2, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
+@print{} Copyright (C) 1989, 1991-2023 Free Software Foundation.
@dots{}
@end example
@@ -31569,6 +31569,19 @@ If @command{gawk} is run by the @command{root} user, then
persistent memory is not allowed. This is to avoid the possibility
of private data ``leaking'' into the backing file and being
recovered later by an attacker.
+
+@item
+Over time, the backing file will be filled with memory ``leaked''
+by @command{gawk} as it runs. Most notably this is the memory used
+to compile your program into an internal form before running it,
+which happens each time, but there are other leakages as well.
+(For an extreme example of this, see
+@uref{https://lists.gnu.org/archive/html/bug-gawk/2023-04/msg00025.html,
+this thread} in the @EMAIL{bug-gawk@@gnu-org, bug-gawk at gnu.org}
+mailing list archives.) It is up to you to use @samp{du -sh
+@var{pmafile}} occasionally to monitor how full the file is, and
+arrange to dump any data you may need before the backing file becomes
+full.
@end itemize
Terence Kelly has provided a separate @cite{@value{PMGAWKTITLE}}
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 58861621..2802bccf 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -54,7 +54,7 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH February, 2023
+@set UPDATE-MONTH April, 2023
@set VERSION 5.3
@set PATCHLEVEL 0
@@ -30351,8 +30351,8 @@ memory like so:
@example
$ @kbd{gawk --version}
-@print{} GNU Awk 5.2.1, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
-@print{} Copyright (C) 1989, 1991-2022 Free Software Foundation.
+@print{} GNU Awk 5.2.2, API 3.2, PMA Avon 8-g1, (GNU MPFR 4.1.0, GNU MP 6.2.1)
+@print{} Copyright (C) 1989, 1991-2023 Free Software Foundation.
@dots{}
@end example
@@ -30488,6 +30488,19 @@ If @command{gawk} is run by the @command{root} user, then
persistent memory is not allowed. This is to avoid the possibility
of private data ``leaking'' into the backing file and being
recovered later by an attacker.
+
+@item
+Over time, the backing file will be filled with memory ``leaked''
+by @command{gawk} as it runs. Most notably this is the memory used
+to compile your program into an internal form before running it,
+which happens each time, but there are other leakages as well.
+(For an extreme example of this, see
+@uref{https://lists.gnu.org/archive/html/bug-gawk/2023-04/msg00025.html,
+this thread} in the @EMAIL{bug-gawk@@gnu-org, bug-gawk at gnu.org}
+mailing list archives.) It is up to you to use @samp{du -sh
+@var{pmafile}} occasionally to monitor how full the file is, and
+arrange to dump any data you may need before the backing file becomes
+full.
@end itemize
Terence Kelly has provided a separate @cite{@value{PMGAWKTITLE}}