Up to [cvs.NetBSD.org] / pkgsrc / pkgtools / pkglint / files
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.109, Sat Apr 22 14:32:49 2023 UTC (5 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: HEAD
Changes since 1.108: +0 -0
lines
FILE REMOVED
pkgtools/pkglint: update to 23.1.7 Changes since 23.1.0: No functional changes. Instead of having two copies of the code, install the package by downloading the releases from GitHub. Reduce the build-time dependencies by delivering pre-generated parser code.
Revision 1.108 / (download) - annotate - [select for diffs], Wed Mar 29 07:12:36 2023 UTC (6 months ago) by rillig
Branch: MAIN
Changes since 1.107: +5 -5
lines
Diff to previous 1.107 (colored)
Update pkgtools/pkglint to 23.1.0 Changes since 22.4.1: In makefiles outside pkgsrc, don't require the first line to contain the CVS Id. When simplifying conditions, correctly handle the edge case that a single-word value may evaluate numerically to zero. In dependency lines, parse '#' signs correctly. In error messages about malformed patch files, use the correct plural form.
Revision 1.107 / (download) - annotate - [select for diffs], Sun Jan 29 13:36:31 2023 UTC (8 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2023Q1-base,
pkgsrc-2023Q1
Changes since 1.106: +16 -12
lines
Diff to previous 1.106 (colored)
pkgtools/pkglint: update to 22.4.0 Changes since 22.3.2: Numeric comparisons of _PYTHON_VERSION generate an error since that variable can have the value 'none', which is not numeric. Furthermore, the variable is from the internal namespace and thus should not be used by packages at all. Warnings about COMPILER_RPATH_FLAG no longer suggest different and conflicting replacements. Cleanup: Handling of doc/CHANGES was moved to changes.go, and since go1.19.4, comments are formatted differently.
Revision 1.106 / (download) - annotate - [select for diffs], Sun Oct 2 14:39:37 2022 UTC (12 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2022Q4-base,
pkgsrc-2022Q4
Changes since 1.105: +2 -2
lines
Diff to previous 1.105 (colored)
pkgtools/pkglint: update to 22.3.0 Changes since 22.2.7: Pkglint no longer wrongly warns about package options from optional or required option groups. Fixes PR 57038.
Revision 1.105 / (download) - annotate - [select for diffs], Sun Jul 24 20:07:20 2022 UTC (14 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2022Q3-base,
pkgsrc-2022Q3
Changes since 1.104: +2 -1
lines
Diff to previous 1.104 (colored)
pkgtools/pkglint: update to 22.2.3 Changes since 22.2.2: CHECK_WRKREF is known to pkglint, which prevents conditions using this variable from being simplified in a wrong way. For variables that are guaranteed to be defined, suggest to simplify the condition '!empty(VAR:M[Yy][Ee][Ss])' to '${VAR:M[Yy][Ee][Ss]}', as that reduces the number of negations in the condition. Detect redundant WRKSRC definitions and suggest to remove them. Fix wrong "c99 is not valid for USE_LANGUAGES" warnings.
Revision 1.104 / (download) - annotate - [select for diffs], Sat Jan 1 12:44:25 2022 UTC (21 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2022Q2-base,
pkgsrc-2022Q2,
pkgsrc-2022Q1-base,
pkgsrc-2022Q1
Changes since 1.103: +1 -0
lines
Diff to previous 1.103 (colored)
pkgtools/pkglint: update to 21.4.1 Changes since 21.4.0: Running 'pkglint doc/CHANGES-2021' now warns about issues for this single file. Previously, it was necessary to specify '-Cglobal' as well, but then pkglint also warned about issues in all other CHANGES files. Pkglint no longer warns about the characters '!' and '@' in GO_MODULES_FILES, since these are legitimate. Fixes PR pkg/56595. Small cleanups in the pkglint testing infrastructure.
Revision 1.103 / (download) - annotate - [select for diffs], Sat Oct 9 08:33:09 2021 UTC (23 months, 3 weeks ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2021Q4-base,
pkgsrc-2021Q4
Changes since 1.102: +1 -0
lines
Diff to previous 1.102 (colored)
pkgtools/pkglint: update to 21.3.1 Changes since 21.3.0: When checking a standalone makefile fragment, pkglint reports redundant variable declarations. In pathname patterns, spaces and other escaping is allowed. This is needed for devel/meson. While here, register MESON_REQD. Adjust to the removal of SHA1 for distfiles. Only RMD160, SHA512 and Size remain now. Patches continue to use SHA1 since they don't come via untrusted paths.
Revision 1.102 / (download) - annotate - [select for diffs], Sun Jun 6 11:46:43 2021 UTC (2 years, 3 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base,
pkgsrc-2021Q3,
pkgsrc-2021Q2-base,
pkgsrc-2021Q2
Changes since 1.101: +7 -7
lines
Diff to previous 1.101 (colored)
pkgtools/pkglint: update to 21.1.4 Changes since 21.1.3: Allow slash in Git tags like 'refs/tags/v1.0.0', as well as in make targets like 'subdir/build'.
Revision 1.101 / (download) - annotate - [select for diffs], Mon Oct 26 22:13:23 2020 UTC (2 years, 11 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2021Q1-base,
pkgsrc-2021Q1,
pkgsrc-2020Q4-base,
pkgsrc-2020Q4
Changes since 1.100: +47 -1
lines
Diff to previous 1.100 (colored)
pkgtools/pkglint: update to 20.3.2 Changes since 20.3.1: The available Java versions are parsed from mk/java-vm.mk instead of hard-coding them in pkglint.
Revision 1.100 / (download) - annotate - [select for diffs], Sat Jun 20 07:00:44 2020 UTC (3 years, 3 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2020Q3-base,
pkgsrc-2020Q3,
pkgsrc-2020Q2-base,
pkgsrc-2020Q2
Changes since 1.99: +1 -1
lines
Diff to previous 1.99 (colored)
pkgtools/pkglint: update to 20.1.18 Changes since 20.1.17: Fixed the algorithm for checking whether two patterns overlap, such as MACHINE_PLATFORM:MNetBSD-[0-9].*-*. Fixed wrong warning about foreign variable in SUBST block, as seen in geography/qgis.
Revision 1.99 / (download) - annotate - [select for diffs], Sun Jun 7 15:49:23 2020 UTC (3 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.98: +2 -1
lines
Diff to previous 1.98 (colored)
pkgtools/pkglint: update to 20.1.15 Changes since 20.1.14: Fix confusing wording of diagnostic "should contain text". It's more precise to say "this line should consist of this text". Otherwise it's too easy to interpret it as "the text should occur somewhere in the line". Allow BUILDLINK_PREFIX.* to be used in helper files. Especially for programming language packages, files like plugin.mk often include buildlink3.mk and therefore may refer to the BUILDLINK_PREFIX of this package. Warn about redundant BUILDLINK_API_VERSION restrictions. Previously, the check had only been enabled if the operators from the default dependency pattern (buildlink3.mk) and the additional dependency pattern (package) used the same operators, which already covered most practical cases. Determine SuSE versions from the pkgsrc tree.
Revision 1.98 / (download) - annotate - [select for diffs], Sat Jun 6 20:42:56 2020 UTC (3 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.97: +77 -72
lines
Diff to previous 1.97 (colored)
pkgtools/pkglint: update to 20.1.14 Changes since 20.1.13: Packages that don't define DISTNAME probably don't download any files and thus may not need a distinfo file. (There are several other conditions involved in this, though.) When reporting wrong distinfo hashes, always report them in the order in which they appear in the distinfo file, not by hashmap order. Fix panic when parsing the Makefile line "./=value", which according to bmake is a variable assignment. This is not used in practice though. Disallow a leading hyphen in package option names. There are only very few packages that wrongly use these option selectors in PKG_SUGGESTED_OPTIONS. Distinguish between a tool dependency (USE_TOOLS) and a plain tool name (TOOLS_NOOP, TOOLS_BROKEN, TOOLS_FAIL). Allow packages to add arbitrary tools to these lists.
Revision 1.97 / (download) - annotate - [select for diffs], Mon Jun 1 20:49:54 2020 UTC (3 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.96: +2 -2
lines
Diff to previous 1.96 (colored)
pkgtools/pkglint: update to 20.1.12 Changes since 20.1.11: The file bsd.pkg.mk must only ever be included by package Makefiles directly, not by other Makefile fragments. Seen in www/w3m. The variable BUILDLINK_PREFIX.* should only be used for packages that have actually been included by the package. This catches the use of BUILDLINK_PREFIX.libiconv, which should have been iconv instead. Allow comments before line 3 in buildlink3.mk files. This is necessary for mariadb55-client since its buildlink identifier is mysql-client, which is so non-obvious that it needs to be documented.
Revision 1.96 / (download) - annotate - [select for diffs], Sun May 24 19:12:29 2020 UTC (3 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.95: +9 -4
lines
Diff to previous 1.95 (colored)
pkgtools/pkglint: update to 20.1.10 Changes since 20.1.8: Recognize SUBST_NOOP_OK and SUBST_SHOW_DIFF. Allow plain -Wl,-R and -Wl,-rpath in BUILDLINK_TRANSFORM, when they are used to remove compiler options. Recognize ggrep and other platform tools as valid tool names. Seen in lang/rust.
Revision 1.95 / (download) - annotate - [select for diffs], Fri May 8 19:50:04 2020 UTC (3 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.94: +1 -1
lines
Diff to previous 1.94 (colored)
pkgtools/pkglint: update to 20.1.4 Changes since 20.1.3: For patches that patch a single file, the filename of the patch should correspond to the patched file. There are a few different naming schemes in action, therefore the check is relatively loose. Patches that are called patch-[a-z][a-z] continue to be allowed for historic reasons. Patches that are called patch-CVE-* are also allowed. The entries in doc/CHANGES-* are checked for consistency. For example, it doesn't make sense to add a package twice or "update" a package from version 1.0 to version 1.0. All version numbers in these entries must be valid pkgsrc versions, i.e. start with a digit and only use characters from -.0-9A-Z_a-z.
Revision 1.94 / (download) - annotate - [select for diffs], Thu Apr 30 21:15:03 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.93: +6 -6
lines
Diff to previous 1.93 (colored)
pkgtools/pkglint: update to 20.1.3 Changes since 20.1.2: Stricter check for Python version numbers. Before, 25 and 26 had not been marked as wrong. In assignments like PKGNAME=${DISTNAME:S,from,to,}, modifiers that don't have any effect generate a note. Most of these modifiers are redundant or outdated. Patches must not add well-known absolute paths like /usr/pkg, /var and /etc since these must be overridable by the pkgsrc user. Other absolute paths continue to be allowed.
Revision 1.93 / (download) - annotate - [select for diffs], Mon Apr 13 19:46:44 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.92: +20 -22
lines
Diff to previous 1.92 (colored)
pkgtools/pkglint: update to 20.1.2 Changes since 20.1.1: Ensure that relative paths to other packages have the canonical form ../../category/package. Add notes about pathname patters that mention ${WRKSRC} even though they are already defined to be relative to WRKSRC. Fix check for redundantly added categories. The check had previously reported that the included file would be redundant, which was wrong. It's always the including file that provides the redundancy.
Revision 1.92 / (download) - annotate - [select for diffs], Thu Mar 26 07:02:44 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2020Q1-base,
pkgsrc-2020Q1
Changes since 1.91: +3 -2
lines
Diff to previous 1.91 (colored)
pkgtools/pkglint: update to 20.1.1 Changes since 20.1.0: In UNLIMIT_RESOURCES, the recently added virtualsize is allowed. Packages that have distfiles without any digit in their name should define DIST_SUBDIR to avoid polluting the global namespace. The top-level distfiles directory should only contain versioned filenames.
Revision 1.91 / (download) - annotate - [select for diffs], Wed Mar 18 08:24:49 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.90: +103 -109
lines
Diff to previous 1.90 (colored)
pkgtools/pkglint: update to 19.4.12 Changes since 19.4.11: Redundant additions to BUILDLINK_API_DEPENDS and BUILDLINK_ABI_DEPENDS get warnings since they may have been needed in the past but the dependent package has increased its required version numbers over time.
Revision 1.90 / (download) - annotate - [select for diffs], Sat Mar 7 23:35:35 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.89: +3 -2
lines
Diff to previous 1.89 (colored)
pkgtools/pkglint: update to 19.4.10 Changes since 19.4.9: In continuation lines with long values, pkglint no longer suggests to move the continuation backslash in the middle of the variable value, as that would be impossible. Warn when a shell command is assigned to a variable that only takes pathnames. Shell commands can contain command line options, and these are not pathnames. The TOOLS_PLATFORM.tool variables are not defined on every platform. When these variables are used outside an OPSYS check, a warning lists the platforms where the tool is undefined or only defined conditionally.
Revision 1.89 / (download) - annotate - [select for diffs], Sat Feb 15 13:48:40 2020 UTC (3 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.88: +6 -3
lines
Diff to previous 1.88 (colored)
pkgtools/pkglint: update to 19.4.8 Changes since 19.4.7: The diagnostic for homepages using FTP is simpler now. When running pkglint recursively on the top-level directory, the inter-package checks (distfile hashes, unused licenses) are enabled implicitly. This way, the only effect of the -Cglobal option is now whether the pkgsrc infrastructure files are checked as well. The check for removed packages that have not been recorded in doc/CHANGES prints the correct lines when pkglint is run with the --source option. Fatal technical errors are no longer treated as diagnostics since they are none. That was an early conceptual mistake, but since these fatal error didn't happen often, it didn't matter. In diagnostics, when referring to other lines, the previously used words before/after have been replaced with above/below to avoid any confusion whether space or time is meant. In CONF_FILES, spaces and quotes are allowed. See https://gnats.netbsd.org/42191. Fixed unintended side-effects when running pkglint --autofix --only. Before, all fixes were applied to the file, whether or not they matched the --only option. Fixed resolution of relative paths of the form ../../category/package when they appeared in an infrastructure file. Lots of refactorings and housekeeping, as usual.
Revision 1.88 / (download) - annotate - [select for diffs], Sat Jan 18 21:56:09 2020 UTC (3 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.87: +5 -5
lines
Diff to previous 1.87 (colored)
pkgtools/pkglint: update to 19.4.4 Changes since 19.4.3: Packages that still use http in their HOMEPAGE URL generate warnings that the URL should use https instead.
Revision 1.87 / (download) - annotate - [select for diffs], Sat Jan 11 15:47:58 2020 UTC (3 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.86: +1 -1
lines
Diff to previous 1.86 (colored)
pkgtools/pkglint: update to 19.4.3 Changes since 19.4.2: PLIST_VARS identifiers must not contain characters that are interpreted specially in regular expressions. All pkgsrc text files except for doc/pkgsrc.{html,txt} must use the default CVS keyword substitution.
Revision 1.86 / (download) - annotate - [select for diffs], Sat Jan 4 19:53:14 2020 UTC (3 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.85: +5 -5
lines
Diff to previous 1.85 (colored)
pkgtools/pkglint: update to 19.4.1 Changes since 19.4.0: The notes for inserting an empty line have been changed from "insert after this line" to "insert before this line" to make the line numbers in the diagnostics contiguous. There had been several places where the diagnostics went from line 1 to line 2 and then back to line 1, which was confusing. The lines in ALTERNATIVES files are checked for trailing whitespace. This is only for consistency with the other checks. In the whole pkgsrc tree all ALTERNATIVES files are already fine. The diagnostics for comments in .endif/.endfor lines that don't correspond to their .if/.elif/.for counterparts now includes the exact line number of the corresponding condition, to make the warning easier to fix. The diagnostics for wrong variable value alignment now mention the current column in addition to the desired column, to make it easier to see by how much and in which direction the indentation should be fixed. Variables that are used in conditions before they are actually defined need the :U modifier.
Revision 1.85 / (download) - annotate - [select for diffs], Mon Dec 30 16:27:13 2019 UTC (3 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.84: +1 -1
lines
Diff to previous 1.84 (colored)
pkgtools/pkglint: update to 19.4.0 Changes since 19.3.19: Empty PLIST files now generate an error instead of a warning since there is no reason for having these empty files. If a follow-up line in a Makefile is completely empty, there is no note about trailing whitespace anymore since the warning about the misleading empty line already covers this case. The remaining code changes are only refactorings.
Revision 1.84 / (download) - annotate - [select for diffs], Sat Dec 14 18:04:16 2019 UTC (3 years, 9 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q4-base,
pkgsrc-2019Q4
Changes since 1.83: +2 -2
lines
Diff to previous 1.83 (colored)
pkgtools/pkglint: update to 19.3.18 Changes since 19.3.17: The SUBST check has been completely rewritten. It can handle several SUBST classes at the same time now. This reduces the number of wrong warnings.
Revision 1.83 / (download) - annotate - [select for diffs], Fri Dec 13 01:39:23 2019 UTC (3 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.82: +67 -64
lines
Diff to previous 1.82 (colored)
pkgtools/pkglint: update to 19.3.17 Changes since 19.3.16: Pkglint now handles SUBST blocks correctly, even those in which some of the variables are defined conditionally. It correctly reports those that are missing in at least one of the possible branches. PKG_JVM is no longer marked as deprecated. It was once package-settable. Since 2002 it is system-provided, and the package-settable counterpart is PKG_JVM_DEFAULT. This does not fit into pkglint's simple model of deprecating variables since the variable name is still valid, it should just not be defined by packages anymore. The alignment of variable assignments has been fixed in some edge cases. In continuation lines where the backslash is beyond column 72, the whitespace before the continuation backslash is fixed to a single space.
Revision 1.82 / (download) - annotate - [select for diffs], Sun Dec 8 22:03:38 2019 UTC (3 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.81: +2 -2
lines
Diff to previous 1.81 (colored)
pkgtools/pkglint: update pkglint to 19.3.15 Changes since 19.3.14: Invalid lines in PLIST files are now reported as errors instead of warnings. If pkglint doesn't know about it, it must be an error. In PLIST files, all paths are validated to be canonical. That is, no dotdot components, no absolute paths, no extra slashes, no intermediate dot components. Fewer notes for unexpanded variable expressions in DESCR files. Before, the text $@ was reported as possible Makefile variable even though it was just a Perl expression. README files are allowed again in pkgsrc package directories. There was no convincing argument why these should be forbidden. A few diagnostics have been changed from NOTE to WARNING or from WARNING to ERROR, to match their wording. When pkglint suggests to replace :M with ==, the wording is now "can be made" instead of "should".
Revision 1.81 / (download) - annotate - [select for diffs], Sun Dec 8 00:06:38 2019 UTC (3 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.80: +102 -52
lines
Diff to previous 1.80 (colored)
pkgtools/pkglint: update to 19.3.14 Changes since 19.3.13: When pkglint suggests to replace !empty(VARNAME:Mfixed) with ${VARNAME} == fixed, the exact suggested expression is now part of the diagnostic. The check and the autofix have been improved. They now apply only to the last modifier in the whole chain, everything else was a bug in pkglint. Pkglint now knows the scope of variables better than before. It knows the difference between variables from <sys.mk> like MACHINE_ARCH, which are always in scope, and those from mk/defaults/mk.conf, which only come into scope later, after bsd.prefs.mk has been included. It warns when variables are used too early, for example in .if conditions. The pathnames in ALTERNATIVES files are now checked for absolute pathnames. This mistake doesn't happen in practice, but the code for converting the different path types internally made it necessary to add these checks. At least this prevents typos. The special check for obsolete licenses has been removed since their license files have been removed and that is checked as well. Variables named *_AWK may be appended to. The variables _PKG_SILENT and _PKG_DEBUG are no longer deprecated, they are obsolete now. They are not used in main pkgsrc and pkgsrc-wip anymore. When a package sets a default value for a user-settable variable (which is something that should not happen anyway), it should .include bsd.prefs.mk before, in order to not accidentally overwrite the user-specified value. Variable modifiers of the form :from=to are now parsed like in bmake. They are greedy and eat up any following colons as well. This means that ${VAR:.c=.o:Q} replaces source.c with source.o:Q, instead of quoting it. Pkglint now warns about such cases. The handling of relative paths in diagnostics is now consistent. All paths that are part of a diagnostic are relative to the line that issues the diagnostic. Fatal errors are no longer suppressed in --autofix mode. Plus lots of refactoring, to prevent accidental mixing of incompatible relative paths.
Revision 1.80 / (download) - annotate - [select for diffs], Mon Dec 2 23:32:09 2019 UTC (3 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.79: +30 -16
lines
Diff to previous 1.79 (colored)
pkgtools/pkglint: update to 19.3.13 Changes since 19.3.12: The command line option -Wspace has been removed. Warnings and notes about whitespace are now generated by default and cannot be switched off. This is to ensure a consistent visual appearance of the package Makefiles. Shell programs that are indented unnecessarily deep generate a note by default now. Before, the option -Wall was necessary to get these notes. The check for unintended comments in multi-line shell programs is now enabled again. It had been disabled some time ago as byproduct of a bug fix in the shell parser. The check for unique buildlink3 package identifiers now also works if pkglint is run from a package directory instead of the pkgsrc root directory.
Revision 1.79 / (download) - annotate - [select for diffs], Wed Nov 27 22:10:07 2019 UTC (3 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.78: +16 -0
lines
Diff to previous 1.78 (colored)
pkgtools/pkglint: update to 19.3.11 Changes since 19.3.10: The check for buildlink3.mk files that are included conditionally in one place and unconditionally in another place have been refined. Now they also work in cases that do not involve any variables, such as when the condition is a mere exists(filename). References to variables that use parentheses instead of the usual braces produce a warning now, even if pkglint cannot fix them automatically. This affects only a few instances where more than one such variable reference appeared in a single line. The --log-verbose command line option has been removed since it does not have any practical use other than improving the performance during pkglint development itself. Because of that it hadn't even been mentioned in the manual page. Warnings for missing license files now report the path to the license file relative to the line where the warning occurs, like everywhere else.
Revision 1.78 / (download) - annotate - [select for diffs], Sat Nov 23 23:35:56 2019 UTC (3 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.77: +8 -9
lines
Diff to previous 1.77 (colored)
pkgtools/pkglint: update to 19.3.10 Changes since 19.3.9: In diagnostics for suggested package updates, the exact line of doc/TODO is mentioned. If a suggested update has an additional comment, the brackets around that comment are not output anymore. The check for defined but not used variables has been improved for the edge case of defining a variable in the package Makefile and using it in the buildlink3.mk file of the same package, which just doesn't work. Makefile fragments in patches/ directories are now completely ignored. It was a hypothetical case anyway. Comparing PKGSRC_COMPILER using the == or != operators is now considered an error instead of a warning. The common cases can be autofixed.
Revision 1.77 / (download) - annotate - [select for diffs], Sun Nov 17 01:26:25 2019 UTC (3 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.76: +3 -3
lines
Diff to previous 1.76 (colored)
pkgtools/pkglint: update to 19.3.7 Changes since 19.3.6: Improved variable value alignment. Fixed wrong warning about comment lines that were interpreted as shell commands before. Warn when the first category of a package doesn't correspond to the path in the filesystem. This affects 603 packages. No longer warn about deprecated BUILDLINK_TRANSFORM.${OPSYS}. The deprecation warning was meant for BUILDLINK_TRANSFORM.${pkgbase}, but since pkglint cannot distinguish between these, the warnings were wrong.
Revision 1.76 / (download) - annotate - [select for diffs], Mon Nov 4 18:44:21 2019 UTC (3 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.75: +12 -4
lines
Diff to previous 1.75 (colored)
pkgtools/pkglint: update to 19.3.6 Changes since 19.3.5: Improved indentation and alignment of multi-line variable assignments. Improved indentation of multi-line shell commands. Added warning for adding unquoted words to PKG_FAIL_REASON, which is a list of messages, one per line. Lines that start with tabs followed by a # are not shell commands, they are comments. Bmake treats them in the same way. Change the type of BROKEN to be a list of messages, instead of a single message. This allows at least a bit of formatting in the error messages.
Revision 1.75 / (download) - annotate - [select for diffs], Sat Nov 2 16:37:48 2019 UTC (3 years, 11 months ago) by rillig
Branch: MAIN
Changes since 1.74: +1 -1
lines
Diff to previous 1.74 (colored)
pkgtools/pkglint: update to 19.3.5 Changes since 19.3.4: Variable uses in parentheses (such as $(VAR) instead of ${VAR}) are treated the same. The ones in parentheses had less support before. Improved the checks for options.mk files, adding support for options that are defined using .for loops and those referring to other variables. Packages that set DISTFILES to an empty list no longer require a distinfo file. Patches whose filename contains the word CVE may patch more than one target file.
Revision 1.74 / (download) - annotate - [select for diffs], Fri Nov 1 19:56:53 2019 UTC (3 years, 11 months ago) by rillig
Branch: MAIN
Changes since 1.73: +28 -18
lines
Diff to previous 1.73 (colored)
pkgtools/pkglint: update to 19.3.4 Changes since 19.3.3: In cases where the conditions for including buildlink3.mk files differ between the package itself and its own buildlink3.mk file, explain how to determine PKG_OPTIONS for dependencies. Don't issue wrong warnings in options.mk files when the options are handled in a .for loop.
Revision 1.73 / (download) - annotate - [select for diffs], Tue Oct 1 21:37:59 2019 UTC (4 years ago) by rillig
Branch: MAIN
Changes since 1.72: +67 -67
lines
Diff to previous 1.72 (colored)
pkgtools/pkglint: update to 19.3.0 Changes since 5.7.24: * There is no need to ask the dummy MAINTAINER from url2pkg whether committing changes is ok. * When autofixing a condition like !empty(PKGPATH:Mliteral), don't generate unnecessary parentheses around ${PKGPATH} == literal. * In a _VARGROUPS section, the public variables should be listed before the private variables, to put important things first. * When pkglint suggests to be run again with the -e, -fs or -F options, repeat the whole command line, to allow for copy-and-paste. * The checks for PKGPATH are fixed and enhanced. It is not a relative path like in ../../category/package, but relative to the pkgsrc root. * Unintended file globbing in sed commands such as s,.*,any, gets a warning. * MASTER_SITES should normally end with a slash, in rare cases an equals sign or a colon are correct, too. * Detect redundant directories in INSTALLATION_DIRS.
Revision 1.72 / (download) - annotate - [select for diffs], Thu Sep 12 21:15:48 2019 UTC (4 years ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q3-base,
pkgsrc-2019Q3
Changes since 1.71: +4 -2
lines
Diff to previous 1.71 (colored)
pkgtools/pkglint: update to 5.7.24 Changes since 5.7.23: * Improved the _VARGROUPS check for ignored variables * Removed wrong warnings for variable expressions like ${VAR:Dyes:Uno} * Used correct terminology for the :Q modifier (it's not an operator)
Revision 1.71 / (download) - annotate - [select for diffs], Sun Sep 8 22:47:47 2019 UTC (4 years ago) by rillig
Branch: MAIN
Changes since 1.70: +4 -10
lines
Diff to previous 1.70 (colored)
pkgtools/pkglint: update to 5.7.23 Changes since 5.7.22: * Added a warning for lines that look empty but are actually follow-up lines from a previous line. * Added notes for unusual placement of the continuation backslash. It should always be preceded by a single space or tab, or be in column 73. * Improved check for needlessly complicated !empty(PKGPATH:Mcat/pkg) that is transformed into the simpler ${PKGPATH} == cat/pkg, even if the package name contains hyphens, dots, plus or slashes. * Added check for the _VARGROUPS section since that section contains many redundancies that can easily be checked. For example, in mk/compiler/gcc.mk the _VARGROUPS section is 67 lines long and contains far more than 100 variables. It's tedious to manually check this file for internal consistency. That's better left to pkglint. * The empty variable is no longer flagged as "used but not defined". It appears in expressions like ${:Ustring}. * When --source is combined with --explain, don't unnecessarily repeat the source code for a single line if there are several diagnostics. Instead, even omit the empty line between the diagnostics for the same line.
Revision 1.70 / (download) - annotate - [select for diffs], Wed Aug 21 16:45:17 2019 UTC (4 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.69: +20 -9
lines
Diff to previous 1.69 (colored)
pkgtools/pkglint: update to 5.7.21 Changes since 5.7.20: * PKG_OPTIONS that are handled using patterns are correctly identified. * Simple R packages should follow the canonical variable order. * Fixed some edge cases for aligning variable assignments. * Improved detection of allowed values for USE_LANGUAGES.
Revision 1.69 / (download) - annotate - [select for diffs], Fri Aug 16 21:00:17 2019 UTC (4 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.68: +6 -6
lines
Diff to previous 1.68 (colored)
pkgtools/pkglint: update to 5.7.20 Changes since 5.7.19: * Fixed warning about unknown C++ standard versions, which had appeared after the code in mk/compiler.mk changed.
Revision 1.68 / (download) - annotate - [select for diffs], Sun Jun 30 20:56:19 2019 UTC (4 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.67: +21 -24
lines
Diff to previous 1.67 (colored)
pkgtools/pkglint: update to 5.7.14 Changes since 5.7.13: - Removed the -Cextra command line option since it didn't produce useful warnings. - Removed unwarranted warnings about _WRAP_EXTRA_ARGS.CC being used in packages. - Cleaned up the canonical order of variables in package Makefiles. - Added a few commands to those that cannot fail, to reduce the number of "at the left of the | operator" in shell programs. - Fixed warnings about "-ggdb" being an unknown shell command. - Reduced number of warnings about lists being used where a single value is expected. - Replaced unreliable check for invalid CFLAGS and LDFLAGS with a more practical check. - Renamed "RCS tag" to "CVS tag" to make the diagnostics more modern. - Added warning when PKGNAME or PKGVERSION is used in MASTER_SITES. - Reworded warning for missing or superfluous PLIST files. - Lots of other detail changes, refactorings and automatic tests.
Revision 1.67 / (download) - annotate - [select for diffs], Mon Jun 10 19:51:57 2019 UTC (4 years, 3 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q2-base,
pkgsrc-2019Q2
Changes since 1.66: +1273 -1271
lines
Diff to previous 1.66 (colored)
pkgtools/pkglint: updated to 5.7.13 Changes since 5.7.12: * Fixed a warning in the variable permissions that previously said "this variable should not be used at load time in this file, it would be ok in .", with an empty list of alternative files. * Lots of refactoring and new tests.
Revision 1.66 / (download) - annotate - [select for diffs], Sun May 26 14:05:57 2019 UTC (4 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.65: +4 -4
lines
Diff to previous 1.65 (colored)
pkgtools/pkglint: update to 5.7.12 Changes since 5.7.11: * Fixed an alignment bug when pkglint replaced SUBST_SED with SUBST_VARS. * Added many test cases.
Revision 1.65 / (download) - annotate - [select for diffs], Tue May 21 17:59:48 2019 UTC (4 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.64: +1 -1
lines
Diff to previous 1.64 (colored)
pkgtools/pkglint: update to 5.7.10 Changes since 5.7.9: * Fixed URL checking for MASTER_SITES, especially remove the wrong error message about URLs of the form ${MASTER_SITE:S,^,-,:=subdir/}. * Made warnings about invalid filenames, filename patterns, pathnames and pathname patterns more detailed.
Revision 1.64 / (download) - annotate - [select for diffs], Mon May 6 20:27:17 2019 UTC (4 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.63: +15 -39
lines
Diff to previous 1.63 (colored)
pkgtools/pkglint: update to 5.7.9 Changes since 5.7.8: * Buildlink3.mk files are checked for typos in the identifier that is used for BUILDLINK_TREE, to detect copy-and-paste mistakes. * Having a rationale is recommended for some variables, especially those that make a package fail to build or crash at runtime. This check is only active when -Wextra is given, since it is still actively debated whether such a check is actually useful. * Files called Makefile.php can easily be mistaken to be PHP files. Therefore the recommended naming convention is to have auxiliary files called *.mk. There are already many more files called *.mk than those being called Makefile.*. * The check for unquoted sed substitution commands has been made more detailed, but since it is completely disabled, there's nothing to see for now. * The definitions for MASTER_SITE_* are loaded directly from the pkgsrc infrastructure instead of hard-coding them in pkglint.
Revision 1.63 / (download) - annotate - [select for diffs], Thu May 2 08:36:10 2019 UTC (4 years, 5 months ago) by wiz
Branch: MAIN
Changes since 1.62: +1 -1
lines
Diff to previous 1.62 (colored)
sun-jdk6, sun-jre6: remove Last update in 2013, remove sun-jdk7/sun-jre7 instead
Revision 1.62 / (download) - annotate - [select for diffs], Sun Apr 28 18:13:53 2019 UTC (4 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.61: +56 -25
lines
Diff to previous 1.61 (colored)
pkgtools/pkglint: update to 5.7.8 Changes since 5.7.7: Warn about definitions of NOT_FOR_* and ONLY_FOR_* which are missing a rationale. When maintaining such packages it helps a lot to know why the package cannot be built on a particular platform or with a particular compiler or Python version.
Revision 1.61 / (download) - annotate - [select for diffs], Sat Apr 27 19:33:57 2019 UTC (4 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.60: +249 -266
lines
Diff to previous 1.60 (colored)
pkgtools/pkglint: update to 5.7.7 Changes since 5.7.6: Warn about packages that override user-settable variables. Packages that define variables with the same value as the default value only get a note instead of the warning since these definitions do not cause any confusion. Do not suppress technical error messages in autofix mode. Do not warn about the package version being greater than the latest from doc/CHANGES if the file defining the package version has been modified locally and is about to be committed.
Revision 1.60 / (download) - annotate - [select for diffs], Tue Apr 23 21:20:49 2019 UTC (4 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.59: +5 -4
lines
Diff to previous 1.59 (colored)
pkgtools/pkglint: update to 5.7.6 Changes since 5.7.5: * The explanation for distfile hashes is only given when the distfiles actually need to be downloaded. If they are already there, no explanation is necessary. * Makefile lines that are commented and have line continuations are properly parsed. This affects the autofix for variable value realignment. * Variable permissions are not checked in hacks.mk since pkgsrc developers who know about hacks.mk probably know what they are doing. From hacks.mk files, builtin.mk files may be included directly, for the same reason. * Expressions of the form !empty(PKGPATH:Mpattern), when PKGPATH is not a list variable and pattern has no wildcards, can be written in a simpler form, and pkglint autofixes this. For example the above expression is transformed into ${PKGPATH} == pattern. This transformation reduces the amount of double negations (!empty) in the code. * Duplicate warnings about invalid relative ../package have been merged. * TOOLS_ALIASES are properly resolved. The line USE_TOOLS=ggrep makes the tools grep, egrep and fgrep known to pkglint, in the same way as in the pkgsrc infrastructure. * The diagnostics for missing or unnecessary distinfo files have been improved to provide some guidance. * Packages that use MESSAGE_SRC to build the message from multiple files no longer produce a warning for malformed message files. These files are simply skipped.
Revision 1.59 / (download) - annotate - [select for diffs], Sat Apr 20 17:43:25 2019 UTC (4 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.58: +116 -25
lines
Diff to previous 1.58 (colored)
pkgtools/pkglint: update to 5.7.5 Changes since 5.7.4: * Warn about invalid variable uses in directives like .if and .for * Do not warn when a package-settable variable is assigned using the ?= operator before including bsd.prefs.mk. This warning only makes sense for user-settable and system-provided variables. * The parser for variable uses like ${VAR:@v@${v:Q}} is more robust now, which reduces the number of parse errors and leads to more appropriate diagnostics, in cases like ${URL:Mftp://*}, which should really be ${URL:Mftp\://*}. * The valid values for OPSYS are now determined by the files in mk/platform instead of allowing arbitrary identifiers. This catches a few instances where "Solaris" is used instead of the correct "SunOS". * Setting USE_LANGUAGES only has an effect if mk/compiler.mk has not yet been included. In all other cases, pkglint warns now. * Missing entries in doc/CHANGES produce a note now. This will lead to more accurate statistics for the release notes.
Revision 1.58 / (download) - annotate - [select for diffs], Wed Apr 3 21:49:51 2019 UTC (4 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.57: +2 -2
lines
Diff to previous 1.57 (colored)
pkgtools/pkglint: update to 5.7.4 Changes since 5.7.3: * Warn about dependency patterns that are missing a version number, such as ${PYPKGPREFIX}-sqlite3:../../databases/py-sqlite3. * Suggest to replace the := assignment operator with the :sh modifier, in some cases where the variable is not obviously used at load time.
Revision 1.57 / (download) - annotate - [select for diffs], Sun Mar 24 13:58:38 2019 UTC (4 years, 6 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q1-base,
pkgsrc-2019Q1
Changes since 1.56: +1499 -1111
lines
Diff to previous 1.56 (colored)
pkgtools/pkglint: update to 5.7.3 Changes since 5.7.2: PLIST files are checked for non-ASCII characters. Even though pkgsrc sets up the environment with LC_ALL=C, there are still some cases of encoding errors. The case discussed on the tech-pkg mailing list was lang/go112. The checks for variable permissions ("may not be set in this file") have been reworked completely. Many of the variable permissions had different rules for Makefile and Makefile.common. These different rules tried to prevent accidental overwriting of variables. Starting in July 2018, pkglint got a check for redundant variables that is far more accurate than the previous variable permissions. Therefore these fine-grained permissions are no longer necessary. This removes a few hundred wrong warnings about insufficient permissions. The check that adds missing SHA512 hashes to distinfo files has been fixed to work correctly in DIST_SUBDIR cases. Improved the checks regarding tools that are used by a package but not added to USE_TOOLS. For example, the "make" tool is always available, as are all tools that are added to TOOLS_CREATE. Lots of small improvements, as always.
Revision 1.56 / (download) - annotate - [select for diffs], Sun Mar 10 19:01:50 2019 UTC (4 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.55: +45 -35
lines
Diff to previous 1.55 (colored)
pkgtools/pkglint: update to 5.7.2 Changes since 5.7.1: * Fixed detection of GNU_CONFIGURE=yes combined with USE_LANGUAGES missing c. This combination tends to fail in the configure phase. * When the distinfo doesn't contain all hashes for the downloaded distfiles (typically SHA512 is missing) and the distfiles are actually downloaded to ${PKGSRCDIR}/distfiles, pkglint can now add the missing hashes. It only does this if there is at least one existing hash and if all existing hashes are correct. * The check for redundant variables has been improved considerably. Before there were several situations in which pkglint didn't get the redundant variable definitions right because its internal model only mimicked reality. The model has been improved and so have the diagnostics. * Pkglint only warns about wrong permissions (for defining or using a variable) when it knows the type of the variable and the permissions for the current file. Before, it had also warned if the permissions for the current file were not explicitly defined. * CFLAGS and LDFLAGS may be appended in buildlink3.mk files. This had been disallowed before, for no apparent reason. There are several places in pkgsrc where especially CFLAGS.${OPSYS} is appended to. * Cleaned up internal handling of relative paths. Previously pkglint sometimes resolved relative paths using the wrong base directory, which led to all kinds of wrong warnings and strange behavior. * Fixed lots of edge cases when parsing Makefile lines. These cases don't occur often but experience tells that the most fundamental code must be as correct as possible (see the handling of relative paths above). * Lots of refactoring and housekeeping, as always.
Revision 1.55 / (download) - annotate - [select for diffs], Sat Jan 26 16:31:33 2019 UTC (4 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.54: +24 -8
lines
Diff to previous 1.54 (colored)
pkgtools/pkglint: update to 5.6.12 Changes since 5.6.11: * In buildlink3.mk files, print the paths relative to the line, not to the pkgsrc root. * When explaining that a variable cannot be set/used because of wrong permissions, list the permissions. This provides more transparency than just stating that the desired action is not allowed. * When pkglint checks a pkgsrc-wip package, don't warn about malformed lines in doc/CHANGES-* since pkgsrc-wip users typically cannot do anything about these errors. * In profiling mode, not only the code coverage and the performance statistics are dumped, the whole heap is also dumped to see which parts of pkglint consume the most heap memory. Pkglint now needs less heap memory than before, which mainly affects full scans. * The checks for absolute pathnames have gone. They were of questionable value since pkglint has failed to give proper advice on how to fix them properly, at least for the last 12 years. * The check that pkgsrc-wip packages should only use exact CVS Ids (the unexpanded variant) has been disabled again. It occurred about 16000 times but even fixing it wouldn't improve anything since it was mostly a formatting issue without any practical consequences. * Warn about trailing variable modifiers like in ${VAR:S,from,to,extra}. * Properly parse ${VAR:!command!}. * Suggest to replace SUBST_SED with SUBST_VARS where possible, even with complicated shell quoting. Pkglint can autofix most of these overly verbose cases. * Load builtin.mk whenever the corresponding buildlink3.mk file is included. This fixes several warnings about undefined variables (especially for packages using OpenSSL). * Parse .for lines like bmake does since 2015, splitting words like in brk_string. * Optionally show a warning even if it cannot be autofixed by pkglint. This is useful for the SUBST_VARS replacement since even when pkglint cannot automatically replace the code, there are still cases where it can warn at least. * As always, several refactorings.
Revision 1.54 / (download) - annotate - [select for diffs], Sun Jan 13 19:55:53 2019 UTC (4 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.53: +18 -13
lines
Diff to previous 1.53 (colored)
pkgtools/pkglint: update to 5.6.11 Changes since 5.6.10: * Improved the wording of several warnings * Fixed parsing of complicated dependency patterns such as {ssh{,6}-[0-9]*,openssh-[0-9]*}. Pkglint still doesn't understand them but at least it doesn't mark them as "unknown" anymore. * Lots of refactoring, as usual. This is the last part of the big refactoring, therefore future changes to pkglint are expected to be smaller than in the previous 3 months.
Revision 1.53 / (download) - annotate - [select for diffs], Fri Dec 21 08:05:24 2018 UTC (4 years, 9 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2018Q4-base,
pkgsrc-2018Q4
Changes since 1.52: +36 -36
lines
Diff to previous 1.52 (colored)
pkgtools/pkglint: update to 5.6.10 Changes since 5.6.9: * ALTERNATIVES files are correctly checked now. Before, pkglint had suggested to remove the @PREFIX/ from the alternative, which was wrong and simply didn't work. * Diagnostics about variable assignments are ordered to report the left-hand side first and then everything to the right of the assignment operator. * The pkglint output is escaped properly to avoid sending unwanted escape sequences to the terminal. * The items in .for loops are parsed taking "double" and 'single' quotes into account since bmake does it in the same way since 2015. * In DESCR files, overly long lines are only warned about if they contain a space and therefore can be made shorter. * In DESCR files, text like ${PREFIX} only gets a note if it refers to a commonly known pkgsrc variable. This avoids distraction when a package mentions ${prefix}/bin or ${template.property}. * Lots of refactorings and small changes.
Revision 1.52 / (download) - annotate - [select for diffs], Mon Dec 17 00:15:39 2018 UTC (4 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.51: +6 -5
lines
Diff to previous 1.51 (colored)
pkgtools/pkglint: update to 5.6.9 Changes since 5.6.8: * In addition to the pkglint binary, the whole pkglint code is installed as a library, so that other packages can use the code for doing their own checks on pkgsrc packages, Makefiles, shell programs, or the other file types from pkgsrc. * BUILDLINK_*.* may be used in all files. * Lots of refactorings
Revision 1.51 / (download) - annotate - [select for diffs], Sun Dec 2 23:12:43 2018 UTC (4 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.50: +2 -1
lines
Diff to previous 1.50 (colored)
pkgtools/pkglint: update to 5.6.8 Changes since 5.6.7: In pkgsrc-wip, if the first line of a file contains an expanded CVS Id, it is not an error but only a note that it should be an unexpanded CVS Id. The autofix for this no longer inserts a new line but replaces the existing line. Several refactorings and small improvements to the existing diagnostics.
Revision 1.50 / (download) - annotate - [select for diffs], Sun Dec 2 01:57:48 2018 UTC (4 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.49: +6 -6
lines
Diff to previous 1.49 (colored)
pkgtools/pkglint: update to 5.6.7 Changes since 5.6.6: User-defined variables that are not yet added to BUILD_DEFS are only reported once per file. Unnecessary space after variable names is only worth a note instead of a warning. Example: MASTER_SITES = https://cdn.example.org/ All variable names that are defined in the pkgsrc infrastructure are assumed to be available to the package Makefiles. This reduces the number of wrong "used but not defined" warnings, at the expense of Variable names that are used in other variable names are checked whether they are defined somewhere. Example: CFLAGS+= ${CFLAGS.${PARAM}} # PARAM is now checked In SUBST_SED, when the pattern is s,@VAR@,${VAR}, or a slight variant thereof, pkglint suggests to define SUBST_VARS instead, which frees the package author from thinking about how to escape special characters and is generally easier to read. Example: SUBST_SED.class= s,@VAR@,${VAR:Q}, SUBST_VARS.class= VAR Directives like .if !defined(...) are now handled the same whether or not there is a space after before the (...). The check for locally modified files now works independently of the timezone. As always, lots of refactorings have happened under the hood. Many small bugs have been discovered and fixed accordingly.
Revision 1.49 / (download) - annotate - [select for diffs], Wed Nov 7 20:58:23 2018 UTC (4 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.48: +50 -31
lines
Diff to previous 1.48 (colored)
pkgtools/pkglint: update to 5.6.6 Changes since 5.6.5: - Removed plist-clash since it had crashed unconditionally whenever it was called. This means that in the last 3 years, nobody can have used it in the originally intended way. - Fixed interactions between the --source, --explain, --show-autofix, --autofix and --only options. - Fixed "defined but not used" and "used but not defined" for variables from the pkgsrc infrastructure. - Lots of small fixes and improvements found by the large pkglint code review (12% done).
Revision 1.48 / (download) - annotate - [select for diffs], Tue Oct 9 23:17:17 2018 UTC (4 years, 11 months ago) by rillig
Branch: MAIN
Changes since 1.47: +1 -1
lines
Diff to previous 1.47 (colored)
pkgtools/pkglint: update to 5.6.5 Changes since 5.6.4: * GCC_REQD should only contain the major version. For GCC versions up to 4.x, this consists of the first two numbers, such as 4.8, while starting with the 5.x series, the major version is only the first number, such as 7.
Revision 1.47 / (download) - annotate - [select for diffs], Tue Oct 9 19:12:13 2018 UTC (4 years, 11 months ago) by rillig
Branch: MAIN
Changes since 1.46: +101 -28
lines
Diff to previous 1.46 (colored)
pkgtools/pkglint: update to 5.6.4 Changes since 5.6.3: * Allow += for COMMENT * Sync variable type definitions with reality * Fix check for "used but not defined" variables. This check had been broken since pkgtools/pkglint/files/pkglint.pl r1.776 from 2008-10-18 (3cd071958e63), which missed its 10-year anniversary by just 9 days. After fixing this check, pkglint produces about 800 new warnings spread all over pkgsrc, most of which are real typos. * Detect used variables also in .if and .elif conditions. This is closely related to the above fix and reduces the number of "defined but not used" variables, while at the same time producing new warnings because these variables are used at load time, where some of these variables are not yet defined. * Detect variables for which pkglint doesn't know the exact data type by scanning all files under mk/ at startup. Currently there are about 470 of these variables. No "used but not defined" warnings are issued for these variables anymore. * To speed up pkglint when checking the whole pkgsrc tree at once, the most often needed files are cached to reduce IO load. The checks for USE_TOOLS are optimized now since they were a major bottleneck. Together with other performance improvements this makes pkglint about 50% faster when checking the whole pkgsrc tree including pkgsrc-wip.
Revision 1.46 / (download) - annotate - [select for diffs], Wed Oct 3 22:27:53 2018 UTC (5 years ago) by rillig
Branch: MAIN
Changes since 1.45: +211 -208
lines
Diff to previous 1.45 (colored)
pkgtools/pkglint: Update to 5.6.3 Changes since 5.6.2: * Add check for version patterns 1.5*, which should rather be 1.5.* * Re-enable check for "set -e" and commands that may silently fail because of missing error checking * Lots of internal clean-up and tests
Revision 1.45 / (download) - annotate - [select for diffs], Wed Sep 5 17:56:22 2018 UTC (5 years ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base,
pkgsrc-2018Q3
Changes since 1.44: +26 -37
lines
Diff to previous 1.44 (colored)
pkgtools/pkglint: update to 5.6.2 Changes since 5.6.1: * Improved checks that depend on whether bsd.prefs.mk is included or not. * Improved checks for tools, whether they may be used at load time or at run time. * Improved tokenizer for shell commands. $| is not a variable but a dollar followed by a pipe. * Warnings about SUBST context are now shown by default. * A warning is shown when a SUBST block is declared for *-configure but the package has defined USE_CONFIGURE=no. * Don't warn about USE_TOOLS:= ${USE_TOOLS:Ntool}. * Don't warn about using the ?= operator in buildlink3.mk files before including bsd.prefs.mk (for some more variables, but not all). * Report an error for packages from main pkgsrc that have a TODO or README file. Packages should be simple enough that they don't need a README file and ready for production so that they don't need a TODO. * Lots of small bug fixes and new tests.
Revision 1.44 / (download) - annotate - [select for diffs], Thu Aug 16 20:41:42 2018 UTC (5 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.43: +74 -46
lines
Diff to previous 1.43 (colored)
pkgtools/pkglint: update to 5.6.1 Changes since 5.6.0: * Fix output of relative paths in the diagnostics (thanks @wiz) * Fix parsing of ${VAR:ts---}; it is now a syntax error * Load more type definitions from mk/* instead of hard-coding them * Lots of refactoring to improve test coverage, fixing several small bugs as they were found
Revision 1.43 / (download) - annotate - [select for diffs], Thu Jul 19 06:38:15 2018 UTC (5 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.42: +14 -3
lines
Diff to previous 1.42 (colored)
pkgtools/pkglint: updated to 5.5.14 Changes since 5.5.13: * Suppress duplicate warnings for unknown options in the same file * Grab acceptable package versions directly from the infrastructure files * Note about too deeply indented shell programs
Revision 1.42 / (download) - annotate - [select for diffs], Mon May 21 08:12:23 2018 UTC (5 years, 4 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base,
pkgsrc-2018Q2
Changes since 1.41: +1 -1
lines
Diff to previous 1.41 (colored)
Removed 92 from PGSQL_VERSIONS_ACCEPTED
Revision 1.41 / (download) - annotate - [select for diffs], Mon May 14 20:25:48 2018 UTC (5 years, 4 months ago) by rillig
Branch: MAIN
Changes since 1.40: +52 -2
lines
Diff to previous 1.40 (colored)
Update pkglint to 5.5.11 Changes since 5.5.10: * Read JVMs and compiler languages from mk/* instead of predefined lists. * Support TEST_DEPENDS.
Revision 1.40 / (download) - annotate - [select for diffs], Tue May 1 23:30:11 2018 UTC (5 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.39: +1 -1
lines
Diff to previous 1.39 (colored)
Update pkglint to 5.5.10. Changes since 5.5.9: * Fix wrong pkglint behavior for .include lines that are guarded by corresponding .if exists(...) * A little bit of refactoring, as always.
Revision 1.39 / (download) - annotate - [select for diffs], Sat Apr 28 23:32:52 2018 UTC (5 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.38: +1 -0
lines
Diff to previous 1.38 (colored)
Update pkglint to 5.5.9 Changes since 5.5.8: * Improved support for the "strip" tool, which has a special definition and is not directly connected to the STRIP variable. * Miscellaneous code cleanup and new tests.
Revision 1.38 / (download) - annotate - [select for diffs], Sat Mar 24 14:32:49 2018 UTC (5 years, 6 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2018Q1-base,
pkgsrc-2018Q1
Changes since 1.37: +26 -20
lines
Diff to previous 1.37 (colored)
Update pkglint to 5.5.7 Changes since 5.5.6: * When pkglint warns about files that are accidentally executable, it offers to fix the file permissions. * Warn about ${HOMEPAGE:=repository/}, since the := modifier should only be used with MASTER_SITES. * When the distinfo file is missing, suggest setting NO_CHECKSUM. * Several refactorings.
Revision 1.37 / (download) - annotate - [select for diffs], Sun Mar 4 20:34:33 2018 UTC (5 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.36: +11 -0
lines
Diff to previous 1.36 (colored)
pkgtools/pkglint: update to 5.5.6 Changes since 5.5.5: * Only offer explanations if an explainable diagnostic has actually been logged. * Clean up code. * Improve a few diagnostics. * In any Makefile, treat documented variables as used. This prevents warning about defined but unused variables. * Add support for some variables not previously known to pkglint.
Revision 1.36 / (download) - annotate - [select for diffs], Mon Feb 19 12:40:38 2018 UTC (5 years, 7 months ago) by rillig
Branch: MAIN
Changes since 1.35: +6 -5
lines
Diff to previous 1.35 (colored)
pkgtools/pkglint: update to 5.5.5 Changes since 5.5.3: - Removed check for PERL5_PACKLIST, since it was not fixable by the package author. - Completely rewrote the check for ordering variables in simple package Makefiles. Now it reports the variables in the correct order instead of just saying "this above that" for a few variables. - Lots of code cleanup and documentation.
Revision 1.35 / (download) - annotate - [select for diffs], Sat Jan 27 18:50:36 2018 UTC (5 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.34: +3 -0
lines
Diff to previous 1.34 (colored)
pkgtools/pkglint: Update to 5.5.2 Changes since 5.5.1: * Fixed command line parsing for the --only option. * Improved alignment of variable values in Makefiles. * Code cleanup: better abstraction in the tests.
Revision 1.34 / (download) - annotate - [select for diffs], Sun Jan 7 17:08:15 2018 UTC (5 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.33: +9 -9
lines
Diff to previous 1.33 (colored)
Updated pkglint to 5.4.26. Changes since 5.4.25: * When autofixing a patch, fix the corresponding distinfo file as well. * Properly parse ${VARNAME:[\#]}; the # was interpreted as a comment before. * Don't add unnecessary :Q to PKG_OPTIONS and related variables. * Don't warn about missing manual pages. While Debian and other distributions do this work, pkgsrc keeps the packages as original as possible. * Autofix redundant ".gz" for manual pages in PLISTs.
Revision 1.33 / (download) - annotate - [select for diffs], Tue Jan 2 08:13:16 2018 UTC (5 years, 9 months ago) by maya
Branch: MAIN
Changes since 1.32: +0 -3
lines
Diff to previous 1.32 (colored)
pkglint 5.4.24: remove references to crypto restrictions. Discussed with rillig.
Revision 1.32 / (download) - annotate - [select for diffs], Mon Jan 1 18:04:15 2018 UTC (5 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.31: +3 -0
lines
Diff to previous 1.31 (colored)
Updated pkglint to 5.4.22. Changes since 5.4.21: * Refactoring: moved packages line and linechecks back into main * Fixed panic when autofixing package Makefiles * Removed apache22 * Added a bit of inline documentation
Revision 1.31 / (download) - annotate - [select for diffs], Mon Jan 1 10:23:04 2018 UTC (5 years, 9 months ago) by wiz
Branch: MAIN
Changes since 1.30: +3 -3
lines
Diff to previous 1.30 (colored)
apache22: remove, it was eol'd in June 2017 Remove packages that only work with apache22. Remove apache22 references.
Revision 1.30 / (download) - annotate - [select for diffs], Sun Oct 8 22:31:13 2017 UTC (5 years, 11 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2017Q4-base,
pkgsrc-2017Q4
Changes since 1.29: +1 -0
lines
Diff to previous 1.29 (colored)
Updated pkglint to 5.4.21 Changes since 5.4.20: * Removed obsolete kde3 check * Removed obsolete WindowMaker variables * Removed postgresql91 * Removed teTeX * Removed old Emacs versions 22, 23, 24 * Allow db6 * Allow c++11 in USE_LANGUAGES * New check for GNOME icon themes * Added CHECK_RELRO variables * Refactoring: new package linechecks * Refactoring: regex.Pattern
Revision 1.29 / (download) - annotate - [select for diffs], Fri Sep 29 12:40:28 2017 UTC (6 years ago) by wiz
Branch: MAIN
Changes since 1.28: +3 -3
lines
Diff to previous 1.28 (colored)
emacs22*, emacs23*, emacs24*: remove unmaintained emacs versions As announced in https://mail-index.netbsd.org/pkgsrc-users/2017/09/11/msg025563.html This still leaves emacs20, emacs21, and the current version, emacs25.
Revision 1.28 / (download) - annotate - [select for diffs], Wed Sep 6 16:49:28 2017 UTC (6 years ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2017Q3-base,
pkgsrc-2017Q3
Changes since 1.27: +0 -3
lines
Diff to previous 1.27 (colored)
Remove teTeX* packages and references to them. teTeX was desupported in 2006, and we have texlive in pkgsrc since 2009.
Revision 1.27 / (download) - annotate - [select for diffs], Thu Jul 27 11:21:25 2017 UTC (6 years, 2 months ago) by wiz
Branch: MAIN
Changes since 1.26: +1 -1
lines
Diff to previous 1.26 (colored)
c++11 is valid for USE_LANGUAGES. Bump PKGREVISION.
Revision 1.26 / (download) - annotate - [select for diffs], Wed May 24 19:51:12 2017 UTC (6 years, 4 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2017Q2-base,
pkgsrc-2017Q2
Changes since 1.25: +1 -1
lines
Diff to previous 1.25 (colored)
Removed databases/postgresql91
Revision 1.25 / (download) - annotate - [select for diffs], Sun May 14 14:36:06 2017 UTC (6 years, 4 months ago) by wiz
Branch: MAIN
Changes since 1.24: +3 -3
lines
Diff to previous 1.24 (colored)
Allow db6 in BDB_* variables. Bump PKGREVISION.
Revision 1.24 / (download) - annotate - [select for diffs], Sun Apr 16 22:10:40 2017 UTC (6 years, 5 months ago) by khorben
Branch: MAIN
Changes since 1.23: +0 -2
lines
Diff to previous 1.23 (colored)
Remove references to WINDOWMAKER_{OPTIONS,THEMES} From what I can tell, this is no longer in use.
Revision 1.22.2.1 / (download) - annotate - [select for diffs], Wed Apr 12 17:46:07 2017 UTC (6 years, 5 months ago) by bsiegert
Branch: pkgsrc-2017Q1
Changes since 1.22: +1 -1
lines
Diff to previous 1.22 (colored) next main 1.23 (colored)
Pullup ticket #5247 - requested by sevan pkgtools/pkglint: bugfix Revisions pulled up: - pkgtools/pkglint/Makefile 1.513 - pkgtools/pkglint/files/vardefs.go 1.23 --- Module Name: pkgsrc Committed By: rillig Date: Wed Apr 5 19:17:19 UTC 2017 Modified Files: pkgsrc/pkgtools/pkglint: Makefile pkgsrc/pkgtools/pkglint/files: vardefs.go Log Message: Updated pkglint to 5.4.20. Changes since 5.4.19: * Updated allowed Python versions to include py36.
Revision 1.23 / (download) - annotate - [select for diffs], Wed Apr 5 19:17:19 2017 UTC (6 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.22: +1 -1
lines
Diff to previous 1.22 (colored)
Updated pkglint to 5.4.20. Changes since 5.4.19: * Updated allowed Python versions to include py36.
Revision 1.22 / (download) - annotate - [select for diffs], Sun Jan 29 14:27:48 2017 UTC (6 years, 8 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2017Q1-base
Branch point for: pkgsrc-2017Q1
Changes since 1.21: +1 -1
lines
Diff to previous 1.21 (colored)
Refactored the code into separate packages. No functional changes.
Revision 1.21 / (download) - annotate - [select for diffs], Tue Jan 17 22:37:27 2017 UTC (6 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.20: +227 -14
lines
Diff to previous 1.20 (colored)
Updated pkglint to 5.4.16. Changes since 5.4.15: * updated vardefs from mk/defaults/mk.conf from v1.118 (2006) to v1.269 Gone: * PKG_SUFX * USETBL * PKGSRC_SHOW_PATCH_ERRORMSG * USE_XPKGWEDGE * PKGVULNDIR Adjusted: * USE_GAMESGROUP * BIN_INSTALL_FLAG -> BIN_INSTALL_FLAGS * fixed license parsing to be more realistic (the previous version didn't handle parentheses correctly) * lots of housekeeping * moved some code to separate packages, allowing re-use * separated Line checks into LineChecker type * separated MkLine checks into MkLineChecker type * made Line an interface, for further refactorings
Revision 1.20 / (download) - annotate - [select for diffs], Sun Jan 1 16:41:37 2017 UTC (6 years, 9 months ago) by rillig
Branch: MAIN
Changes since 1.19: +1 -1
lines
Diff to previous 1.19 (colored)
Updated pkglint to 5.4.15. Changes since 5.4.14: * Definitions for CONF_FILES should always come in pairs (pkg/37284)
Revision 1.19 / (download) - annotate - [select for diffs], Tue Dec 13 00:58:07 2016 UTC (6 years, 9 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2016Q4-base,
pkgsrc-2016Q4
Changes since 1.18: +1 -1
lines
Diff to previous 1.18 (colored)
Updated pkglint to 5.4.13. Changes since 5.4.12: * Added check for unintended # comments, especially in HOMEPAGE * Added check for quotes in COMMENT * Fixed hardcoded package versions for PHP, Python, Lua, etc. * Code cleanup in the tests
Revision 1.18 / (download) - annotate - [select for diffs], Mon Nov 14 01:08:23 2016 UTC (6 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.17: +2 -0
lines
Diff to previous 1.17 (colored)
Updated pkglint to 5.4.11. Changes since 5.4.10: * Replaced regular expression with hand-written matching code, since it is 30 times as fast. * Reduced number of syscalls by remembering os.Lstat results and CVS/Entries. * Reduced number of syscalls by querying the current user only once. * Added warning for comparing ${PKGSRC_COMPILER} == "clang", which should rather be ${PKGSRC_COMPILER:Mclang}. * Added variable definitions for NOT_PAX_ASLR_SAFE and NOT_PAX_MPROTECT_SAFE.
Revision 1.17 / (download) - annotate - [select for diffs], Mon Oct 3 12:25:36 2016 UTC (7 years ago) by wiz
Branch: MAIN
Changes since 1.16: +1 -1
lines
Diff to previous 1.16 (colored)
Remove some dead code, python-3.3 is no more.
Revision 1.16 / (download) - annotate - [select for diffs], Tue Sep 6 20:54:21 2016 UTC (7 years ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2016Q3-base,
pkgsrc-2016Q3
Changes since 1.15: +30 -29
lines
Diff to previous 1.15 (colored)
Allow packages to define their own tools using TOOLS_CREATE. Suggested by @jperkin for lang/rust.
Revision 1.15 / (download) - annotate - [select for diffs], Tue Sep 6 19:23:03 2016 UTC (7 years ago) by rillig
Branch: MAIN
Changes since 1.14: +1 -1
lines
Diff to previous 1.14 (colored)
Updated pkglint to 5.4.8. Changes since 5.4.7: * Added cputime as an allowed keyword for UNLIMIT_RESOURCES.
Revision 1.14 / (download) - annotate - [select for diffs], Sun Jul 10 21:24:47 2016 UTC (7 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.13: +658 -658
lines
Diff to previous 1.13 (colored)
Updated pkglint to 5.4.7. Changes since 5.4.6: * Allow conditionals of the form "${var1}" == "${var2}" * Check for indentation of .include directives * Check arbitrarily complex license conditions * General code cleanup
Revision 1.13 / (download) - annotate - [select for diffs], Sun Jul 10 11:37:27 2016 UTC (7 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.12: +23 -2
lines
Diff to previous 1.12 (colored)
Updated pkglint to 5.4.6. Changes since 5.4.5: * Fixed shell command parser to correctly parse redirections * Added type definitions for several variables * Allowed version numbers to be single digits
Revision 1.12 / (download) - annotate - [select for diffs], Sat Jul 9 09:43:48 2016 UTC (7 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.11: +17 -17
lines
Diff to previous 1.11 (colored)
Updated pkglint to 5.4.4. Changes since 5.4.3: * Improved detection for undocumented patches from Git * Added warning about unnecessary space after variable names * Lots of internal housekeeping
Revision 1.11 / (download) - annotate - [select for diffs], Thu Jul 7 12:09:27 2016 UTC (7 years, 2 months ago) by rillig
Branch: MAIN
Changes since 1.10: +47 -26
lines
Diff to previous 1.10 (colored)
Updated pkglint to 5.4.3. Changes since 5.4.2: * Variables like ${VAR_${OTHER_VAR}} are no longer checked for use/define mismatch * The check for plural variable names has been removed * The type of variables called *DESTDIR is no longer guessed to be a directory name * The check for unknown shell commands is disabled in Makefile sections that depend on OPSYS * The experimental hand-written shell parser has been replaced with a Yacc-generated one * Meta packages don't need a LICENSE * When PKGNAME is defined in terms of ${DISTNAME:S/from/to/:tl}, more modifiers (like :tl) are handled properly * When the MAINTAINER or OWNER of a package is not the current user, a warning is printed for modified files * The check for share/applications/*.desktop has been disabled, since pkglint would need to inspect the file's actual contents to see whether desktopdb.mk must be included or not * SUBST_CLASSES may also be SUBST_CLASSES.NetBSD * Loosened the usage restrictions for several variables, e.g. many variables that may be appended in a Makefile may also be set unconditionally * PKG_OPTIONS_VAR must be of the form PKG_OPTIONS.*
Revision 1.10 / (download) - annotate - [select for diffs], Sun Jun 19 18:03:29 2016 UTC (7 years, 3 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q2-base,
pkgsrc-2016Q2
Changes since 1.9: +0 -1
lines
Diff to previous 1.9 (colored)
USE_CROSSBASE is deprecated, remove it. Bump version.
Revision 1.9 / (download) - annotate - [select for diffs], Fri Jun 10 19:42:42 2016 UTC (7 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.8: +8 -7
lines
Diff to previous 1.8 (colored)
Updated pkglint to 5.4.1. Changes since 5.4.0: * PKG_SKIP_REASON is no longer marked as deprecated, since it still has its value * When PKG_SKIP_REASON is defined depending on OPSYS, suggest to use NOT_FOR_PLATFORM instead. * Check for ROOT_USER/ROOT_GROUP being used in special file permissions; using REAL_ROOT_USER/REAL_ROOT_GROUP is better.
Revision 1.8 / (download) - annotate - [select for diffs], Sun Jun 5 11:24:32 2016 UTC (7 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.7: +33 -31
lines
Diff to previous 1.7 (colored)
Updated pkglint to 5.4.0. Changes since 5.3.7: * Replaced the -D... debug options with a single -d * Omitted duplicate diagnostics * Marked the :Q operator unnecessary for some variables * Improved detection of whether bsd.prefs.mk has been included, which fixed unwarranted warnings about load time evaluation of some variables like ${ECHO} and ${SED} * Improved detection for $(VAR) with round parentheses * Fixed allowed locations for several variables * Improved detection for used variables (still not perfect) * Added warning that MASTER_SITES should not be used in HOMEPAGE * Fixed warning about manual patches not being in distinfo * Added a check for missing MASTER_SITE_* variables * Added a check for unfinished url2pkg work * Fixed several wrong warnings
Revision 1.7 / (download) - annotate - [select for diffs], Sun Apr 10 16:59:37 2016 UTC (7 years, 5 months ago) by joerg
Branch: MAIN
Changes since 1.6: +0 -1
lines
Diff to previous 1.6 (colored)
USE_DESTDIR is gone.
Revision 1.6 / (download) - annotate - [select for diffs], Sun Mar 13 13:40:10 2016 UTC (7 years, 6 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2016Q1-base,
pkgsrc-2016Q1
Changes since 1.5: +9 -9
lines
Diff to previous 1.5 (colored)
Updated pkglint to 5.3.6. Changes since 5.3.5: * Warn about !empty(${VARNAME}), which should be !empty(VARNAME) * Distinguish ${VARNAME} == "value" and ${VARNAME:Mpattern} * Corrected isQuotingNecessary for some variable types * Generally, parse files from mk/, since they define variables used by packages. This avoids wrong warnings about possible spelling mistakes. * Warn about $(VARNAME) (with parentheses instead of braces) * Warn about missing final @ in ${VAR:@var@...@} * Updated list of hardware architectures * Enabled CPU profiling on NetBSD
Revision 1.5 / (download) - annotate - [select for diffs], Sun Jan 31 17:18:54 2016 UTC (7 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.4: +26 -8
lines
Diff to previous 1.4 (colored)
Updated pkglint to 5.3.5 Changes since 5.3.4: * Added parser for Makefile conditionals * Variables that are matched using the :M modifier are checked whether the matched value is sensible * Reworded and explained warning for variable ordering in packages * Fixed bug in Tree.String * Fixed a few variable types
Revision 1.4 / (download) - annotate - [select for diffs], Tue Jan 12 01:02:49 2016 UTC (7 years, 8 months ago) by rillig
Branch: MAIN
Changes since 1.3: +278 -227
lines
Diff to previous 1.3 (colored)
Updated pkglint to 5.3 Changes since 5.2.2.2: * Makefile variables The warnings about missing permissions sound more natural than before and give a hint for alternative operators (e.g. set-default instead of append), or an alternative file where setting this variable is allowed instead (e.g. PKGREVISION may not be set in Makefile.common, but in Makefile it is ok). Warnings about "unknown" allowed permissions are not shown anymore, since they didn't provide any benefit. To see them again, pkglint must be run with the -Dunchecked option. User-defined variables may be used by builtin.mk. They may also be used during load time, not only during run time, under the assumption that in most cases the bsd.prefs.mk has already been loaded. Some individual variables may be defined or used in places where this was not allowed before. CHECK_BUILTIN.*, BUILDLINK_TARGETS, TOOLS_DEPENDS.*, BUILDLINK_DEPMETHOD.*, SUBST_CLASSES. A new parser for Makefile expressions detects and reports more mistakes than bmake itself. Currently it is only used to check the basic syntax; more applications are possible. * PLIST In PLIST files, conditionals of the form ${PLIST.*} are recognized and are not part of the pathname. This allows pkglint to better check for missing manual pages and correctly sorted PLIST files. In --autofix mode, pkglint can sort PLIST files, which makes these rather annoying warnings easy to fix. No more warnings for man pages whose filename doesn't match exactly the section, e.g. man/man3/exit.3c. * Patches The code for checking patch files has been completely rewritten, so that it is easier understandable and well-structured. As an additional benefit, it also became faster. Support for context diffs has been dropped to a minimum, since they are not popular anymore. Pkglint no longer warns about missing trailing whitespace in a line, since all patch programs can handle these lines. It also doesn't request empty lines between multiple diffs in a single file, since that is simply not necessary. Pkglint is picky when a patch file continues after the diff with some text that still looks like a diff, since that means the patch doesn't do what it looks like on first sight (example: audio/faad2/patches/patch-au). * Distinfo When a patch file listed in distinfo cannot be found in the filesystem, this is reported clearly instead of complaining about missing SHA512 hashes (example: audio/libopus). The inter-package distinfo check that verifies whether a distfile has different hashes has been enabled. It had been disabled before, but unintentionally so. * Misc - The check for COMMENT has been updated to reflect the changed default value from url2pkg. - BUILDLINK_API_DEPENDS.* may be set in buildlink3.mk, even if the package is not the current one. (The other variables may be only set for the current package.) - In shell commands, the escape sequence \. (and similar ones, which are often seen in sed(1) commands) no longer produces a warning, since the different shells handle these escape sequences consistently. (It is the echo(1) implementations that actually differ, therefore this warning was superfluous.) - Compiler flags in backticks (typically `pkg-config --cflags`) are properly recognized. - Internal pkglint errors when parsing shell commands have been fixed. - No more warnings about PKGCONFIG_FILE.* being defined but unused. - Dependencies of the form pkgbase>=1.0<5.0 are recognized. - Diagnostics use quotes more often to indicate the placeholders. - The type of GENERATE_PLIST has been changed from List of ShellWord to ShellCommands, since that is what the variable is really about. - The type ShellCommand used to mean "a shell command line in a Makefile", which was confusing. Now it means what the name says, which reduces the wrong warnings for variables like CC (example: x11/kdebase3/options.mk). - Improved buildlink3.mk checks to generate more helpful diagnostics. - Fixed the parsing of dependency patterns, so that all but the most exotic ones are properly recognized. - Fixed the parsing of shell variables of the form ${var%.c}. - Updated the check for the default COMMENT from url2pkg. - Many more small improvements. - Performance has improved again, though only a little bit. - Unit test coverage has increased from 64.2 % to 78.9 %. This fixes most of the points mentioned in PR pkg/46570.
Revision 1.3 / (download) - annotate - [select for diffs], Sat Dec 5 10:09:00 2015 UTC (7 years, 10 months ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2015Q4-base,
pkgsrc-2015Q4
Changes since 1.2: +672 -672
lines
Diff to previous 1.2 (colored)
Code cleanup: converted ALL_CAPS to camelCase
Revision 1.2 / (download) - annotate - [select for diffs], Sat Dec 5 08:54:08 2015 UTC (7 years, 10 months ago) by rillig
Branch: MAIN
Changes since 1.1: +2 -2
lines
Diff to previous 1.1 (colored)
Updated pkglint to 5.2. Changes since 5.1: * Fixed distinfo check for unrecorded patch files (thanks, wiz) * Command line options parser accepts abbreviations (--a instead of --autofix) * Realistic unit tests using temporary files * General code cleanup (using gometalinter)
Revision 1.1 / (download) - annotate - [select for diffs], Wed Nov 25 13:29:07 2015 UTC (7 years, 10 months ago) by rillig
Branch: MAIN
Updated pkglint to 5.0 Notable changes include: * The whole code has been rewritten in Go * It is much faster, especially in recursive mode * The code has unit tests, providing examples of use * Some new explanations for existing warnings * Some adjustments to previous warnings