-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathChangeLog
5505 lines (5333 loc) · 252 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
version 2025a, in progress
- "meantest" and "vartest" commands: support a variant where
the second series is a dummy with which to split the first
into two samples
- macOS builds: update gnuplot to version 6.0.2
2024-12-12 version 2024d
- "append" command: make the help text more explicit
- "pca" command: make a $result bundle available
- "square" command and square() function: don't skip dummy
variables when computing cross-products
- xmax() and xmin() functions; consolidate with max, min but
retain the "x" variants as aliases until further notice
- Fix possible incorrect behavior of "smpl" in some special
cases (inside a function, when the dataset is sub-sampled at
the caller level)
- nelem() function: ensure that it returns the number of bytes
in a string argument, as per the documentation
- Avoid false positives in detecting markdown in help text for
function packages
- Windows10 theme: fix invisibility of some GUI elements
- recent macOS: fix crash on trying to open PDF viewer to a
specific chapter of the User's Guide
- dbnomics addon: don't fail on database IDs that contain '@'
(as some OECD identifiers now do)
- gretl_edit: use a scrollable window when displaying stderr
output, so it doesn't get truncated
- When adding a 1x1 matrix to a bundle via defbundle() or _()
don't automatically convert it to a scalar
- Tweaks for handling of empty matrices plus a little more
documentation
- GUI: support Ctrl + mouse-wheel to resize text
- GUI: fixes for breakage when resizing plots in some cases
- Documentation for addons: avoid collision with hyperref
2024-10-21 version 2024c
- Random number generation: add Dirichlet and generic discrete
distributions
- "summary" command with --by option: provide a $result matrix
if the list argument contains a single series, and improve
the format of the printout
- "corr" command: be more explicit about the sample(s) used
- "rename" command: add a --case option to support case
conversion of all series names in the dataset
- "reset" command: add a --robust option and scale the squares
and cubes of the fitted values to avoid numerical instability
- flatten() function: add an extra (vec-wise) mode for matrices
- matrix "left division" operator: improve efficiency when the
left-hand operand is triangular
- Fix bug: append via console not updating series list in the
main gretl window
- Fix bug: console command-line broken following use of "printf"
with no newline in the format
- Fix bug in "corrgm" command: spurious significance stars shown
for the PACF when the --bartlett option is given
- Fix bug in "adf" command (without the --gls option): error if
all of --c, --nc, --ct and --ctt were given
- Fix a lacuna in type-checking of hansl statements
- Fix: ensure that attempted use of the "smpl" command produces
an error if there's no dataset in place
- GUI: support the fixed-sample option when appending data
- GUI: random effects panel model: fix breakage in selecting
the --nerlove option
- GUI: support the --by option for the "summary" command, when
called via the main-window "View" menu
- GUI: fix the "Numerical summary" option in a window showing
a factorized boxplot (was broken for a string-valued factor)
- GUI: ensure that the "Compact data" and "Expand data" menu
items are disabled when the dataset is cross-sectional
- GUI: support Ctrl+L to clear the console
- GUI specification dialogs for calling packaged functions:
avoid mixture of languages so far as possible
- Fix bad behavior from "set force_decpoint off" for users in
a locale that normally uses decimal comma but who choose not
to use it
- Fix incorrect handling of ctrl-r (carriage return) in some
cases of script output
- Fix GUI language selection on recent macOS
- Fix relatively slow matrix inversion on Windows; speed-up
should be apparent for symmetric positive definite matrices
in particular
- Windows 64-bit build: link against MS UCRT; use GTK3; update
dependency DLLs and cross-compiler; make Consolas the default
monospace font
- SVAR addon: computational and graphical enhancements for
sign-restricted models; add more user-friendly methods for
specifying restrictions;
- Update translations: Galician, German, Italian and Polish
2024-05-21 version 2024b
- "gridplot" command: add a --title option
- "clear" command: add an --all option
- instrings() function: add optional boolean argument to get
a simple boolean return value
- typeof() function: functionality is extended to cover hansl
expressions in general
- exists() function: recommended usage is restricted to top-
level identifiers, but backward compatibility is preserved
for the present
- new function binperms() for binary permutations
- Testing for equality via "==" and "!=": extend this to cover
arrays and bundles
- help files: clarify the help for some commands and improve
formatting
- $sysinfo bundle: add "stack_size"
- mrw (Mankiw-Romer-Weil) dataset: rename "inv" as "i_y"
- Fix bug: crash on replacing a single character in a string
variable, when the replacement UTF-8 character takes up more
bytes than the original
- Fix bug: potential crash when using the "smpl" command on a
dataset that is already subject to random resampling
- Fix bug: possible confusion in parsing lag specifications
for list members, as in "list.vname(-1)"
- Fix bug: possible interference of options passed in "plot"
with those passed to "gnuplot"
- Fix bug: crash in 32-bit gretl for Windows when trying to
read gdtb data files created on a 64-bit system
- Function packages: validate gfn files using an XML schema
rather than a Document Type Definition
- GUI, function packages: further extensions to the "ui-maker"
functionality, plus minor fixes for the function-call dialog
- GUI: support the --preserve-panel option in the dialog box
for sub-sampling
- GUI: support the Gamma distribution under /Tools/Distribution
graphs
- GUI: fix the "Packages" entry under Help
- GUI: ensure that all fonts scale on zoom in/out in help
- GUI: add more choices for plot scaling
- GUI: improvements to the regls dialog
- Internals: economize stack usage in case of nested function
calls
- 64-bit Windows build: increase stack size to 8 MiB (as per
Linux and macOS)
- regls addon: bug fixes and improved documentation
2024-04-05 version 2024a
- gretl "addons": integrate with releases on all platforms
- $sysinfo bundle: add gnuplot version as scalar ("gnuplot")
- "plot" command: update the help text and apply a fix for the
case of showing multiple bands
- "tsplots" command with matrix input: don't require a list
argument, plot all columns by default
- "gnuplot" command with --matrix and --time-series options:
show dataset time on x-axis if possible
- "gnuplot" command: add --y2axis option to specify placement
of a specifed y-variable on a second axis
show dataset time on x-axis if possible
- "info" command: add --to-file and --from-file options for
manipulating the description of a dataset
- "clear" command: add --all option to clear both function
definitions and all data
- "outfile" block: add a --decpoint option to enforce use of
decimal point (dot) for output within the block
- "freq" command: automatically switch to no binning in case
of few distinct values of the series argument
- "tsls" command: add a --matrix-diff option for the Hausman
test, using the method of Padadopoulos (Econometrics, 2023)
- "gmm" command block: support lists of series in extenso on
either side of an "orthog" statement
- "corrgm", "xcorrgm", "pergm" and "qlrtest" commands: make
these commands work properly in a "gpbuild" block
- "gmm" command: mark the --two-step and --iterate options as
mutually exclusive
- "loop foreach": support arrays and bundles that are located
inside other arrays or bundles
- "pkg install" command: support installation of data file
packages in tar.gz format from the gretl server
- "pkg query" command: show details of script and data files
from a package's "examples" directory, if present
- "pkg" command: add "run-sample" action to run the sample
script from a specified package
- "modeltab" command: add an --options flag to control
formatting via the command line
- New function fevalb(): a more flexible variant of feval()
- New function randstr(): gives a random hexadecimal string
of chosen length, to serve as a unique ID
- bcheck() function: make the second argument optional
- nobs() function: accept a list argument
- Fix broken backward compatibility in handling of backslash
followed by double-quote in string literals
- Fix bug: crash when plotting matrix data with the multiple
bands option
- Fix bug: restore support for reading JMulTi .dat files
- Fix bug: the "smpl" command with --dummy option could end
up broken after doing "Save data" in the GUI when there's
a sample restriction in place
- Fix bug: possible crash when a dbnomics download fails, if
invoked via the "data" command
- Fix bugs connected with estimation of panel data models via
pooled OLS with the --cluster option: the option was being
ignored in some cases and the "add" test was not working
- Fix bug: the symmetry checker for gretl matrices could fail
to flag asymmetry in some cases
- Fix bug: typeof() and typename() flagging an error in case
no object was found corresponding to the argument
- Fix bug: "modeltab" command flagging a spurious error in
some cases
- geoplot addon: fix obsolete usage of "outfile"
- GUI: fix for the "Dataset structure" mechanism when trying
to convert from side-by-side time series to panel
- GUI: apply some legibility fixes for dark GTK themes
- GUI: enable the advertised keystrokes in file "browser"
windows (bug #294)
- GUI function package editor: add support specific to the
editing of markdown help
- GUI script editor: improve handling of C-style comments in
auto-indentation
- GUI: make a newly installed data file package accessible
by reopening the relevant window; don't require a restart
of gretl
- gdt and gdtb data file specification: allow files which
contain no actual data series, just the implicit "const"
plus metadata (structure and number of observations)
- add a suite of unit tests to the gretl source tree
2023-12-05 version 2023c
- New commands "gridplot" and "gpbuild" for constructing
composite plots
- "gnuplot" command: implement new option syntax to support
multiple "bands" in a single plot (but continue to support
the old band syntax until further notice)
- "panel" command: support the --cluster option to produce
a greater variety of robust standard errors, including two-
way clustering; add an option to use the Driscoll-Kraay
covariance estimator; and support the --no-df-corr option
- "tsls" command: if the --robust option is given, compute a
robust variant of the Hausman test
- "scatters" command: expose its time-series functionality
under the name command-name "tsplots"
- String-valued series: support returning such series from a
user function, and loosen the restrictions on assignment to
such series
- New usage of the '*' operator to augment a string via
repetition, for example: string s = "abc" * 3
- New function asort() for sorting arrays of all types
- New function corresp() to determine the correspondence (if
any) between two series or vectors
- New function rgbmix() to do mixing of colors via their R, G
and B channels
- String functions strsub(), regsub(), substr(), tolower() and
toupper(): generalize to support strings arrays and string-
valued series as arguments, as well as individual strings
- New function strvsort(): recodes a string-valued series such
that the numeric codes correspond to the alphabetical order
of the string values, or in line with a reordering specified
by the user
- Add documentation for the functions dec2bin() and bin2dec(),
which were first defined in version 2022b
- kdensity() function: clarify its documentation
- halton() function: remove the limit of 40 on the number of
sequences this function can generate
- Input of numeric constants: support hexadecimal notation
- $sysinfo accessor bundle: add CPU information
- Fix bug dating from 2022c: broken handling of the syntax
listname.series when used in a function that is called from
within a loop
- Fix bug: possibly incorrect results when applying a vector
selection to a string variable
- Fix bug: possibly incomplete results when compacting daily
data to weekly
- Fix bug: wrong alignment when appending dated weekly data
- Fix bug: invcdf() and critical() misbehaving for the chi-
square distribution with a CDF argument of 1.0
- Fix bug: pdf() giving NA for Chi-square with argument 0
- Fix bug: possible duplicate entries in GUI function package
listing
- Fix bug: markdown conversion not always working properly
- Fix bug: "kdplot" command not respecting the --output option
- Fix bug: pexpand() function not working as advertised
- GUI: Add means of stacking side-by-side time series into
panel series via the "Dataset structure" wizard
- GUI: Add a color selection dialog under the Tools menu
- GUI: use "Apply" and "OK" buttons more consistently
- GUI: make more apparent the facility to sort series in the
main window by clicking the headers
- GUI: add a menu item to install a local function package,
under the "/File/Function packages" menu
- GUI: add Ctrl + mouse wheel as a means of changing text
size in various windows
- GUI editor and gretl_edit: add Ctrl-L keystroke for going
to a specifed line, improve the search/replace dialog and
fix a problem with automatic indentation
- Windows and macOS packages: add a dark GTK theme
- R interaction via embeddedR: update mechanism for determining
R_HOME
2023-07-21 version 2023b
- New command "kdplot": simple access to a kernel density plot
for a single series
- New function typename(): return a string giving the type of
the argument (can replace typeof() plus typestr())
- "arima" command: implement built-in procedure for assessing
lag orders, via new --lagselect option, and add GUI access
- "corr" command: add 1 percent critical value of correlation
coefficient to the output
- "join" command: import descriptions of newly-added series,
if present
- "gnuplot" command: add new options --inbuf and --outbuf to
accept, respectively, input from a named string and output
to a named string
- "smpl" command with the panel-data --time option: support
the --replace modifier
- "outfile" command: insist on correct syntax for usage with
the --tempfile option
- aggregate() function: support matrix input
- misszero() and zeromiss() functions: support matrix input
- SVAR addon: implement mixed (set-based and zero) restrictions
- geoplot addon: make the plot key position configurable
- regls addon: add an mregls() function for working with data
in matrix form
- Add optional boolean "skip_na" argument for several matrix
functions that compute statistics
- Functions bkfilt, bwfilt, fracdiff, filter: disallow panel
data since these functions assume regular time-series data
- Boxplots: respect the chosen gnuplot theme, if applicable
- Add "empty" as a dummy constant for initializing an empty
string, matrix, bundle or array
- "numeric" meta-type: allow usage in function packages, and
hook it up for syntax highlighting
- Function packages: support use of Markdown for help text
- Function packages: add a new special function role named
"ui-maker" to support customization of the user interface
- "R_functions" facility: handle row and column names when
passing matrices to and from R
- Fix bug: failure in the Kalman function ksmooth() when in
"univariate" mode and the observable has more elements than
the state
- Fix bug: possible failure in "smpl" with the --time option
for panel data
- Fix bug: memory corruption on trying to append an array to
itself
- Fix bug: single-equation LIML could fail when there's no
constant in the specification
- Fix bug: spurious "no data avilable for forecasting" error
in GUI forecasting from ARIMA model without constant term
- Fix bug: function package code with very long lines could
lead to a crash (e.g. on "View code" in the GUI)
- Fix bug: the sumc() function produced incorrect result for
complex matrices (too large by 1)
- Fix bug: potential crash on calling a hansl function with
no arguments when it has only optional parameters
- Fix bug: MPI crash on broadcasting an empty matrix, with
some MPI variants
- Fix bug: potential crash in estimating a restricted VECM
when there are no regressors outside of the cointegration
space
- Fix bug: potential crash in "arima" with the --x-12-arima
option with data starting in the year 1
- Fix GUI bug: dynamic panel data model menu item not always
available when it should be
- Fix GUI bug: breakage on trying to select the decimal comma
when exporting data as CSV
- GUI "Check for addons" facility: redesign to present the
information more clearly
- GUI sample selection for panel data: clarify and fix
- GUI "stop" button to abort script execution: make this more
responsive
- GUI "dataset structure wizard": improve the efficiency of
checking candidate unit and time variables for panel data
- Add new example data file: sunspots time series from 1740
- User's Guide: updates, including description of data file
formats
- Add more strings to gretl.pot and update translations
- 64-bit Windows build: update to OpenBLAS 0.3.23 and MS-MPI
version 10.1.3
2023-03-02 version 2023a
- "logit" command (binary case): add a matrix holding odds
ratios plus standard errors and confidence intervals to the
$model bundle; also make this information available under
the Analysis menu in the GUI model window
- "set" command: add key "hac_missvals" to select the policy
for HAC estimation when there are incomplete observations;
and make the Equal Spacing method the default
- "gnuplot" and "plot" commands: putting an .html suffix onto
the output filename now invokes gnuplot's "canvas" driver
- "midasreg" command: generate more specific error message
for invalid specification
- "fcast" command: enable the --plot option for forecasts
based on a system, when a single series is selected;
introduce --all-probs option for ordered logit/probit and
multinomial logit models
- "system" command: ensure that the $system bundle includes
the sample limits as "sample_t1" and "sample_t2"
- strptime() and strftime() functions: generalize to allow
vectorized usage, and add variants (strpday, strfday) to
work with epoch days rather than Unix time
- pexpand() function: add optional boolean switch to expand
in the cross-sectional dimension
- readfile() function: ensure that we construct a legitimate
local filename when downloading a web resource
- normtest() function: add option to include all available
tests in the returned matrix
- int() function: return NA if the integer part of the argument
lies beyond the range of a 32-bit signed integer
- instring() and strstr() functions: drop the policy of auto-
escaping the string to be found
- invpd() function: add a second optional argument for retrieving
the log determinant
- qform() function: introduce alternate syntax for the case
when the middle matrix is diagonal
- CSV data importation: be less hasty in concluding that the
column separator is comma
- CSV importation via GUI: clarify the dialog that governs
how the first column is treated; also don't show any string
tables at the moment of importation (strings tables can now
be accessed under the Data menu)
- "join" via the GUI: make it evident that specifying keys
may not be necessary with time-series data; fix a bug with
use of the filter option
- Script editor, split pane: ensure that when line-numbering
is selected it carries over to the new pane; also improve
tab-completion for names of functions
- Drag and drop of data file onto gretl: offer a choice of
replacing or trying to append to the current dataset
- Fix error message for invalid (string) array index
- Fix error message for missing function-package dependency
- Fix bug: buffer overrun when creating names for transformed
series if the original series has a very long name
- Fix bug: crash on doing "pkg install" from the command line
when the window listing function packages on the server is
displayed at the time
- Fix bug: possible false positive when checking for duplicate
function packages
- Fix bug: the weekday() function could produce an off-by-one
error in some cases
- Fix for detection of the R executable when called via a
foreign block on macOS
- configure/build apparatus: add support for using Intel's
oneAPI and MKL, or libblis + libflame, for BLAS and LAPACK
functionality
- macOS build: include TargetConditionals.h in libgretl.h
- MS Windows: work around the limitations of mktime() and
localtime() using GLib functionality
- geoplot addon: document the facilities available for
plotting qualitative data; fix a bug whereby writing a
map as an image file (e.g. PDF) could fail
- Gretl User's Guide: rewrite the "Calendar dates" chapter
including more information on the available formats and
the means of converting between them
- Reinstate old function file path for backward compatibility
2022-11-01 version 2022c
- substantial speed-up for hansl functions called from loops
or other iterative contexts
- lists and strings: support vector selection of elements
- "printf" command: support a named string variable as the
"format" argument
- "ols" command with --jackknife option: make the output more
specific, and complain when this option is not applicable
- "panplot" command: add --single-yaxis option, and support
the addition of "literal" supplementary gnuplot commands
(but not when the --grid or --stack option is selected)
- "append" and "join" commands: support the --frompkg option,
as for the "open" command
- toepsolv() function: add fourth argument for returning the
determinant
- flatten() function for arrays of strings: add the ability to
specify a custom separator
- strsub() function help: note that an array of strings can be
given as the first argument
- instring() and strstr() functions: add optional parameter
for case-insensitive search
- gretl_edit: enable auto-completion, add some specialized
"developer" options, and add a "kill" button to stop script
execution
- script editor: add hide/show functionality for selected
regions in a hansl script
- script editor, "Help on command": disambiguate cases where
we have a command and a function of the same name
- regls addon: plotting enhancements; document GUI usage
- geoplot addon: start adding support for encoded data
- Clarify and properly enforce the case where the "const"
property of a hansl function argument must be inherited
- Fix and speed up reading of gretl's binary matrix files via
Python (under gretl's "foreign" apparatus)
- Fix bug: fail after first iteration when adding a string to
an array of strings defined within a loop
- Fix bug: corruption on extracting a "series" from a bundle
as a matrix when the series contains NAs
- Fix bug: the GUI option to purge all-missing rows from a
daily dataset could go wrong; in addition make this option
available for scripting use via the "dataset" command
- Fix bug: some cases where an ARMA model can be estimated
most efficiently via OLS were not being recognized
- Fix bug: crash on trying to extract a submatrix of size
zero via indexation
- Fix some actual or potential memory leaks
- gnuplot version requirement: raise from 5.0 to 5.2
- Update mechanisnm for uploading function packages, since
sourceforge now requires use of https
2022-08-09 version 2022b
- new command/keyword "continue" for use in loops
- new option --decr for use with index loops
- new function commute(): pre/post multiplication by the
commutation operator (replaces analogous function in the
extra addon)
- new function sphericorr(): spherical coordinates
representation for correlation matrices
- new functions dec2bin() and bin2dec() for conversion
between decimal integers and their binary representation
- "garch" command: add the model order scalars (p and q) to
the $model bundle
- "leverage" command: add $result accessor to obtain
leverage, influence and studentized residuals as matrix
- "pergm" and "fractint" commands: use FFT for computing the
spectrum
- "printf" command: add "\r" as a recognized escape sequence
- "smpl" command: add --dates option to resolve potential
ambiguity of obs limits in case of annual and daily data
- "markers" command: add --from-series option
- "store" command: support saving a gretl session file (only
in the GUI program), given the ".gretl" suffix
- "vecm" command: redefine the "order" member of the $system
accessor to give the lag order in levels, consistent with
the vecm documentation
- assert() function: add a "fatal" switch to abort program
execution when an assertion fails
- deseas() function: add the option of saving the X-13ARIMA
specification created by gretl; add option to specify the
ARIMA model; document the verbose option
- qrdecomp() function: support column pivoting, via new
optional third argument
- weekday() and isoweek() functions: generalize to accept
dates in ISO 8601 "basic" format
- rank() and ginv() function: add optional tolerance
argument
- Support direct assignment from string-values series to
array of strings
- script editor: enhancements for Find/Replace dialog
- GUI viewer windows: support Ctrl-plus and Ctrl-minus to
increase/reduce font size
- R support: enable exchange of matrices in binary format
- Fix bug: failure of dbnomics download on Windows when
a very large number of series is specified
- Fix bug: crash on use of the --full option with "restrict"
when applied to the alpha terms in a vecm
- Fix bug: breakage in GUI item "X-13ARIMA analysis"
- Fix bug: crash on trying to stringify() an empty series
- Fix bug: det() should not flag an error when returning NA
- Fix bug: make "set loop_maxiter 0" behave as advertised
- Fix bug: misbehavior when subsampling within a function a
panel dataset that was subsampled prior to calling the
function in question
- Fix bug: the 'end' keyword for indexing into matrices
could fail under certain conditions
- Fix bug: obsnum() producing unwanted results in case of
5- or 6-day daily data
- Fix obscure issue: ensure that libR gets a correct value
for R_HOME when the user has specified the location of
libR.so as a symlink (probably specific to Linux, and
confined to the context of gretl's "foreign language=R")
- Fix GUI bug: the option of showing lagged series in a
selection dialog not always available when it should be
- Fix GUI bug: incorrect behavior of function-call dialog
when defining a new list
- distribution: remove unused file, addons.txt
2022-02-02 version 2022a
- Copy/Paste of data in the GUI: make this facility more
visible, and support gdt format in addition to delimited
text; support Ctrl-C to copy
- Panel data time dimension: add apparatus to specify this
via the graphical interface
- Packaged panel data files: add more metadata where wanted
- Add a daily data file to the package: bikesharing.gdt
- Ensure the expected round-trip from strptime to strftime
for underspecified dates such as "1990"
- "set seed" command: allow parameter "auto" to revert to an
automatic clock-based seed
- "dpanel" command: add facility to "collapse" instruments
as in David Roodman's xtabond2
- "kpss" command for panel data: improve output for the case
where automatic lag order is selected; record $test and
$pvalue in matrix form
- "markers" command: add a --from-array option to read from
an array of strings
- "shell" command: clarify the help text
- "genr": get informative error messages to appear in more
cases
- Kalman (state space) apparatus: revise the documentation
to use more standard notation; revise internal code for
better maintainability (could be faster too)
- Indexing into matrices, arrays, lists and strings: support
the keyword 'end' to denote the last element; in the case
of matrices this is specific to row or column
- Support direct assignment of array of strings to string-
valued series, if the array is of appropriate size
- New function interpol() for linear interpolation
- New function mat2list(): create a list of series from the
columns of a suitable matrix
- New function distance(): evaluate the distance between
points on various metrics such as Euclidean, Manhattan,
Hamming, Chebyshev, Cosine and Mahalanobis
- deseas() function: add several options to inflect the
specifics of deseasonalization via X-13ARIMA-SEATS
- stdize() function: make it default to working as stated
in the help text (df correction of 1 for std. dev.)
- errorif() function: get this working within an mpi block,
in which case it can be used outside of a function
- tdisagg() function: limit (per default) the number of
observations for which automatic extrapolation is done
- Fix gmm bug: crash when a user-supplied weights matrix is
wrongly sized
- Fix bug in "bds" command: failure in case no --corr1 or
--sdcrit option is given
- Fix bug: automatic on-demand downloading of some addons was
not working (at least dbnomics, regls)
- Fix bug: panel time-series information could get lost on
exit from a function in which a panel dataset is subsampled
- Guard against crash on non-square invalid input to the
eigensym() function
- GUI console: add "Clear" button to clear the prior content
of the console window
- GUI VAR/system, Graphs menu: improve appearance of multiple
residual plots
- Build fixes for FreeBSD, for the non-OPENMP case, and for
recent macOS
- Package for macOS with M1 processor: add more syntax
highlighting styles for script editor
2021-09-30 version 2021d
- "biprobit" command: include rho in $coeff, $stderr and
$vcv
- New function lpsolve(): supports linear programming via
the lpsolve library
- Prevent opening of general and console preferences
dialogs simultaneously
- Fix partial breakage of the panel-time plotting facility
- Fix potential failure mode in echoing script input lines
in the GUI program
- Fix a small and somewhat unlikely memory leak
- Fix a GUI build error when using GTK 2
- Fix Windows bug: greek-letter identifiers not working
in some locales
- Fix Mac bug: binary data read/write not accessible
- Fix Linux bug: possible crash when running MPI from the
GUI program
2021-08-30 version 2021c
- New function contains(): indicates whether a numerical
object contains members of a specified set
- New function bcheck(): aids in handling bundle arguments
to user-defined functions
- New command "panspec": substantially, the old "hausman"
command under a different name; for the moment, "hausman"
is still kept as an alias for backward compatibility
- fcstats() matrix row labels: distinguish U1 vs U2 variant
of Theil's U statistic
- msplitby(): allow for more flexible syntax
- printing of bundles: sort members by type and key
- "print" command: make more flexible, it now includes
most of the functionality of "eval"
- "var" command with --lagselect option: add a --minlag
option to allow testing against 0 lags, or imposing the
assumption that at least p > 1 lags are needed
- "set" command: new variable "datacols" to control the max
number of series to print side by side
- "foreign" command mechanism: updates to support version
4.1.0 of R and version 8.0 of Ox Console
- "eval" command: introduce "=" as an alias
- extend the ".=" operator to the "strings .= string" case
- GUI: introduce experimental features: plot collections and
integrated console
- GUI: add option to use the tab key as the trigger for
autocompletion in the script editor and console
- GUI: add command-line options: --new to start a new gretl
instance unconditionally and --single to use a single
program instance unconditionally
- GUI script editor: make the Find box appear at the foot of
the window, not in a separate dialog
- GUI: provide larger (24 pixel) toolbar icons for use on
small, high-density displays in particular
- GUI: numerous other small fixes and enhancements
- MS Windows, 64-bit: update to gnuplot 5.4.1, patched to
avoid too-big fonts on Windows with Ultra HD display
- Fix bug: spurious results from "system" command in case of
exact collinearity
- Fix bug: spurious reduction of the sample range in the grid
variant of "panplot" with some patterns of missing values
- Fix bug: wrong results from the polyfit() function when
applied to panel data
- Numerous additional small bug fixes
- Internals: make "libset" code more compact and efficient
- Internals: clear out old gettext variants that encoded
translations in a Windows code page rather than UTF-8
- gretl_bundle.h: rename argument named "template" to avoid
trouble with C++
- Substantial enhancements to the SVAR and regls addons
- New "logging" addon
- New, substantially updated Russian translation
- Cleanup: remove the "arbond" command, in favor of "dpanel",
and add some dpanel enhancements
2021-05-04 version 2021b
- New function trigamma(): second derivative of lngamma
- New function midasmult(): gives MIDAS multipliers
- New command "bds": BDS nonlinearity test
- gdtb data format: make the new variant the default
- tighten up on defbundle() syntax: no empty arguments
allowed
- array definition: enforce the specific choice of type
- "wls" command, with 0/1 weights: compute $yhat and $uhat
for the excluded observations
- "dpanel" estimation via the GUI: make the --dpdstyle flag
configurable
- "dpanel" --verbose switch: provide some information on the
instruments used
- "adf" command: support more accurate inference with
improved p-values or critical values, for the GLS case
in particular
- "xtab" command: clarify that the $result (matrix) accessor
is just for the bivariate case
- "clear" command: add --functions option to remove all hansl
functions from memory
- "restrict" command: add "inject" keyword to support use of
an array of strings to specify restrictions
- "param_names" keyword for nls, mle, gmm: accept an array of
strings as argument
- binary probit and logit: offer Estrella's pseudo R-squared
as an alternative to McFadden, via --estrella option
- The functions mean, sum, sd, var, wmean, wsd and wvar now
accept an optional boolean argument; specific to the
cross-sectional statistics produced when list arguments
are given, this allows skipping of missing values.
- hdprod(): introduce "shorthand" syntax (one argument only)
- dbnomics addon: speed up retrieval of data
- user-defined functions: allow overloading of numeric
arguments and return value (scalar, series or matrix)
- user-defined function parameters: enforce the "const" flag
more consistently
- gretl timer ("stopwatch"): provide a separate timer for each
level of function execution
- GUI usage of geoplot addon: make it easier to save an edited
map as GeoJSON
- GUI model specification dialog: enable interactive search in
lists of series
- GUI, saving contents of bundles: enable saving of integer
members
- GUI, handle dependencies when installing function packages
- GUI script editor: improve implementation of "smart tab"
- Fix bug: breakage in computing out-of-sample forecasts from
VECMs
- Fix bug: possible crash when displaying a matrix with very
long column names in the GUI program
- Fix bug: broken covariance matrix from mols() with a large
number of regressors
- Fix bug: crash on applying postfix "++" to a submatrix
- macOS: first release for arm64
2021-01-18 version 2021a
- New function vma() for multiple time series
- quantile(): support variant methods Q7 and Q8 described
in Hyndman and Fan (1996)
- defbundle(): add two shorthand variants of this function
- irf(): support calculation of multiple impulse responses
in a single call (with internal speed-up)
- irf() bug-fix: failing to compute bootstrap confidence band
correctly when passed a $system bundle argument
- VAR internals: scrap augmented Cholesky matrix; so the
$system.C accessor is now a square matrix
- $system bundle: ensure presence of xlist member, and
include the command-word (var, vecm or system)
- mread(): support reading gdt and gdtb files as matrices
- readfile(): support reading gzipped files transparently
- obslabel(): support a vector of observations
- nls/mle/gmm blocks: support use of printf statements
- "open" command: support reading selected series from
native gretl datafiles (gdt, gdtb)
- "join" command: support $obsmajor, $obsminor as outer keys
- "coint2" command: rename as "johansen"
- "freq" and "xtab" for string-valued series: don't let
non-ASCII characters break the formatting
- Gretl User's Guide: add links to download example scripts
- Reorganize the categories for the functions help file
- Fix obscure problem with plots: inability to show markers
for observations in some cases where this should be OK
- Fix memory leak on deleting a series with descriptive
label attached
- Fix excessive messaging on renaming series in a loop, a
serious issue if the dataset contains very many series
- Fix breakage in handling of boolean comparisons involving
missing values
- Fix bug: potential crash on "Save as icon and close" for
a model displayed in tabbed model viewer
- Fix bug: possible crash on confusion between singleton
array and array element within a loop
- Fix bug: crash after setting "specific lags" for a VAR in
the GUI model selection dialog
- Fix bug: possible crash on frequency plot for series with
long string values
- Fix: text encoding for RTF printing of model output broken
in some cases under translation
- Fix: memory leaks associated with GUI window lists
- Fix: buggy completion proposals in script editor when
using gtksourceview-2.0
- Fix Windows-specific bug: gretlcli and gretlmpi could
fail on parsing command-line arguments
2020-11-21 version 2020e
- New function tdisagg() for temporal disaggregation
(distribution and interpolation)
- New addon package "regls": supports LASSO, Ridge regression
and Elastic net
- New function assert() for debugging purposes
- MPI: update documentation and support transfer of more
data types
- kdensity() function: generalize to allow as argument a
list or matrix with more than one column
- "dataset sortby": handle sorting by string-valued series
- OLS output: don't print out DW statistic when calculation of
Durbin's h fails
- Fix: when extracting a column of a "dated" matrix, copy
across the dates information
- Documentation: add material on forecasting for VARs and
other multi-equation systems
- Improve format of panel plot when there are many unnamed
individuals
- gretlcli and gretlmpi on MS Windows: accept unicode filenames
on the command line
- "midasreg" command: be more flexible in parsing arguments to
mds() terms
- Add to practice scripts: simulation using Klein model
- Implement the '^' operator (logical product) for string-
valued series
- xlsx data importer: handle correctly the case where a given
column is "partially" string-valued
- dbnomics data importer: handle absence of dimensions_labels
in some cases
- mpiscatter() function: revise rule for dividing matrices
for greater efficiency
- Fix bug: possibility of invalid XML when saving a model to
session file
- Fix bug: "smpl" command rejects the combination of "full"
and --quiet
- Fix: --single-yaxis option not respected by "gnuplot" and
"plot" when a band is specified
- Fix: GUI dialog for "join" was not working on Windows
- Fix: work around bug in Apple's LAPACK that could lead to
a crash when computing eigenvalues
- Fix: the Preview button in print dialogs was not working
in macOS build
- Fix: prune correctly the regressor list in the "perfect
prediction" case in RE probit
- Fix: incorrect $vcv matrix for bivariate probit models
- Fix: dbnomics import misaligning data of different
frequencies in certain cases
- Fix: $obsmajor and friends not working for daily data
with non-trading days omitted and dates given in the old
form of YYYY/MM/DD; also "dataset pad-daily" not working
with such old-style dates
- Fix: potential crash on closing a maximized window on
recent macOS (a GDK problem)
- MS Windows build: support printing scripts with syntax
highlighting
- MS Windows build (64-bit): update pixman, cairo and pango
libraries (DLLs)
- MS Windows build: update libeay.dll so as to prevent
crashes on certain CPUs
- MS Windows: give up on trying to write downloaded PDFs
and function packages to "system" location -- go straight
to the user's filespace
- Update packaged fedstl database
- Update several translations
2020-08-06 version 2020d
- Fix GUI bug: crash on copying data series to clipboard
in formats other than plain text
- "poisson" command: switch to using Newton-Raphson with
analytical hessian; also use analytical hessian for
"negbin", and add Wald chi-square tests for both
- "cusum" command: add a --plot option
- GUI console: protect from deletion when a command is
being executed
2020-07-31 version 2020c
- New feature: thematic maps, supported by new "geoplot"
addon; allow loading GeoJSON and ESRI shapefiles as
gretl datasets
- New feature: offer a choice of plotting styles or themes,
via GUI and also via a new "set" variable, graph_theme;
plus set the default to the "dark2" theme
- Add new bincoeff() function, giving binomial coefficients
- Add new sgn() function: returns the sign of its argument
- Improve error message in case of invalid gnuplot path
- loop: make "quiet" operation the default
- Path-searching for inputs: improve the mechanism for
storing likely locations based on the opening of scripts
- Packaged datasets: show type and size in the GUI, as well
as a brief description
- GUI data access: add convenience menu items for accessing
files supplied by "addons" such as SVAR
- bwrite() and bread() functions: support JSON as well as
XML for representing gretl bundles
- atof() function: allow giving a string-valued series as
argument
- strlen() function: generalize to allow strings array and
string-valued series arguments
- pshrink() function: add an optional argument to avoid
skipping missing values
- mshape() function: make the third argument optional and
document the new behavior
- Fix bug: failure of negative matrix index (exclusion)
when a value of -999 was given
- Fix bug: the "restrict" command as applied to VECMs could
emit an unwanted newline even given the --silent option
- Fix bug: "panel plot" could crash under certain conditions
- Fix bug: ensure greater precision when printing values
to 15 or more significant digits
- Fix bug: possible error in Spearman's rho for the case of
no ties
- "fractint" and "hurst" commands: make the estimated
fractional difference or exponent accessible via the
$result accessor
- "xtab" command: fix for the case when one or more of the
series to be cross-tabulated are string-valued
- "summary" command: don't provide spurious results for
string-values series
- "scatters" command, time-series variant: try harder to get
appropriate time-axis tics
- "pkg" command: enable variant "pkg index addons" to update
the index of installed "addon" packages
- "set" command, "initvals" keyword: clarify the status of
this setting (non-persistent)
- String-valued series: drop any unused strings when sub-
sampling with the --permanent flag, and when saving a
sub-sampled dataset via the "store" command
- Arrays of strings: support union and intersection via the
"||" and "&&" operators respectively
- Error reporting: be more specific when the problem is an
out-of-bounds index value
- Datasets supplied with gretl: include a version of R's
"swisspharma" data; enhance the grunfeld panel dataset
- User's Guide: incorporate the previously stand-alone MIDAS
documentation as two new Guide chapters
- MS Windows and macOS builds: update to gnuplot 5.2.6
- macOS: provide 64-bit builds of x13as and tramo-seats
- Building gretl on MS Windows: updates and improvements to
the auto-generated support files
- Update several translations
- Numerous small bug-fixes
2020-04-11 version 2020b
- Update gretl copyright notice
- Revise macOS build: don't require initialization via
shell script, and link against version 10.9 of the SDK
- "gnuplot" and "plot" commands: add a --ylogscale option
- "store" command: add --matrix option to save a matrix in
the form of a dataset
- strvals(): support retrieval of subset of string values
for current sample range
- ODBC importation: correct the handling of string-valued
series; add --verbose and --no-align options; ensure
appropriate error messages in GUI usage
- "slicing" of arrays: allow use of selection vector
- Functions called via "if": show any printed output
- "dataset addobs": add --panel-time option to extend a
panel dataset in the time dimension
- stack() function (see Guide chap. 4): replace option
flags with optional arguments
- monthlen(): allow for series arguments
- Revise handling of string-valued data in exportation to
Stata .dta format
- Hide the recently added funcerr() function and replace
it with the new function errorif()
- Streamline building of "online" help files
- Fix for normalization of paths on MS Windows
- Several minor bug-fixes
2020-03-05 version 2020a
- New "eigen" function that extends "eigengen" to complex
matrices
- Verbose output for numerical optimization: make the
default more basic but add a new "full" setting for the
set-variable "max_verbose"
- "wls" command: support the --cluster option
- "scatters" command: improve handling of daily data
- Work on lasso back-end (not public yet)
- New function instrings() to locate instances of a given
string within an array of strings
- mpireduce() and mpiscatter(): accept a string variable
for selection of the "op" argument
- feval(): handle functions that take no arguments
- sprintf(): fix potential breakage when used within a
ternary query statement
- jsongetb(): support nested JSON arrays
- Reorganization of time-series model menu: add code to
protect packages written for gretl < 2019d
- SVD: use faster divide-and-conquer lapack function
where applicable
- complex(): make the second argument optional
- defarray(): treat scalar arguments as 1x1 matrices
- arrays: allow as function parameters and return values
- xlsx data importer: handle a wider variety of cases
- ODBC data importation: handle string-valued series
- OpenBLAS speed-up: limit the number of threads to the
number of physical cores on the host machine
- Fix bug: possible buffer overrun on printing list of
instruments for IV regression