File: ChangeLog

package info (click to toggle)
tarlz 0.29-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,076 kB
  • sloc: cpp: 6,180; sh: 1,609; makefile: 152
file content (297 lines) | stat: -rw-r--r-- 12,056 bytes parent folder | download | duplicates (2)
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
2026-01-03  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.29 released.
	* New option '--numeric-owner'.
	* common_decode.cc (read_t_list): Quit early if NUL bytes in list.
	* extended.cc (Extended::parse): Ignore keyword 'ctime'.
	* lzip_index.cc (skip_box): New function.
	* main.cc (parse_mtime): Fix checking of errors in mktime.
	  (Thanks to Michael Shigorin).
	  (getnum): Accept underscore separators ('_').
	  (set_archive_name): Reject archive name with control characters.
	* tarlz.h: Limit max_edata_size to 1 GiB.
	* tarlz.texi: Add 'Table of SI and binary prefixes'.
	* check.sh: Skip symbolic link archiving test on Cygwin.
	  (Reported by Sonia Diaz).

2025-06-24  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.28.1 released.
	* decode.h: #include <sys/types.h>. (Reported by lid gnulinux).

2025-06-20  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.28 released.
	* New option '-T, --files-from'.
	* New options '-R, --no-recursive' and '--recursive'.
	* New options '--depth', '--mount', '--xdev', and '--parallel'.
	* New operation '--time-bits'.
	* Assign short option name '-?' to '--help'.
	* archive_reader.cc (Archive_reader::read): Detect empty archive.

2025-03-04  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.27.1 released.
	* common_mutex.h: #include <pthread.h>. (Reported by Michal Grny).

2025-02-28  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.27 released.
	* common_decode.cc (format_member_name): If date is out of range,
	  print seconds since epoch. Use at least 4 digits to print years.
	  Print typeflag after the member name if unknown file type.
	  (make_dirs): stat last dir before trying to create directories.
	* decode.cc (skip_warn): Diagnose a corrupt tar header.
	* extended.cc (Extended::parse): Diagnose a CRC mismatch.
	  New argument 'msg_vecp' for multithreaded diagnostics.
	* Many small fixes and improvements to the code and the manual.
	* tarlz.texi: New chapter 'Creating backups safely'.
	  (Suggested by Aren Tyr).
	* check.sh: Require lzip. Create .tar files from .tar.lz files.
	  Limit '--mtime' test to safe dates. (Reported by Aren Tyr).
	* testsuite: Add 5 new test files.

2024-12-07  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.26 released.
	* decode.cc (decode), delete.cc (delete_members):
	  Return 2 if any empty lzip member is found in a multimember archive.
	* create_lz.cc, decode_lz.cc:
	  Change 'deliver_packet' to 'deliver_packets'.
	* create.cc (copy_file): Show file name if read error.
	* tarlz.texi: New chapter 'Syntax of command-line arguments'.
	* check.sh: Use 'cp' instead of 'cat'.
	  Skip time stamps out of range or not recognized by system tools.
	  (Reported by J Dean).

2024-01-03  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.25 released.
	* New option '--ignore-metadata'.
	* create.cc, decode.cc, decode_lz.cc:
	  '#include <sys/types.h>' for major, minor, makedev on BSD systems.
	* compress.cc: Reformat file diagnostics as 'PROGRAM: FILE: MESSAGE'.
	  (compress_archive): Create missing intermediate directories.
	* configure, Makefile.in: New variable 'MAKEINFO'.

2023-09-20  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.24 released.
	* decode.cc (decode), common_decode.cc (check_skip_filename):
	  Make option '-C' position-dependent also for diff and extract.
	  (Reported by Devon Sean McCullough).
	* create.cc (encode): Deduct '--uncompressed' from archive name ext.
	* compress.cc (show_atpos_error): New function showing errno msg.
	  (compress_archive): Exit with error status 2 if archive is empty.
	* Limit the size of a header set (extended+ustar) to INT_MAX.
	* check.sh: Fix '--diff' test on OS/2 again. (Reported by Elbert Pol).

