You've already forked pgbackrest
							
							
				mirror of
				https://github.com/pgbackrest/pgbackrest.git
				synced 2025-10-30 23:37:45 +02:00 
			
		
		
		
	v2.40: OpenSSL 3 Support
NOTE TO PACKAGERS: An experimental meson build has been added but packagers should continue to use the autoconf/make build for the foreseeable future. Improvements: * OpenSSL 3 support. (Reviewed by Stephen Frost.) * Create snapshot when listing contents of a path. (Reviewed by John Morris, Stephen Frost.) * Force target-timeline=current when restore type=immediate. (Reviewed by Stephen Frost.) * Truncate files during delta restore when they are larger than expected. (Reviewed by Stephen Frost.) * Disable incremental manifest save when resume=n. (Contributed by Reid Thompson. Reviewed by David Steele.) * Set backup percent complete to zero before copy start. (Contributed by Reid Thompson. Reviewed by David Steele.) * Use S3 IsTruncated flag to determine list continuation. (Reviewed by John Morris, Soulou. Suggested by Christian Montagne.) Documentation Bug Fixes: * Skip internal options in the configuration reference. (Reported by Francisco Miguel Biete.) Documentation Improvements: * Add link to PostgreSQL configuration in repository host section. (Reviewed by Stefan Fercot. Suggested by Julien Cigar.) Test Suite Improvements: * Add experimental Meson build. (Reviewed by Eli Schwartz, Sam Bassaly.) * Allow any path to be passed to the --test-path option. (Contributed by Andrey Sokolov. Reviewed by David Steele.) * Fix compile error when DEBUG_EXEC_TIME is defined without DEBUG. (Contributed by Andrey Sokolov. Reviewed by David Steele.)
This commit is contained in:
		| @@ -240,13 +240,14 @@ pgbackrest/test/test.pl --vm=none --dry-run | ||||
