Hello community, here is the log from the commit of package ncdu for openSUSE:Factory checked in at 2020-08-20 22:33:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ncdu (Old) and /work/SRC/openSUSE:Factory/.ncdu.new.3399 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ncdu" Thu Aug 20 22:33:28 2020 rev:13 rq:828169 version:1.15.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ncdu/ncdu.changes 2020-06-09 00:11:37.306708523 +0200 +++ /work/SRC/openSUSE:Factory/.ncdu.new.3399/ncdu.changes 2020-08-20 22:33:56.340124728 +0200 @@ -1,0 +2,8 @@ +Thu Aug 20 11:54:21 UTC 2020 - Dirk Mueller <[email protected]> + +- update to 1.15.1 + - (Linux) Fix build on older Linux systems (Christian Göttsche) + - (MacOS) Revert "Exclude firmlinks by default" behavior (until we have a better solution) + - (MacOS) Add --exclude-firmlinks option to opt-in to the above behavior + +------------------------------------------------------------------- Old: ---- ncdu-1.15.tar.gz ncdu-1.15.tar.gz.asc New: ---- ncdu-1.15.1.tar.gz ncdu-1.15.1.tar.gz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ncdu.spec ++++++ --- /var/tmp/diff_new_pack.YkjOvx/_old 2020-08-20 22:33:57.168125115 +0200 +++ /var/tmp/diff_new_pack.YkjOvx/_new 2020-08-20 22:33:57.168125115 +0200 @@ -17,7 +17,7 @@ Name: ncdu -Version: 1.15 +Version: 1.15.1 Release: 0 Summary: NCurses Disk Usage License: MIT ++++++ ncdu-1.15.tar.gz -> ncdu-1.15.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/ChangeLog new/ncdu-1.15.1/ChangeLog --- old/ncdu-1.15/ChangeLog 2020-05-30 09:55:19.000000000 +0200 +++ new/ncdu-1.15.1/ChangeLog 2020-06-10 12:23:48.000000000 +0200 @@ -1,3 +1,8 @@ +1.15.1 - 2020-06-10 + - (Linux) Fix build on older Linux systems (Christian Göttsche) + - (MacOS) Revert "Exclude firmlinks by default" behavior (until we have a better solution) + - (MacOS) Add --exclude-firmlinks option to opt-in to the above behavior + 1.15 - 2020-05-30 - (Linux) Add --exclude-kernfs option to exclude pseudo filesystems (Christian Göttsche) - (MacOS) Exclude firmlinks by default (Saagar Jha) @@ -77,7 +82,7 @@ - Count the size of a hard linked file once for each directory it appears in - Fixed crash on browsing dirs with a small window size (#2991787) - Fixed buffer overflow when some directories can't be scanned (#2981704) - - Fixed segfault when launched on a nonexistant directory (#3012787) + - Fixed segfault when launched on a nonexistent directory (#3012787) - Fixed segfault when root dir only contains hidden files - Improved browsing performance - More intuitive multi-page browsing diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/README new/ncdu-1.15.1/README --- old/ncdu-1.15/README 2020-05-30 10:01:06.000000000 +0200 +++ new/ncdu-1.15.1/README 2020-06-10 12:24:01.000000000 +0200 @@ -1,5 +1,5 @@ -ncdu 1.15 -========= +ncdu 1.15.1 +=========== DESCRIPTION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/configure new/ncdu-1.15.1/configure --- old/ncdu-1.15/configure 2020-05-30 10:09:16.000000000 +0200 +++ new/ncdu-1.15.1/configure 2020-06-10 12:25:23.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for ncdu 1.15. +# Generated by GNU Autoconf 2.69 for ncdu 1.15.1. # # Report bugs to <[email protected]>. # @@ -580,8 +580,8 @@ # Identity of this package. PACKAGE_NAME='ncdu' PACKAGE_TARNAME='ncdu' -PACKAGE_VERSION='1.15' -PACKAGE_STRING='ncdu 1.15' +PACKAGE_VERSION='1.15.1' +PACKAGE_STRING='ncdu 1.15.1' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='' @@ -1281,7 +1281,7 @@ # 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 ncdu 1.15 to adapt to many kinds of systems. +\`configure' configures ncdu 1.15.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1347,7 +1347,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ncdu 1.15:";; + short | recursive ) echo "Configuration of ncdu 1.15.1:";; esac cat <<\_ACEOF @@ -1457,7 +1457,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ncdu configure 1.15 +ncdu configure 1.15.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2059,7 +2059,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ncdu $as_me 1.15, which was +It was created by ncdu $as_me 1.15.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2925,7 +2925,7 @@ # Define the identity of the package. PACKAGE='ncdu' - VERSION='1.15' + VERSION='1.15.1' cat >>confdefs.h <<_ACEOF @@ -5894,7 +5894,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ncdu $as_me 1.15, which was +This file was extended by ncdu $as_me 1.15.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5960,7 +5960,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ncdu config.status 1.15 +ncdu config.status 1.15.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/configure.ac new/ncdu-1.15.1/configure.ac --- old/ncdu-1.15/configure.ac 2020-05-30 10:01:00.000000000 +0200 +++ new/ncdu-1.15.1/configure.ac 2020-06-10 12:23:57.000000000 +0200 @@ -1,5 +1,5 @@ -AC_INIT([ncdu],[1.15],[[email protected]]) +AC_INIT([ncdu],[1.15.1],[[email protected]]) AC_CONFIG_SRCDIR([src/global.h]) AC_CONFIG_HEADER([config.h]) AM_INIT_AUTOMAKE([foreign std-options subdir-objects]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/deps/yopt.h new/ncdu-1.15.1/deps/yopt.h --- old/ncdu-1.15/deps/yopt.h 2014-01-22 15:33:14.000000000 +0100 +++ new/ncdu-1.15.1/deps/yopt.h 2020-05-30 19:30:39.000000000 +0200 @@ -35,7 +35,7 @@ * "-f<arg>" * "-zf <arg>" * "-zf<arg>" - * "--" (To stop looking for futher options) + * "--" (To stop looking for further options) * "<arg>" (Non-option arguments) * * Issues/non-features: @@ -62,7 +62,7 @@ int needarg; /* Name(s) of this option, prefixed with '-' or '--' and separated by a * comma. E.g. "-z", "--gzip", "-z,--gzip". - * An option can have any number of aliasses. + * An option can have any number of aliases. */ const char *name; } yopt_opt_t; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/doc/ncdu.pod new/ncdu-1.15.1/doc/ncdu.pod --- old/ncdu-1.15/doc/ncdu.pod 2020-05-15 08:50:54.000000000 +0200 +++ new/ncdu-1.15.1/doc/ncdu.pod 2020-06-07 09:56:45.000000000 +0200 @@ -179,12 +179,9 @@ symlinked file as a unique file (i.e. unlike how hard links are handled). This is subject to change in later versions. -=item --follow-firmlinks +=item --exclude-firmlinks -(MacOS only) follow firmlinks. WARNING: This may cause directories to be -scanned and counted multiple times. Firmlink cycles are current (1.15) not -detected, so it may also cause ncdu to get stuck in an infinite loop and -eventually run out of memory. +(MacOS only) Exclude firmlinks. =item --exclude-kernfs @@ -315,7 +312,7 @@ =item < -File or directory is excluded from the statistics by using exlude patterns. +File or directory is excluded from the statistics by using exclude patterns. =item > @@ -429,6 +426,11 @@ If you have a directory with more than 2 billion files, quite literally anything can happen. +On macOS 10.15 and later, running ncdu on the root directory without +`--exclude-firmlinks` may cause directories to be scanned and counted multiple +times. Firmlink cycles are currently (1.15.1) not detected, so it may also +cause ncdu to get stuck in an infinite loop and eventually run out of memory. + Please report any other bugs you may find at the bug tracker, which can be found on the web site at https://dev.yorhel.nl/ncdu diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/ncdu.1 new/ncdu-1.15.1/ncdu.1 --- old/ncdu-1.15/ncdu.1 2020-05-15 08:57:35.000000000 +0200 +++ new/ncdu-1.15.1/ncdu.1 2020-06-07 09:57:00.000000000 +0200 @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "NCDU 1" -.TH NCDU 1 "2020-05-15" "ncdu-1.14.2" "ncdu manual" +.TH NCDU 1 "2020-06-07" "ncdu-1.15" "ncdu manual" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -281,12 +281,9 @@ this option will not follow symlinks to directories and will count each symlinked file as a unique file (i.e. unlike how hard links are handled). This is subject to change in later versions. -.IP "\-\-follow\-firmlinks" 4 -.IX Item "--follow-firmlinks" -(MacOS only) follow firmlinks. \s-1WARNING:\s0 This may cause directories to be -scanned and counted multiple times. Firmlink cycles are current (1.15) not -detected, so it may also cause ncdu to get stuck in an infinite loop and -eventually run out of memory. +.IP "\-\-exclude\-firmlinks" 4 +.IX Item "--exclude-firmlinks" +(MacOS only) Exclude firmlinks. .IP "\-\-exclude\-kernfs" 4 .IX Item "--exclude-kernfs" (Linux only) Exclude Linux pseudo filesystems, e.g. /proc (procfs), /sys (sysfs). @@ -381,7 +378,7 @@ An error occurred while reading a subdirectory, so the indicated size may not be correct. .IP "<" 4 -File or directory is excluded from the statistics by using exlude patterns. +File or directory is excluded from the statistics by using exclude patterns. .IP ">" 4 Directory is on another filesystem. .IP "^" 4 @@ -491,6 +488,11 @@ If you have a directory with more than 2 billion files, quite literally anything can happen. .PP +On macOS 10.15 and later, running ncdu on the root directory without +`\-\-exclude\-firmlinks` may cause directories to be scanned and counted multiple +times. Firmlink cycles are currently (1.15.1) not detected, so it may also +cause ncdu to get stuck in an infinite loop and eventually run out of memory. +.PP Please report any other bugs you may find at the bug tracker, which can be found on the web site at https://dev.yorhel.nl/ncdu .SH "AUTHOR" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/src/dir.h new/ncdu-1.15.1/src/dir.h --- old/ncdu-1.15/src/dir.h 2020-04-21 13:45:28.000000000 +0200 +++ new/ncdu-1.15.1/src/dir.h 2020-05-30 19:30:39.000000000 +0200 @@ -61,7 +61,7 @@ * * The *item struct has the following fields set when item() is called: * size, asize, ino, dev, flags (only DIR,FILE,ERR,OTHFS,EXL,HLNKC). - * All other fields/flags should be initialzed to NULL or 0. + * All other fields/flags should be initialized to NULL or 0. * The name and dir_ext fields are given separately. * All pointers may be overwritten or freed in subsequent calls, so this * function should make a copy if necessary. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/src/dir_scan.c new/ncdu-1.15.1/src/dir_scan.c --- old/ncdu-1.15/src/dir_scan.c 2020-05-15 08:44:54.000000000 +0200 +++ new/ncdu-1.15.1/src/dir_scan.c 2020-06-07 10:02:27.000000000 +0200 @@ -60,21 +60,48 @@ #if HAVE_LINUX_MAGIC_H && HAVE_SYS_STATFS_H && HAVE_STATFS -int exclude_kernfs; /* Exlude Linux pseudo filesystems */ +int exclude_kernfs; /* Exclude Linux pseudo filesystems */ static int is_kernfs(unsigned long type) { - if(type == BINFMTFS_MAGIC || + if( +#ifdef BINFMTFS_MAGIC + type == BINFMTFS_MAGIC || +#endif +#ifdef BPF_FS_MAGIC type == BPF_FS_MAGIC || +#endif +#ifdef CGROUP_SUPER_MAGIC type == CGROUP_SUPER_MAGIC || +#endif +#ifdef CGROUP2_SUPER_MAGIC type == CGROUP2_SUPER_MAGIC|| +#endif +#ifdef DEBUGFS_MAGIC type == DEBUGFS_MAGIC || +#endif +#ifdef DEVPTS_SUPER_MAGIC type == DEVPTS_SUPER_MAGIC || +#endif +#ifdef PROC_SUPER_MAGIC type == PROC_SUPER_MAGIC || +#endif +#ifdef PSTOREFS_MAGIC type == PSTOREFS_MAGIC || +#endif +#ifdef SECURITYFS_MAGIC type == SECURITYFS_MAGIC || +#endif +#ifdef SELINUX_MAGIC type == SELINUX_MAGIC || +#endif +#ifdef SYSFS_MAGIC type == SYSFS_MAGIC || - type == TRACEFS_MAGIC) +#endif +#ifdef TRACEFS_MAGIC + type == TRACEFS_MAGIC || +#endif + 0 + ) return 1; return 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/src/main.c new/ncdu-1.15.1/src/main.c --- old/ncdu-1.15/src/main.c 2020-05-15 09:10:07.000000000 +0200 +++ new/ncdu-1.15.1/src/main.c 2020-06-07 10:02:11.000000000 +0200 @@ -42,12 +42,12 @@ int cachedir_tags = 0; int extended_info = 0; int follow_symlinks = 0; -int follow_firmlinks = 0; +int follow_firmlinks = 1; int confirm_quit = 0; static int min_rows = 17, min_cols = 60; static int ncurses_init = 0; -static int ncurses_tty = 0; /* Explicitely open /dev/tty instead of using stdio */ +static int ncurses_tty = 0; /* Explicitly open /dev/tty instead of using stdio */ static long lastupdate = 999; @@ -139,7 +139,8 @@ { 'L', 0, "-L,--follow-symlinks" }, { 'C', 0, "--exclude-caches" }, { 2, 0, "--exclude-kernfs" }, - { 3, 0, "--follow-firmlinks" }, + { 3, 0, "--follow-firmlinks" }, /* undocumented, this behavior is the current default */ + { 4, 0, "--exclude-firmlinks" }, { 's', 0, "--si" }, { 'Q', 0, "--confirm-quit" }, { 'c', 1, "--color" }, @@ -173,7 +174,7 @@ printf(" --exclude-kernfs Exclude Linux pseudo filesystems (procfs,sysfs,cgroup,...)\n"); #endif #if HAVE_SYS_ATTR_H && HAVE_GETATTRLIST && HAVE_DECL_ATTR_CMNEXT_NOFIRMLINKPATH - printf(" --follow-firmlinks Follow firmlinks on macOS\n"); + printf(" --exclude-firmlinks Exclude firmlinks on macOS\n"); #endif printf(" --confirm-quit Confirm quitting ncdu\n"); printf(" --color SCHEME Set color scheme (off/dark)\n"); @@ -204,19 +205,26 @@ cachedir_tags = 1; break; - case 2 : + case 2 : /* --exclude-kernfs */ #if HAVE_LINUX_MAGIC_H && HAVE_SYS_STATFS_H && HAVE_STATFS exclude_kernfs = 1; break; #else fprintf(stderr, "This feature is not supported on your platform\n"); exit(1); #endif - case 3 : + case 3 : /* --follow-firmlinks */ #if HAVE_SYS_ATTR_H && HAVE_GETATTRLIST && HAVE_DECL_ATTR_CMNEXT_NOFIRMLINKPATH follow_firmlinks = 1; break; #else fprintf(stderr, "This feature is not supported on your platform\n"); exit(1); +#endif + case 4 : /* --exclude-firmlinks */ +#if HAVE_SYS_ATTR_H && HAVE_GETATTRLIST && HAVE_DECL_ATTR_CMNEXT_NOFIRMLINKPATH + follow_firmlinks = 0; break; +#else + fprintf(stderr, "This feature is not supported on your platform\n"); + exit(1); #endif case 'c': if(strcmp(val, "off") == 0) { uic_theme = 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/src/path.h new/ncdu-1.15.1/src/path.h --- old/ncdu-1.15/src/path.h 2020-04-21 13:45:28.000000000 +0200 +++ new/ncdu-1.15.1/src/path.h 2020-05-30 19:30:39.000000000 +0200 @@ -30,7 +30,7 @@ - path_real uses chdir(), so it's not thread safe - Process requires +x access for all directory components - Potentionally slow - - path_real doesn't check for the existance of the last component + - path_real doesn't check for the existence of the last component - cwd is unreliable after path_real */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ncdu-1.15/src/util.c new/ncdu-1.15.1/src/util.c --- old/ncdu-1.15/src/util.c 2020-04-21 13:45:28.000000000 +0200 +++ new/ncdu-1.15.1/src/util.c 2020-05-30 19:30:39.000000000 +0200 @@ -109,7 +109,7 @@ } while((n /= 10) > 0); tmp[i] = '\0'; - /* reverse and add thousand seperators */ + /* reverse and add thousand separators */ j = 0; while(i--) { dat[j++] = tmp[i]; @@ -288,7 +288,7 @@ /* remove size from parents. * This works the same as with adding: only the parents in which THIS is the - * only occurence of the hard link will be modified, if the same file still + * only occurrence of the hard link will be modified, if the same file still * exists within the parent it shouldn't get removed from the count. * XXX: Same note as for dir_mem.c / hlink_check(): * this is probably not the most efficient algorithm */