2022-09-23  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.23 released.
	* Create and decode the extended records 'atime' and 'mtime'.
	* Create and decode the extended records 'uid' and 'gid'.
	* New option '--ignore-overflow'.
	* Refuse to read/write archive data from/to a terminal.
	  (Reported by DustDFG).
	* main.cc (parse_mtime): Make time of day 'HH:MM:SS' optional.
	  Accept both space and 'T' as separator between date and time.
	  (show_option_error): New function showing argument and option name.
	* decode.cc (extract_member): Diagnose intermediate directory failure.
	  Failure to extract a member is no longer fatal.
	* decode_lz.cc: Make diagnostics identical to serial decoder.
	* common_decode.cc (format_member_name): Improve column alignment.
	* create.cc (fill_headers): Improve diagnostic when stat reports a
	  wrong st_size for a symbolic link. (Reported by Jason Lenz).
	  Change diagnostic "File is the archive" to "Archive can't contain
	  itself" following a similar change made by Paul Eggert to GNU tar.
	* Don't show "Removing leading '/' from member names." if excluded.
	* tarlz.texi: Change GNU Texinfo category from 'Data Compression'
	  to 'Archiving' to match that of GNU tar.
	  Use 'end-of-archive' (EOA) instead of 'end-of-file' (EOF).
	* main.cc (show_help), tarlz.texi: List operations before options.
	* Many small improvements have been made to code and documentation.

2022-01-05  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.22 released.
	* main.cc (getnum): Show option name and valid range if error.
	  (check_lib): Check that LZ_API_VERSION and LZ_version_string match.
	  (main): Report an error if -o is used with any operation except -z.
	* configure: Set variable LIBS.

2021-06-14  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.21 released.
	* Lzlib 1.12 or newer is now required.
	* decode.cc (decode): Skip members without name except when listing.
	  decode_lz.cc (dworker): Likewise. (Reported by Florian Schmaus).
	* New operation '-z, --compress'.
	* New options '-o, --output' and '--warn-newer'.
	* tarlz.texi (Invoking tarlz): Document concatenation to stdout.
	* check.sh: Fix the '--diff' test on OS/2. (Reported by Elbert Pol).

2021-01-08  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.19 released.
	* extended.cc: Print a diagnostic for each unknown keyword found.
	* tarlz.h: Add a missing '#include <sys/types.h>' for 'mode_t'.

2020-11-21  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.18 released.
	* New operation '--check-lib'.
	* Implement multithreaded '-x, --extract'.
	* Don't #include <sys/sysmacros.h> when compiling on OS2.
	* delete.cc, delete_lz.cc: Use Archive_reader.
	* extract.cc: Rename to decode.cc.
	* tarlz.texi: New section 'Limitations of multithreaded extraction'.

2020-07-30  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.17 released.
	* New options '--mtime' and '-p, --preserve-permissions'.
	* Implement multithreaded '-d, --diff'.
	* list_lz.cc: Rename to decode_lz.cc.
	  (decode_lz): Limit num_workers to number of members.
	* main.cc (main): Report an error if a file name is empty or if the
	  archive is specified more than once.
	* lzip_index.cc: Improve messages for corruption in last header.
	* Don't #include <sys/sysmacros.h> when compiling on BSD.
	* tarlz.texi: New chapter 'Internal structure of tarlz'.

2019-10-08  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.16 released.
	* extract.cc (extract_member): Fix call order of chown, chmod.
	* delete_lz.cc (delete_members_lz): Return 2 if collective member.
	* main.cc: Set a valid invocation_name even if argc == 0.
	* #include <sys/sysmacros.h> unconditionally.
	* tarlz.texi: New chapter 'Portable character set'.

2019-04-11  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.15 released.
	* New operation '--delete' (from uncompressed or --no-solid archive).
	* list_lz.cc: Fix MT listing of archives with format violations.

2019-03-12  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.14 released.
	* New options '--exclude' and '-h, --dereference'.
	* Short option name '-h' no longer means '--help'.
	* create.cc: Implement '-A, --concatenate' and '-r, --append' to
	  uncompressed archives and to standard output.
	* main.cc: Port option '--out-slots' from plzip.