| --- output --- | ||||
|  | ||||
|     P00   INFO: test begin on x86_64 - log level info | ||||
|     P00   INFO: clean autogenerate code | ||||
|     P00   INFO: builds required: bin | ||||
| --> P00   INFO: 72 tests selected | ||||
| --> P00   INFO: 74 tests selected | ||||
|                  | ||||
|     P00   INFO: P1-T01/72 - vm=none, module=common, test=error | ||||
|            [filtered 69 lines of output] | ||||
|     P00   INFO: P1-T71/72 - vm=none, module=performance, test=type | ||||
|     P00   INFO: P1-T72/72 - vm=none, module=performance, test=storage | ||||
|     P00   INFO: P1-T01/74 - vm=none, module=common, test=error | ||||
|            [filtered 71 lines of output] | ||||
|     P00   INFO: P1-T73/74 - vm=none, module=performance, test=type | ||||
|     P00   INFO: P1-T74/74 - vm=none, module=performance, test=storage | ||||
| --> P00   INFO: DRY RUN COMPLETED SUCCESSFULLY | ||||
| ``` | ||||
|  | ||||
| @@ -260,7 +261,7 @@ pgbackrest/test/test.pl --vm=none --vm-out --module=common --test=wait | ||||
|     P00   INFO: autogenerate configure | ||||
|     P00   INFO:     autogenerated version in configure.ac script: no changes | ||||
|     P00   INFO:     autogenerated configure script: no changes | ||||
|     P00   INFO: clean autogenerate code | ||||
|     P00   INFO: autogenerate code | ||||
|     P00   INFO: cleanup old data | ||||
|     P00   INFO: builds required: none | ||||
|     P00   INFO: 1 test selected | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|  | ||||
| pgBackRest aims to be a reliable, easy-to-use backup and restore solution that can seamlessly scale up to the largest databases and workloads by utilizing algorithms that are optimized for database-specific requirements. | ||||
|  | ||||
| pgBackRest [v2.39](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.39) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page. | ||||
| pgBackRest [v2.40](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.40) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page. | ||||
|  | ||||
| Please find us on [GitHub](https://github.com/pgbackrest/pgbackrest) and give us a star if you like pgBackRest! | ||||
|  | ||||
|   | ||||
| @@ -1,12 +1,5 @@ | ||||
| # Release Build Instructions | ||||
|  | ||||
| ## Set location of the `pgbackrest` repo | ||||
|  | ||||
| This makes the rest of the commands in the document easier to run (change to your repo path): | ||||
| ``` | ||||
| export PGBR_REPO=~/pgbackrest | ||||
| ``` | ||||
|  | ||||
| ## Create a branch to test the release | ||||
|  | ||||
| ``` | ||||
| @@ -35,12 +28,12 @@ to: | ||||
|  | ||||
| ## Update code counts | ||||
| ``` | ||||
| ${PGBR_REPO?}/test/test.pl --code-count | ||||
| pgbackrest/test/test.pl --code-count | ||||
| ``` | ||||
|  | ||||
| ## Build release documentation.  Be sure to install latex using the instructions from the Vagrantfile before running this step. | ||||
| ``` | ||||
| ${PGBR_REPO?}/doc/release.pl --build | ||||
| pgbackrest/doc/release.pl --build | ||||
| ``` | ||||
|  | ||||
| ## Commit release branch and push to CI for testing | ||||
| @@ -53,7 +46,7 @@ git push origin release-ci | ||||
|  | ||||
| - Build the documentation with stress testing enabled: | ||||
| ``` | ||||
| ${PGBR_REPO?}/doc/doc.pl --out=html --include=user-guide --require=/stress --var=stress=y --var=stress-scale-table=100 --var=stress-scale-data=1000 --pre --no-cache | ||||
| pgbackrest/doc/doc.pl --out=html --include=user-guide --require=/stress --var=stress=y --var=stress-scale-table=100 --var=stress-scale-data=1000 --pre --no-cache | ||||
| ``` | ||||
|  | ||||
| During data load the archive-push and archive-get processes can be monitored with: | ||||
| @@ -85,13 +78,13 @@ INFO: full backup size = 14.9GB, file total = 101004 | ||||
|  | ||||
| ## Clone web documentation into `doc/site` | ||||
| ``` | ||||
| cd ${PGBR_REPO?}/doc | ||||
| cd pgbackrest/doc | ||||
| git clone git@github.com:pgbackrest/website.git site | ||||
| ``` | ||||
|  | ||||
| ## Deploy web documentation to `doc/site` | ||||
| ``` | ||||
| ${PGBR_REPO?}/doc/release.pl --deploy | ||||
| pgbackrest/doc/release.pl --deploy | ||||
| ``` | ||||
|  | ||||
| ## Final commit of release to integration | ||||
| @@ -144,7 +137,7 @@ The first line will be the release title and the rest will be the body.  The tag | ||||
|  | ||||
| ## Push web documentation to main and deploy | ||||
| ``` | ||||
| cd ${PGBR_REPO?}/doc/site | ||||
| cd pgbackrest/doc/site | ||||
| git commit -m "v2.14 documentation." | ||||
| git push origin main | ||||
| ``` | ||||
| @@ -177,7 +170,7 @@ to: | ||||
|  | ||||
| Run deploy to generate git history (ctrl-c as soon as the file is generated): | ||||
| ``` | ||||
| ${PGBR_REPO?}/doc/release.pl --build | ||||
| pgbackrest/doc/release.pl --build | ||||
| ``` | ||||
|  | ||||
| Commit and push to integration: | ||||
| @@ -197,11 +190,11 @@ https://git.savannah.gnu.org/gitweb/?p=automake.git | ||||
|  | ||||
| If so, update the version above and copy `lib/install-sh` from the `automake` repo to the `pgbackrest` repo at `[repo]/src/build/install-sh`: | ||||
| ``` | ||||
| wget -O ${PGBR_REPO?}/src/build/install-sh '[URL]' | ||||
| wget -O pgbackrest/src/build/install-sh '[URL]' | ||||
| ``` | ||||
|  | ||||
| Get the latest versions of `config.sub` and `config.guess`. These files are not versioned so the newest version is pulled at the beginning of the release cycle to allow time to test stability. | ||||
| ``` | ||||
| wget -O ${PGBR_REPO?}/src/build/config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD' | ||||
| wget -O ${PGBR_REPO?}/src/build/config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD' | ||||
| wget -O pgbackrest/src/build/config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD' | ||||
| wget -O pgbackrest/src/build/config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD' | ||||
| ``` | ||||
|   | ||||
| @@ -225,7 +225,7 @@ eval | ||||
|  | ||||
|             # Generate coverage summary | ||||
|             &log(INFO, "Generate Coverage Summary"); | ||||
|             executeTest("${strTestExe} --vm=f33 --no-valgrind --clean --coverage-summary", {bShowOutputAsync => true}); | ||||
|             executeTest("${strTestExe} --vm=u22 --no-valgrind --clean --coverage-summary", {bShowOutputAsync => true}); | ||||
|         } | ||||
|  | ||||
|         # Remove permanent cache file | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,4 +1,350 @@ | ||||
| [ | ||||
|     { | ||||
|         "commit": "1df1e0281b94a06ff0f16622e2cbb76598d430d1", | ||||
|         "date": "2022-07-14 17:13:33 -0400", | ||||
|         "subject": "Replace AC_PROG_CC_C99 configure macro with AC_PROG_CC.", | ||||
|         "body": "AC_PROG_CC_C99 is now obsolete.\n\nThe AC_PROG_CC macro does not guarantee C99 compliance but we add an option to check for that a bit later." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "364af1635d40431276cc6fd87d6ddd689b611e09", | ||||
|         "date": "2022-07-14 08:26:03 -0400", | ||||
|         "subject": "Force target-timeline=current when restore type=immediate.", | ||||
|         "body": "Explicitly set target timeline to \"current\" when type=immediate and PostgreSQL >= 12. We do this because type=immediate means there won't be any actual attempt to change timelines, but if we leave the target timeline as the default of \"latest\" then PostgreSQL might fail to restore because it can't reach the \"latest\" timeline in the repository from this backup.\r\n\r\nThis is really a PostgreSQL bug and will hopefully be addressed there, but we'll handle it here for older versions, at least until they aren't really seen in the wild any longer.\r\n\r\nPostgreSQL < 12 defaults to \"current\" (but does not accept \"current\" as a parameter) so no need set it explicitly." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "75623d4583bfdaccb3a19b935fd04d744b363923", | ||||
|         "date": "2022-07-08 17:21:39 -0400", | ||||
|         "subject": "Create snapshot when listing contents of a path.", | ||||
|         "body": "Previously a callback was used to list path contents and if no sort was specified then a snapshot was not required. When deleting files from the path some filesystems could omit files that still existed, which meant the path could not be removed.\r\n\r\nFilter . out of lists in the Posix driver since this special entry was only used by test code (and filtered everywhere in the core code).\r\n\r\nAlso remove callbacks from the storage interface and replace with an iterator that should be easier to use and guarantees efficient use of the snapshots." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f9ac53db92574e8b499187ee4f2a7258bc2f4794", | ||||
|         "date": "2022-07-08 14:38:14 -0400", | ||||
|         "subject": "Fix typo." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "74a4ac801db921f7b11b63b9f927228c6a6af861", | ||||
|         "date": "2022-07-08 11:13:55 -0400", | ||||
|         "subject": "Add link to PostgreSQL configuration in repository host section.", | ||||
|         "body": "This should make the documentation clearer when starting from this section." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "0eccbc8bf47073ab8ec1f13fed9865d0bd7c3635", | ||||
|         "date": "2022-07-06 18:17:52 -0400", | ||||
|         "subject": "Meson builds work on version 0.45.", | ||||
|         "body": "v0.45 ships with Ubuntu 18.04, which is currently the oldest distro we support. We may never do a Meson release on Ubuntu 18.04 but this allows us to start running unit tests with Meson in the meantime.\n\nSome more granular options are not available so we use buildtype in more places.\n\nThe check for a in-tree autoconf/make build had to be removed since the filesystem APIs are not available.\n\nFinally, alias_target was removed. This means that full paths must be used for build targets, which does not seem too bad. For instance, test/src/test-pgbackrest must now be used as a build target instead of simple test-pgbackrest." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "72960bbf179b4e8051bd4fc50be57d95159e9e13", | ||||
|         "date": "2022-07-06 09:55:32 -0400", | ||||
|         "subject": "Rename strTrunc() to strTruncIdx() and add strTrunc().", | ||||
|         "body": "strTrunc() is now shorthand for truncating to index 0. This is convenient when a string is being reused." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "cd25cec1471dde60f85404744252b675efff2522", | ||||
|         "date": "2022-07-05 14:34:31 -0400", | ||||
|         "subject": "Add comment to indicate that type is in a different info level." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "1c0bf0b15da8c0d15cc639851ff1d1bd05b51d06", | ||||
|         "date": "2022-07-05 14:28:40 -0400", | ||||
|         "subject": "Reorder null user/group checks in remote protocol and add tests.", | ||||
|         "body": "Coverage for these checks was dependent on the order the files were read from disk, which made the tests fragile.\n\nRearrange the checks and add a test that won't depend on order." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "326d152a14121cb298089847a3694aa9f50bcbd2", | ||||
|         "date": "2022-07-05 06:58:19 -0400", | ||||
|         "subject": "Update contributor name." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "845d82f6825d4101e6a465a435ef056ff6ec15a2", | ||||
|         "date": "2022-07-01 20:32:10 -0400", | ||||
|         "subject": "Use S3 IsTruncated flag to determine list continuation.", | ||||
|         "body": "Previously we were just checking for the existence of NextContinuationToken, which the S3 documentation indicates will not be present when the list is not truncated. However, recent versions of Scality send a blank NextContinuationToken when IsTruncated is false. Sending the blank continuation token back causes Scality to send another blank continuation token and an infinite loop occurs.\r\n\r\nInstead use IsTruncated (which is required to be present) to determine whether NextContinuationToken should be present. Error if NextContinuationToken is then missing or empty, since an empty token caused an infinite loop with the Scality server (which arguably should have errored when passed an empty token)." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "61ca9b58a000aa8789ef3267682519bdb15e8a6b", | ||||
|         "date": "2022-06-28 14:15:08 -0400", | ||||
|         "subject": "Replace hrnStorageInfoListCallback() with TEST_STORAGE_LIST() in tests.", | ||||
|         "body": "The TEST_STORAGE_LIST() macro is more robust and hides the callback mechanism from the caller.\n\nAdd features to TEST_STORAGE_LIST() that hrnStorageInfoListCallback() had.\n\nUpdate tests to use the abbreviated type output (e.g. path/) generated by TEST_STORAGE_LIST()." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "59f148bf6ea8c090d4d65ce5b135a71501e8ae22", | ||||
|         "date": "2022-06-26 08:42:43 -0400", | ||||
|         "subject": "Generate -fmacro-prefix-map to strip relative path from __FILE__.", | ||||
|         "body": "This provides reproducible builds and minimizes the file path in debug messages, just like an in-tree make build.\n\nFor test source, prefix with test/ in case there are any module name collisions." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f863fc98886f4d6c2803b9a2396539597d0d7be2", | ||||
|         "date": "2022-06-23 12:20:56 -0400", | ||||
|         "subject": "Add experimental unit test harness written in C.", | ||||
|         "body": "Having the test harness in C will allow us to remove duplicated Perl code and test on systems where Perl support is not present.\n\nCustom harnesses and shims are currently not implemented, which means only the following tests in the common module will run: error, stack-trace, type-convert, assert-on, mem-context, time, encode, type-object, type-string, type-list, type-buffer, type-variant, reg-exp, log.\n\nThe experimental test harness is being committed with partial functionality so it can be used in Windows development. The remaining features will follow as needed." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "b7a1b3ec2c16fde6a201f404a27d8343595900b6", | ||||
|         "date": "2022-06-23 10:57:58 -0400", | ||||
|         "subject": "Used DEBUG instead of NDEBUG in common/stackTrace module.", | ||||
|         "body": "In some testing cases these might not be in sync, which causes unpredictable behavior." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "29d2f0f9fda4dbba0dc5eca6f84368a6f655bd28", | ||||
|         "date": "2022-06-22 09:52:30 -0400", | ||||
|         "subject": "Add cast to handle compilers (e.g. MSVC) that coerce to signed int.", | ||||
|         "body": "MSVC changes the sign in this case, presumable because of the subtraction. Cast so that MSVC does not also trigger a mixed sign warning." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "9fd85a104ad56061b028afd9057ce8c1d636d3dd", | ||||
|         "date": "2022-06-21 09:50:38 -0400", | ||||
|         "subject": "Disable meson for all but debug builds.", | ||||
|         "body": "The meson builds are still experimental so for now the configure/make build process is preferred for release builds. This message should help prevent any automated build systems from picking up meson instead." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "665da12ae7f519077512e60ce3a5ec6c6a9997fd", | ||||
|         "date": "2022-06-17 16:41:48 -0400", | ||||
|         "subject": "Update meson.build include comment to be more general.", | ||||
|         "body": "Eventually multiple subdirs will be included so update the comment to reflect that." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "5ecae90f0254ef752d8323ea5be3b99673ec46f7", | ||||
|         "date": "2022-06-17 16:31:48 -0400", | ||||
|         "subject": "Use constants rather than replacements when possible in test.c.", | ||||
|         "body": "Some of the replacements that were being done already existed as constants, so use the constants instead.\n\nAlso fix a minor formatting error introduced when testAdd() was renamed to hrnAdd()." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "dab1e4b6c66018c03c6e01309c41a89ef82ff5bc", | ||||
|         "date": "2022-06-17 16:27:31 -0400", | ||||
|         "subject": "Add strReplace().", | ||||
|         "body": "Allows substrings to be replaced with another string." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "fb9acc1c93d504d366493bc42038f15faa80300d", | ||||
|         "date": "2022-06-17 16:17:02 -0400", | ||||
|         "subject": "Add higher level YAML functions.", | ||||
|         "body": "These functions make parsing YAML simpler." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "55bcb933eee753a0cdd13f9861a00c33d194c1e7", | ||||
|         "date": "2022-06-17 11:17:52 -0400", | ||||
|         "subject": "Move protocol module from common to command.", | ||||
|         "body": "This module has dependencies on command/command so it does not make sense for it to be in the common module. Also move protocolFree() to main() since this is a very large dependency.\n\nAdjust the tests so command/exit can be tested later. This is a bit messy but will get adjusted as we improve the test harness." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "eb72a80b471145d97ac4170e3215f7c67aa83082", | ||||
|         "date": "2022-06-15 09:06:25 -0400", | ||||
|         "subject": "Fix continuation character spacing." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "716bba5800d504a76d4bdc99588448824be3d83f", | ||||
|         "date": "2022-06-14 08:13:22 -0400", | ||||
|         "subject": "Fix hard-coded WAL size assertion in walSegmentNext().", | ||||
|         "body": "PG_WAL_SEGMENT_SIZE_DEFAULT is used to compare and check WAL size on pre-11 installations. However, there is a hard-coded assertion in walSegmentNext() which doesn't respect PG_WAL_SEGMENT_SIZE_DEFAULT.\r\n\r\nUpdate the assertion to use PG_WAL_SEGMENT_SIZE_DEFAULT." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "282edda661b5f1eb189998e7db680b91a2b8a66b", | ||||
|         "date": "2022-06-09 17:42:00 -0400", | ||||
|         "subject": "Remove storageLocal() dependency from common/lock module.", | ||||
|         "body": "The storage/helper module is a very heavy dependency to introduce in the common module. Creating Posix storage objects is cheap so just do that instead." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "04f5ef25faf276e51bd546199f1197b5c70003e8", | ||||
|         "date": "2022-06-09 17:18:32 -0400", | ||||
|         "subject": "Add valgrind to Dockerfile missed in a16cf5ea." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "79443bea3634f7dd3858b6f65838e31fb9b87c3f", | ||||
|         "date": "2022-06-09 16:55:07 -0400", | ||||
|         "subject": "Move bldEnum() to the build/common/render module.", | ||||
|         "body": "This function will be useful for other build/test modules so extern it.\n\nAlso skip the first upper-case when no prefix is provided." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "1a00ab10033e9ac6e6f797627567e8b91e143432", | ||||
|         "date": "2022-06-09 07:34:11 -0400", | ||||
|         "subject": "Fix compile error when DEBUG_EXEC_TIME is defined without DEBUG.", | ||||
|         "body": "If DEBUG is not defined then the ASSERT() macro expands to nothing. In this case the timeBegin variable is never used and a compilation error occurs.\r\n\r\nThis test should work without DEBUG defined so use CHECK() instead of ASSERT()." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "0dabf88e9d85e4db2ff65ebbb14b4320e1092a8b", | ||||
|         "date": "2022-06-08 17:43:23 -0400", | ||||
|         "subject": "Add FN_NO_RETURN macro.", | ||||
|         "body": "Change all instances of __attribute__((__noreturn__)) to a macro in meson.build / build.auto.h.in.\r\n\r\nAs compiler attributes written in the form of __attribute__ are not supported by MSVC, this is one of several commits to make the code-base more robust and allow using MSVC-style attributes later." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "8babd558bc3a5b930fd096ffb306551773f1f14d", | ||||
|         "date": "2022-06-08 07:26:15 -0400", | ||||
|         "subject": "Add missing build.auto.h includes.", | ||||
|         "body": "These are required for proper building but were probably not noticed before since they are not part of the core code." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "a16cf5eac7217e79d8669fab5dff1863e26208c9", | ||||
|         "date": "2022-06-06 16:32:20 -0400", | ||||
|         "subject": "Update CI to use Ubuntu 22.04 and Fedora 36.", | ||||
|         "body": "Both have newer gcc and OpenSSL 3.\n\nFedora 36 runs horribly slow with valgrind enabled so run the valgrind tests on Ubuntu 22.04. Fedora 36 has a newer gcc so it is still worth testing on." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "08242ee6ac93b9eb9c05cc39e3db15bbafb9052c", | ||||
|         "date": "2022-06-06 14:47:47 -0400", | ||||
|         "subject": "OpenSSL 3 support.", | ||||
|         "body": "There are two changes:\r\n\r\n* Suppress deprecation warnings so we can build with -Werror and -Wfatal-errors. At some point we'll need to migrate to the new APIs but there does not seem to be a good reason to support two sets of code right now.\r\n\r\n* Update the handling for unexpected EOF to handle EOF or error. The error code for EOF has changed and become harder to identify, but we probably don't care whether it is an error or EOF." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f92ce674f79e2d6056794c1af4002c01dad93aed", | ||||
|         "date": "2022-06-06 13:52:56 -0400", | ||||
|         "subject": "Automatically create PostgreSQL version interfaces.", | ||||
|         "body": "Maintaining the version interfaces was complicated by the fact that each interface needed to be in separate compilation unit to avoid type conflicts. This also meant that various build/test files needed to be updated to add the new interfaces.\r\n\r\nSolve these problems by auto-generating all the interfaces into a single file. This is made possible by parsing defines and types out of the header files and creating macros to rename the types. At the end of the version interface everything is undef'd. Another benefit is that the auto-generated interfaces can be static and included directly into postgres/interface.c.\r\n\r\nSince some code generation is now always required for tests, change --no-gen to --min-gen in test.pl.\r\n\r\nIt would also make sense to auto-generate the version defines in postgres/version.h, but that will be left for a future commit." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "b8fc20d5b8e7ca003ff39f29ea6e3ba57653f55c", | ||||
|         "date": "2022-06-03 14:13:56 -0400", | ||||
|         "subject": "Add experimental Meson build.", | ||||
|         "body": "Meson is a new build system that offers simpler syntax and superior performance to autoconf/make. In addition, Windows is supported natively.\r\n\r\nThe Meson build appears complete, but currently is used only for auto-generation of code and the host build of pgbackrest. Some container upgrades will be required before Meson can be used for container builds.\r\n\r\nAlso patch the Debian package to force autoconf/make rather than Meson." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "148956aed8aca201aa800af321d946094b96f176", | ||||
|         "date": "2022-06-01 10:13:57 -0400", | ||||
|         "subject": "Remove useless command/check unit test.", | ||||
|         "body": "This test was a placeholder and did not provide any coverage, but it did give inconsistent results on different shell versions." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "29b2a54fcc74457af5c63ffb505c5fbb24bb2ade", | ||||
|         "date": "2022-05-31 17:28:58 -0400", | ||||
|         "subject": "Allow any path to be passed to the --test-path option.", | ||||
|         "body": "A hard-coded path prevented this from working correctly." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "be354c489017ea84ed825f226b50d170bec1ff68", | ||||
|         "date": "2022-05-31 16:52:26 -0400", | ||||
|         "subject": "Update CodeQL to version 2.", | ||||
|         "body": "Version 1 will be deprecated on December 12, so upgrade now to avoid nasty surprises." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "2c38c9a56f95efea42d489792751b77acfc470e4", | ||||
|         "date": "2022-05-31 16:43:18 -0400", | ||||
|         "subject": "Skip stopping PostgreSQL 9.1 in real/all integration test.", | ||||
|         "body": "Stopping the cluster has started consistently running out of memory on PostgreSQL 9.1. This seems to have happened after pulling in new packages at some point so it might be build related.\n\nStopping the cluster is not critical for 9.1 so skip it." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "2feaaeaac803d6c0193477b56dbeb622fd991156", | ||||
|         "date": "2022-05-31 16:06:41 -0400", | ||||
|         "subject": "Add .inc extension to C files included in other C files.", | ||||
|         "body": "These files were never intended to be compiled on their own so the .c extension was a bit misleading. In particular Meson does not like .c files that are not intended to be compiled independently.\n\nLeave header files as is since they are already protected against being included more than once and are never expected to be compiled." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "cb891fa2d402ee338b72d2c0962cc5cd49eea4f1", | ||||
|         "date": "2022-05-31 13:02:51 -0400", | ||||
|         "subject": "Run remaining Github Actions CI on Ubuntu 20.04.", | ||||
|         "body": "The s390x/ppc64le tests are already running on 20.04." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "2643050be0dc4b7363c434f58373919bd6fdac68", | ||||
|         "date": "2022-05-31 12:36:21 -0400", | ||||
|         "subject": "Skip internal options in the configuration reference.", | ||||
|         "body": "Most internal options were being skipped, but not in the case where an option was marked internal for a specific command.\n\nThe command-line help was not affected by this issue." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f0aae6ceab9a95c6d63b8955abd2592ddbbce90a", | ||||
|         "date": "2022-05-31 12:26:57 -0400", | ||||
|         "subject": "Remote repo options should not be valid for the backup command.", | ||||
|         "body": "Some of the remote repo options were gated by repo-local, but the rest relied on repo-host-cmd.\n\nRemove backup from the repo-host-cmd option since none of the dependent options are valid for backup." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "a902c7808d8bf651389e2479d4622b0fd49ab09d", | ||||
|         "date": "2022-05-31 12:24:21 -0400", | ||||
|         "subject": "Make all repo-* options visible for stanza create/update/delete.", | ||||
|         "body": "31c7824a allowed these commands to run remotely but neglected to remove some internal flags, which prevented all the repo-* options from being visible in the documentation." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "60d70fa66fc3f709914f40dd088bac1b467001f2", | ||||
|         "date": "2022-05-25 18:18:37 -0400", | ||||
|         "subject": "Disable incremental manifest save when resume=n.", | ||||
|         "body": "The manifest is saved on a regular basis during a backup so a failed backup can be resumed. For backups that the user has configured/invoked as not resumable, skip the incremental save of the manifest." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "8c2b3a044fa175031366fb4f676b5c1a0a319ec0", | ||||
|         "date": "2022-05-25 15:27:53 -0400", | ||||
|         "subject": "Use StringId for type in cryptoHash() and cryptoHmacOne().", | ||||
|         "body": "This brings hash types in line with cipher types (i.e. a StringId enum) and allows removal of some Strings." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "38ad2838d553febae1b7fe0244d942dfaa9cf548", | ||||
|         "date": "2022-05-25 14:20:19 -0400", | ||||
|         "subject": "Set backup percent complete to zero before copy start.", | ||||
|         "body": "Waiting to write percent complete until the first file completed resulted in a period of time where the backup was running without status available to the user.\r\n\r\nRemedy this by initializing percent complete to zero when the backup is ready to start copying files." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "7b1935c71005a5a928e34caf7b8b48e5d871cc66", | ||||
|         "date": "2022-05-25 10:23:43 -0400", | ||||
|         "subject": "Remove unused errors.", | ||||
|         "body": "Most of these were probably never ported from Perl to C and others became obsolete over time.\n\nFix one error that was the wrong type.\n\nAlso fix/improve some comments." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f6f2f2e2a34c01e20bbf6c26e5e8a232a6bd232d", | ||||
|         "date": "2022-05-25 09:42:49 -0400", | ||||
|         "subject": "Add missing static keywords.", | ||||
|         "body": "Add static keyword to local variables where missing." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "7ec51e7e6279ea576ad3b4b5c2ea1fc389d08ab5", | ||||
|         "date": "2022-05-24 16:39:35 -0400", | ||||
|         "subject": "Truncate files during delta restore when they are larger than expected.", | ||||
|         "body": "Previously the behavior was to download the file from the repository when it was not exactly the same size in PGDATA. However, it may just be that the file was extended and the contents are the same up to the file size recorded in the manifest. This could also be very valuable for files that are always append only, like logs.\r\n\r\nChange info.size to file->size in one place. Both are technically correct but file->size makes more sense.\r\n\r\nUse the new fileName variable in a few existing places.\r\n\r\nAlso adjust some existing comments to make them clearer." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "c98baab6b56967e222b825e22e5808e17c02d025", | ||||
|         "date": "2022-05-19 18:24:09 -0400", | ||||
|         "subject": "New CI container builds for PostgreSQL 15 beta1 and minor releases.", | ||||
|         "body": "Remove VM_OS_REPO since it is no longer required.\n\nRebalance PostgreSQL versions for more efficient test times.\n\nAlways print version of PostgreSQL when testing. This helps verify that new minor releases are being used." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "69adb990dced3bf1d76a3e2482aad38016165d6c", | ||||
|         "date": "2022-05-19 12:25:58 -0400", | ||||
|         "subject": "Use storagePathP() instead of cfgOptionStr() to get base repo path.", | ||||
|         "body": "cfgOptionStr() may not have the correct value if the repo is remote.\n\nUse storagePathP() instead since it can ask the remote for the correct value when required." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "c7a66ac1afb9a55b049dc18493b602b7bf62bda4", | ||||
|         "date": "2022-05-18 10:52:01 -0400", | ||||
|         "subject": "Improve memory usage of mem contexts.", | ||||
|         "body": "Each mem context can track child contexts, allocations, and a callback. Before this change memory was allocated for tracking all three even if they were not used for a particular context. This made mem contexts unsuitable for String and Variant objects since they are plentiful and need to be as small as possible.\r\n\r\nThis change allows mem contexts to be configured to track any combination of child contexts, allocations, and a callback. In addition, the mem context can be configured to track a single child context and/or allocation, which saves memory and is a common use case.\r\n\r\nAnother benefit is that Variants can own objects (e.g. KeyValue) that they encapsulate. All of this makes memory accounting simpler because mem contexts have names while allocations do not. No more memory is used than before since Variants and Strings still had to store the memory context they were originally allocated in so they could be easily freed.\r\n\r\nUpdate the String and Variant objects to use this new functionality. The custom strFree() and varFree() functions are no longer required and can now be a wrapper around objFree().\r\n\r\nLastly, this will allow strMove() and varMove() to be implemented and used in cases where strDup() and varDup() are being used to move a String or Variant to a new context. Since this will be a bit noisy it is saved for a future commit." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "83af3f1b7ae78b150849939766e2e555366b95d5", | ||||
|         "date": "2022-05-18 08:48:48 -0400", | ||||
|         "subject": "Add additional detail to warnings when delta checksum is auto-enabled.", | ||||
|         "body": "Hopefully this will help with debugging when it is not clear why delta checksum is being enabled." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "5dfd00bb6ce0d6d2ead0ba6c899c18983f9a7ac9", | ||||
|         "date": "2022-05-18 08:18:34 -0400", | ||||
|         "subject": "Fix RHEL container build for documentation.", | ||||
|         "body": "For some reason /lib/systemd/system/sysinit.target.wants no longer exists in the rockylinux:8 container.\n\nCreate this directory explicitly in case it does not exist." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "5360f2ec0af08ac1755d48f234347c240ff09f4a", | ||||
|         "date": "2022-05-16 10:50:07 -0400", | ||||
|         "subject": "Fix comment indentation." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "b598f49dedbfb2bdd19d43dae9fa9ba654f2287c", | ||||
|         "date": "2022-05-16 09:17:00 -0400", | ||||
|         "subject": "Udpate parse.auto.c with labels from 4dcc9df2.", | ||||
|         "body": "Committed separately so it can be ignored in history/blame." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "4dcc9df222d2ecef6721c9ecd52b05e24024cc3d", | ||||
|         "date": "2022-05-16 09:14:46 -0400", | ||||
|         "subject": "Add labels in parse.auto.c to make diffs easier to read.", | ||||
|         "body": "Because there is a lot of repetition in this file, changes can look very jumbled with existing data in a diff. Also, if can be hard to tell what is being modified if the diff does not show enough lines before and after.\n\nThis change adds labels to the end of the line to localize the diff and make it easier to see what has been changed. Also, remove some linefeeds and make separators more consistent.\n\nThe change to parse.auto.c will be committed separately so it can be ignored in history/blame." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "f5023a769d4580258a336cf26f2b293aa2341b29", | ||||
|         "date": "2022-05-16 08:54:19 -0400", | ||||
|         "subject": "Update config.guess to latest version." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "243eef1e520bb72ae2b28a627dda323305e38862", | ||||
|         "date": "2022-05-16 08:51:37 -0400", | ||||
|         "subject": "Begin v2.40 development." | ||||
|     }, | ||||
|     { | ||||
|         "commit": "901e829f6dd05fdc15d899bc7f1108883002b1d5", | ||||
|         "date": "2022-05-16 08:46:24 -0400", | ||||
|   | ||||
| @@ -1,15 +1,15 @@ | ||||
| <table-row> | ||||
|     <table-cell>build/common</table-cell> | ||||
|     <table-cell>8/8 (100.0%)</table-cell> | ||||
|     <table-cell>10/10 (100.0%)</table-cell> | ||||
|     <table-cell>96/96 (100.0%)</table-cell> | ||||
|     <table-cell>12/12 (100.0%)</table-cell> | ||||
|     <table-cell>28/28 (100.0%)</table-cell> | ||||
|     <table-cell>142/142 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>build/config</table-cell> | ||||
|     <table-cell>30/30 (100.0%)</table-cell> | ||||
|     <table-cell>440/440 (100.0%)</table-cell> | ||||
|     <table-cell>914/914 (100.0%)</table-cell> | ||||
|     <table-cell>450/450 (100.0%)</table-cell> | ||||
|     <table-cell>956/956 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -26,18 +26,25 @@ | ||||
|     <table-cell>231/231 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>build/postgres</table-cell> | ||||
|     <table-cell>6/6 (100.0%)</table-cell> | ||||
|     <table-cell>52/52 (100.0%)</table-cell> | ||||
|     <table-cell>123/123 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>command</table-cell> | ||||
|     <table-cell>4/4 (100.0%)</table-cell> | ||||
|     <table-cell>50/50 (100.0%)</table-cell> | ||||
|     <table-cell>93/93 (100.0%)</table-cell> | ||||
|     <table-cell>9/9 (100.0%)</table-cell> | ||||
|     <table-cell>72/72 (100.0%)</table-cell> | ||||
|     <table-cell>158/158 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>command/archive</table-cell> | ||||
|     <table-cell>13/13 (100.0%)</table-cell> | ||||
|     <table-cell>76/76 (100.0%)</table-cell> | ||||
|     <table-cell>225/225 (100.0%)</table-cell> | ||||
|     <table-cell>223/223 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -57,8 +64,8 @@ | ||||
| <table-row> | ||||
|     <table-cell>command/backup</table-cell> | ||||
|     <table-cell>36/36 (100.0%)</table-cell> | ||||
|     <table-cell>532/532 (100.0%)</table-cell> | ||||
|     <table-cell>1253/1253 (100.0%)</table-cell> | ||||
|     <table-cell>536/536 (100.0%)</table-cell> | ||||
|     <table-cell>1268/1268 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -93,7 +100,7 @@ | ||||
|     <table-cell>command/info</table-cell> | ||||
|     <table-cell>12/12 (100.0%)</table-cell> | ||||
|     <table-cell>328/328 (100.0%)</table-cell> | ||||
|     <table-cell>666/666 (100.0%)</table-cell> | ||||
|     <table-cell>667/667 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -113,15 +120,15 @@ | ||||
| <table-row> | ||||
|     <table-cell>command/repo</table-cell> | ||||
|     <table-cell>9/9 (100.0%)</table-cell> | ||||
|     <table-cell>110/110 (100.0%)</table-cell> | ||||
|     <table-cell>227/227 (100.0%)</table-cell> | ||||
|     <table-cell>108/108 (100.0%)</table-cell> | ||||
|     <table-cell>233/233 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>command/restore</table-cell> | ||||
|     <table-cell>28/28 (100.0%)</table-cell> | ||||
|     <table-cell>590/590 (100.0%)</table-cell> | ||||
|     <table-cell>1135/1135 (100.0%)</table-cell> | ||||
|     <table-cell>596/596 (100.0%)</table-cell> | ||||
|     <table-cell>1161/1161 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -142,14 +149,14 @@ | ||||
|     <table-cell>command/verify</table-cell> | ||||
|     <table-cell>21/21 (100.0%)</table-cell> | ||||
|     <table-cell>316/316 (100.0%)</table-cell> | ||||
|     <table-cell>750/750 (100.0%)</table-cell> | ||||
|     <table-cell>753/753 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>common</table-cell> | ||||
|     <table-cell>176/176 (100.0%)</table-cell> | ||||
|     <table-cell>570/570 (100.0%)</table-cell> | ||||
|     <table-cell>1935/1935 (100.0%)</table-cell> | ||||
|     <table-cell>596/596 (100.0%)</table-cell> | ||||
|     <table-cell>1991/1991 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -163,21 +170,21 @@ | ||||
|     <table-cell>common/compress/bz2</table-cell> | ||||
|     <table-cell>13/13 (100.0%)</table-cell> | ||||
|     <table-cell>20/20 (100.0%)</table-cell> | ||||
|     <table-cell>176/176 (100.0%)</table-cell> | ||||
|     <table-cell>177/177 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>common/compress/gz</table-cell> | ||||
|     <table-cell>13/13 (100.0%)</table-cell> | ||||
|     <table-cell>22/22 (100.0%)</table-cell> | ||||
|     <table-cell>168/168 (100.0%)</table-cell> | ||||
|     <table-cell>169/169 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>common/compress/lz4</table-cell> | ||||
|     <table-cell>15/15 (100.0%)</table-cell> | ||||
|     <table-cell>24/24 (100.0%)</table-cell> | ||||
|     <table-cell>179/179 (100.0%)</table-cell> | ||||
|     <table-cell>180/180 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -191,7 +198,7 @@ | ||||
|     <table-cell>common/crypto</table-cell> | ||||
|     <table-cell>28/28 (100.0%)</table-cell> | ||||
|     <table-cell>80/80 (100.0%)</table-cell> | ||||
|     <table-cell>490/490 (100.0%)</table-cell> | ||||
|     <table-cell>491/491 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -212,7 +219,7 @@ | ||||
|     <table-cell>common/io/http</table-cell> | ||||
|     <table-cell>47/47 (100.0%)</table-cell> | ||||
|     <table-cell>250/250 (100.0%)</table-cell> | ||||
|     <table-cell>710/710 (100.0%)</table-cell> | ||||
|     <table-cell>711/711 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -226,42 +233,42 @@ | ||||
|     <table-cell>common/io/tls</table-cell> | ||||
|     <table-cell>34/34 (100.0%)</table-cell> | ||||
|     <table-cell>98/98 (100.0%)</table-cell> | ||||
|     <table-cell>513/513 (100.0%)</table-cell> | ||||
|     <table-cell>512/512 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>common/type</table-cell> | ||||
|     <table-cell>327/327 (100.0%)</table-cell> | ||||
|     <table-cell>848/848 (100.0%)</table-cell> | ||||
|     <table-cell>4188/4188 (100.0%)</table-cell> | ||||
|     <table-cell>328/328 (100.0%)</table-cell> | ||||
|     <table-cell>850/850 (100.0%)</table-cell> | ||||
|     <table-cell>4220/4220 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>config</table-cell> | ||||
|     <table-cell>88/88 (100.0%)</table-cell> | ||||
|     <table-cell>882/882 (100.0%)</table-cell> | ||||
|     <table-cell>1746/1746 (100.0%)</table-cell> | ||||
|     <table-cell>1743/1743 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>db</table-cell> | ||||
|     <table-cell>24/24 (100.0%)</table-cell> | ||||
|     <table-cell>126/126 (100.0%)</table-cell> | ||||
|     <table-cell>434/434 (100.0%)</table-cell> | ||||
|     <table-cell>432/432 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>info</table-cell> | ||||
|     <table-cell>92/92 (100.0%)</table-cell> | ||||
|     <table-cell>816/816 (100.0%)</table-cell> | ||||
|     <table-cell>2297/2297 (100.0%)</table-cell> | ||||
|     <table-cell>818/818 (100.0%)</table-cell> | ||||
|     <table-cell>2315/2315 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>postgres</table-cell> | ||||
|     <table-cell>33/33 (100.0%)</table-cell> | ||||
|     <table-cell>112/112 (100.0%)</table-cell> | ||||
|     <table-cell>389/389 (100.0%)</table-cell> | ||||
|     <table-cell>390/390 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -280,16 +287,16 @@ | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage</table-cell> | ||||
|     <table-cell>48/48 (100.0%)</table-cell> | ||||
|     <table-cell>222/222 (100.0%)</table-cell> | ||||
|     <table-cell>693/693 (100.0%)</table-cell> | ||||
|     <table-cell>53/53 (100.0%)</table-cell> | ||||
|     <table-cell>226/226 (100.0%)</table-cell> | ||||
|     <table-cell>779/779 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage/azure</table-cell> | ||||
|     <table-cell>24/24 (100.0%)</table-cell> | ||||
|     <table-cell>25/25 (100.0%)</table-cell> | ||||
|     <table-cell>110/110 (100.0%)</table-cell> | ||||
|     <table-cell>524/524 (100.0%)</table-cell> | ||||
|     <table-cell>531/531 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
| @@ -301,35 +308,35 @@ | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage/gcs</table-cell> | ||||
|     <table-cell>31/31 (100.0%)</table-cell> | ||||
|     <table-cell>32/32 (100.0%)</table-cell> | ||||
|     <table-cell>116/116 (100.0%)</table-cell> | ||||
|     <table-cell>650/650 (100.0%)</table-cell> | ||||
|     <table-cell>655/655 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage/posix</table-cell> | ||||
|     <table-cell>26/26 (100.0%)</table-cell> | ||||
|     <table-cell>153/154 (99.35%)</table-cell> | ||||
|     <table-cell>476/476 (100.0%)</table-cell> | ||||
|     <table-cell>25/25 (100.0%)</table-cell> | ||||
|     <table-cell>155/156 (99.36%)</table-cell> | ||||
|     <table-cell>463/463 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage/remote</table-cell> | ||||
|     <table-cell>31/31 (100.0%)</table-cell> | ||||
|     <table-cell>100/100 (100.0%)</table-cell> | ||||
|     <table-cell>742/742 (100.0%)</table-cell> | ||||
|     <table-cell>30/30 (100.0%)</table-cell> | ||||
|     <table-cell>106/106 (100.0%)</table-cell> | ||||
|     <table-cell>735/735 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>storage/s3</table-cell> | ||||
|     <table-cell>29/29 (100.0%)</table-cell> | ||||
|     <table-cell>30/30 (100.0%)</table-cell> | ||||
|     <table-cell>142/142 (100.0%)</table-cell> | ||||
|     <table-cell>715/715 (100.0%)</table-cell> | ||||
|     <table-cell>723/723 (100.0%)</table-cell> | ||||
| </table-row> | ||||
|  | ||||
| <table-row> | ||||
|     <table-cell>TOTAL</table-cell> | ||||
|     <table-cell>1507/1507 (100.0%)</table-cell> | ||||
|     <table-cell>8779/8780 (99.99%)</table-cell> | ||||
|     <table-cell>27209/27209 (100.0%)</table-cell> | ||||
|     <table-cell>1529/1529 (100.0%)</table-cell> | ||||
|     <table-cell>8931/8932 (99.99%)</table-cell> | ||||
|     <table-cell>27726/27726 (100.0%)</table-cell> | ||||
| </table-row> | ||||
| @@ -14,7 +14,7 @@ | ||||
|     </intro> | ||||
|  | ||||
|     <release-list> | ||||
|         <release date="XXXX-XX-XX" version="2.40dev" title="UNDER DEVELOPMENT"> | ||||
|         <release date="2022-07-18" version="2.40" title="OpenSSL 3 Support"> | ||||
|             <release-core-list> | ||||
|                 <text> | ||||
|                     <p><b>NOTE TO PACKAGERS</b>: An experimental <proper>meson</proper> build has been added but packagers should continue to use the <proper>autoconf</proper>/<proper>make</proper> build for the foreseeable future.</p> | ||||
| @@ -210,7 +210,7 @@ | ||||
|                             <release-item-reviewer id="david.steele"/> | ||||
|                         </release-item-contributor-list> | ||||
|  | ||||
|                         <p>Allow any path to be passed to the <br-setting>--test-path</br-setting> option.</p> | ||||
|                         <p>Allow any path to be passed to the <br-option>--test-path</br-option> option.</p> | ||||
|                     </release-item> | ||||
|  | ||||
|                     <release-item> | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
| project( | ||||
|     'pgbackrest', | ||||
|     ['c'], | ||||
|     version: '2.40dev', | ||||
|     version: '2.40', | ||||
|     license: 'MIT', | ||||
|     meson_version: '>=0.45', | ||||
|     default_options: [ | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| # Initialize configuration | ||||
| # ---------------------------------------------------------------------------------------------------------------------------------- | ||||
| AC_PREREQ([2.71]) | ||||
| AC_INIT([pgBackRest], [2.40dev]) | ||||
| AC_INIT([pgBackRest], [2.40]) | ||||
| AC_CONFIG_SRCDIR([version.h]) | ||||
| AC_CONFIG_AUX_DIR(build) | ||||
|  | ||||
|   | ||||
							
								
								
									
										20
									
								
								src/configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								src/configure
									
									
									
									
										vendored
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| #! /bin/sh | ||||
| # Guess values for system-dependent variables and create Makefiles. | ||||
| # Generated by GNU Autoconf 2.71 for pgBackRest 2.40dev. | ||||
| # Generated by GNU Autoconf 2.71 for pgBackRest 2.40. | ||||
| # | ||||
| # | ||||
| # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, | ||||
| @@ -607,8 +607,8 @@ MAKEFLAGS= | ||||
| # Identity of this package. | ||||
| PACKAGE_NAME='pgBackRest' | ||||
| PACKAGE_TARNAME='pgbackrest' | ||||
| PACKAGE_VERSION='2.40dev' | ||||
| PACKAGE_STRING='pgBackRest 2.40dev' | ||||
| PACKAGE_VERSION='2.40' | ||||
| PACKAGE_STRING='pgBackRest 2.40' | ||||
| PACKAGE_BUGREPORT='' | ||||
| PACKAGE_URL='' | ||||
|  | ||||
| @@ -1272,7 +1272,7 @@ if test "$ac_init_help" = "long"; then | ||||
|   # Omit some internal or obsolete options to make the list less imposing. | ||||
|   # This message is too long to be a string in the A/UX 3.1 sh. | ||||
|   cat <<_ACEOF | ||||
| \`configure' configures pgBackRest 2.40dev to adapt to many kinds of systems. | ||||
| \`configure' configures pgBackRest 2.40 to adapt to many kinds of systems. | ||||
|  | ||||
| Usage: $0 [OPTION]... [VAR=VALUE]... | ||||
|  | ||||
| @@ -1319,7 +1319,7 @@ fi | ||||
|  | ||||
| if test -n "$ac_init_help"; then | ||||
|   case $ac_init_help in | ||||
|      short | recursive ) echo "Configuration of pgBackRest 2.40dev:";; | ||||
|      short | recursive ) echo "Configuration of pgBackRest 2.40:";; | ||||
|    esac | ||||
|   cat <<\_ACEOF | ||||
|  | ||||
| @@ -1414,7 +1414,7 @@ fi | ||||
| test -n "$ac_init_help" && exit $ac_status | ||||
| if $ac_init_version; then | ||||
|   cat <<\_ACEOF | ||||
| pgBackRest configure 2.40dev | ||||
| pgBackRest configure 2.40 | ||||
| generated by GNU Autoconf 2.71 | ||||
|  | ||||
| Copyright (C) 2021 Free Software Foundation, Inc. | ||||
| @@ -1570,7 +1570,7 @@ cat >config.log <<_ACEOF | ||||
| This file contains any messages produced by compilers while | ||||
| running configure, to aid debugging if configure makes a mistake. | ||||
|  | ||||
| It was created by pgBackRest $as_me 2.40dev, which was | ||||
| It was created by pgBackRest $as_me 2.40, which was | ||||
| generated by GNU Autoconf 2.71.  Invocation command line was | ||||
|  | ||||
|   $ $0$ac_configure_args_raw | ||||
| @@ -4831,7 +4831,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||||
| # report actual input values of CONFIG_FILES etc. instead of their | ||||
| # values after options handling. | ||||
| ac_log=" | ||||
| This file was extended by pgBackRest $as_me 2.40dev, which was | ||||
| This file was extended by pgBackRest $as_me 2.40, which was | ||||
| generated by GNU Autoconf 2.71.  Invocation command line was | ||||
|  | ||||
|   CONFIG_FILES    = $CONFIG_FILES | ||||
| @@ -4895,7 +4895,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ | ||||
| cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||||
| ac_cs_config='$ac_cs_config_escaped' | ||||
| ac_cs_version="\\ | ||||
| pgBackRest config.status 2.40dev | ||||
| pgBackRest config.status 2.40 | ||||
| configured by $0, generated by GNU Autoconf 2.71, | ||||
|   with options \\"\$ac_cs_config\\" | ||||
|  | ||||
| @@ -5599,4 +5599,4 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then | ||||
| printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} | ||||
| fi | ||||
|  | ||||
| # Generated from src/build/configure.ac sha1 f072831dfc5ac954ae72f351835dfc4db70f5d24 | ||||
| # Generated from src/build/configure.ac sha1 0f1d05a377a7f84422ae6013e1193b3a09e2375e | ||||
|   | ||||
| @@ -33,6 +33,6 @@ repository will be invalid unless migration functions are written. | ||||
| /*********************************************************************************************************************************** | ||||
| Software version | ||||
| ***********************************************************************************************************************************/ | ||||
| #define PROJECT_VERSION                                             "2.40dev" | ||||
| #define PROJECT_VERSION                                             "2.40" | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -1175,6 +1175,14 @@ src/common/time.h: | ||||
|   class: core | ||||
|   type: c/h | ||||
|  | ||||
| src/common/type/blob.c: | ||||
|   class: core | ||||
|   type: c | ||||
|  | ||||
| src/common/type/blob.h: | ||||
|   class: core | ||||
|   type: c/h | ||||
|  | ||||
| src/common/type/buffer.c: | ||||
|   class: core | ||||
|   type: c | ||||
| @@ -1635,6 +1643,22 @@ src/storage/info.h: | ||||
|   class: core | ||||
|   type: c/h | ||||
|  | ||||
| src/storage/iterator.c: | ||||
|   class: core | ||||
|   type: c | ||||
|  | ||||
| src/storage/iterator.h: | ||||
|   class: core | ||||
|   type: c/h | ||||
|  | ||||
| src/storage/list.c: | ||||
|   class: core | ||||
|   type: c | ||||
|  | ||||
| src/storage/list.h: | ||||
|   class: core | ||||
|   type: c/h | ||||
|  | ||||
| src/storage/posix/read.c: | ||||
|   class: core | ||||
|   type: c | ||||
| @@ -1975,6 +1999,42 @@ test/lib/pgBackRestTest/Module/Real/RealAllTest.pm: | ||||
|   class: test/module | ||||
|   type: perl | ||||
|  | ||||
| test/src/build/config/config.yaml: | ||||
|   class: test/harness | ||||
|   type: yaml | ||||
|  | ||||
| test/src/build/help/help.xml: | ||||
|   class: test/harness | ||||
|   type: xml | ||||
|  | ||||
| test/src/command/help/meson.build: | ||||
|   class: build | ||||
|   type: meson | ||||
|  | ||||
| test/src/command/test/build.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
|  | ||||
| test/src/command/test/build.h: | ||||
|   class: test/harness | ||||
|   type: c/h | ||||
|  | ||||
| test/src/command/test/define.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
|  | ||||
| test/src/command/test/define.h: | ||||
|   class: test/harness | ||||
|   type: c/h | ||||
|  | ||||
| test/src/command/test/test.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
|  | ||||
| test/src/command/test/test.h: | ||||
|   class: test/harness | ||||
|   type: c/h | ||||
|  | ||||
| test/src/common/harnessConfig.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
| @@ -2131,6 +2191,26 @@ test/src/common/harnessTest.intern.h: | ||||
|   class: test/harness | ||||
|   type: c/h | ||||
|  | ||||
| test/src/config/load.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
|  | ||||
| test/src/config/load.h: | ||||
|   class: test/harness | ||||
|   type: c/h | ||||
|  | ||||
| test/src/config/meson.build: | ||||
|   class: build | ||||
|   type: meson | ||||
|  | ||||
| test/src/main.c: | ||||
|   class: test/harness | ||||
|   type: c | ||||
|  | ||||
| test/src/meson.build: | ||||
|   class: build | ||||
|   type: meson | ||||
|  | ||||
| test/src/module/build/commonTest.c: | ||||
|   class: test/module | ||||
|   type: c | ||||
| @@ -2307,6 +2387,10 @@ test/src/module/common/timeTest.c: | ||||
|   class: test/module | ||||
|   type: c | ||||
|  | ||||
| test/src/module/common/typeBlobTest.c: | ||||
|   class: test/module | ||||
|   type: c | ||||
|  | ||||
| test/src/module/common/typeBufferTest.c: | ||||
|   class: test/module | ||||
|   type: c | ||||
|   | ||||
		Reference in New Issue
	
	Block a user