2019-02-27  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.13 released.
	* create_lz.cc (cworker): Fix skipping of unreadable files.
	* list_lz.cc: Fix listing of archives containing empty lzip members.
	* create.cc (fill_headers): Store negative mtime as cero.

2019-02-22  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.12 released.
	* create.cc (fill_headers): Fix use of st_rdev instead of st_dev.
	* Save just numerical uid/gid if user or group not in database.
	* extract.cc (format_member_name): Print devmajor and devminor.
	* New operation '-d, --diff'.
	* New option '--ignore-ids'.
	* extract.cc: Fast '-t, --list' on seekable uncompressed archives.

2019-02-13  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.11 released.
	* extract.cc (archive_read): Fix endless loop with empty lz file.
	* Implement multithreaded '-c, --create' and '-r, --append'.
	* '--bsolid' is now the default compression granularity.
	* create.cc (remove_leading_dotslash): Remember more than one prefix.
	* tarlz.texi: New chapter 'Minimum archive sizes'.

2019-01-31  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.10 released.
	* New options '--bsolid' and '-B, --data-size'.
	* create.cc: Set ustar name to zero if extended header is used.

2019-01-22  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.9 released.
	* Implement multithreaded '-t, --list'.
	* New option '-n, --threads'.
	* Recognize global pax headers. Ignore them for now.
	* strtoul has been replaced with length-safe parsers.
	* tarlz.texi: New chapter 'Limitations of parallel tar decoding'.

2018-12-16  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.8 released.
	* New option '--anonymous' (--owner=root --group=root).
	* extract.cc (decode): 'tarlz -xf foo ./bar' now extracts 'bar'.
	* create.cc: Set to zero most fields in extended headers.
	* tarlz.texi: New chapter 'Amendments to pax format'.

2018-11-23  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.7 released.
	* New options '--keep-damaged' and '--no-solid'.
	* create.cc (archive_write): Minimize dictionary size.
	  Detect and skip archive in '-A', '-c', and '-r'.
	* main.cc (show_version): Show the version of lzlib being used.

2018-10-19  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.6 released.
	* New operation '-A, --concatenate'.
	* Replace option '--ignore-crc' with '--missing-crc'.
	* create.cc (add_member): Check that uid, gid, mtime, devmajor,
	  and devminor are in ustar range.
	* configure: Accept appending to CXXFLAGS; 'CXXFLAGS+=OPTIONS'.
	* Makefile.in: Use tarlz in target 'dist'.

2018-09-29  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.5 released.
	* Implement simplified POSIX pax format.
	* Implement CRC32-C (Castagnoli) of the extended header data.
	* New option '--ignore-crc'.
	* Add missing #includes for major, minor and makedev.
	* tarlz.texi: Document the new archive format.

2018-04-23  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.4 released.
	* Add some missing #includes.
	* main.cc (main): Open files in binary mode on OS2.

2018-03-19  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.3 released.
	* Rename project to 'tarlz' from 'pmtar' (Poor Man's Tar).
	* New operation '-r, --append'.
	* New options '-C, --directory', '--owner', and '--group'.
	* New options '--asolid', '--dsolid', and '--solid'.
	* Implement lzip compression of members at archive creation.
	* Implement file appending to compressed archive.
	* Implement transparent decompression of the archive.
	* Implement skipping over damaged (un)compressed members.
	* Implement recursive extraction/listing of directories.
	* Implement verbose extract/list output.
	* tarlz.texi: New file.

2014-01-22  Antonio Diaz Diaz  <antonio@gnu.org>

	* Version 0.2 released.
	* configure: Options now accept a separate argument.

2013-02-16  Antonio Diaz Diaz  <ant_diaz@teleline.es>

	* Version 0.1 released.


Copyright (C) 2013-2026 Antonio Diaz Diaz.

This file is a collection of facts, and thus it is not copyrightable, but just
in case, you have unlimited permission to copy, distribute, and modify it.