The NetBSD Project

CVS log for pkgsrc/pkgtools/pkglint/files/mklexer.go

[BACK] Up to [] / pkgsrc / pkgtools / pkglint / files

Request diff between arbitrary revisions

Default branch: MAIN

Revision 1.10 / (download) - annotate - [select for diffs], Sun Aug 2 13:27:17 2020 UTC (7 weeks ago) by rillig
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

pkgtools/pkglint: update to 20.2.6

Changes since 20.2.5:

Some selected absolute paths, such as /etc/passwd, /etc/shadow and
/etc/hosts are allowed in patch files.  Other files in /etc should still
use PKG_SYSCONFDIR, to keep the package portable between platforms and
also in unprivileged mode. (Fixes PR pkg/55524.)

Absolute pathnames are also allowed in C-style end-of-line comments
(fixes PR pkg/55516) and in continuations of C-style block comments
(fixes PR pkg/55524).

The explanation for make's :ts modifier has been adjusted to the 2020
bmake update.  The modifier :ts\040 is now interpreted as octal, as
opposed to decimal.

Revision 1.9 / (download) - annotate - [select for diffs], Wed Jul 1 13:17:41 2020 UTC (2 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.8: +16 -16 lines
Diff to previous 1.8 (colored)

pkgtools/pkglint: update to 20.2.1

Changes since 20.2.0:

Don't warn about a possibly redundant PKGNAME=${DISTNAME} assignment if
PKGNAME is defined somewhere else in the package Makefile.

Warn if NO_CONFIGURE=yes and REPLACE_* are combined.

Suggest to replace ${VAR:@l@-l${l}@} with the simpler ${VAR:S,^,-l,},
as well as ${VAR:@l@${l}suffix@} with the simpler ${VAR:=suffix}.

Allow lua in CATEGORIES.

Revision 1.8 / (download) - annotate - [select for diffs], Sun Jun 7 15:49:23 2020 UTC (3 months, 2 weeks ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2020Q2-base, pkgsrc-2020Q2
Changes since 1.7: +0 -1 lines
Diff to previous 1.7 (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

Allow BUILDLINK_PREFIX.* to be used in helper files.  Especially for
programming language packages, files like often include and therefore may refer to the BUILDLINK_PREFIX of this

Warn about redundant BUILDLINK_API_VERSION restrictions.  Previously, the
check had only been enabled if the operators from the default dependency
pattern ( 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.7 / (download) - annotate - [select for diffs], Sat Jan 4 19:53:14 2020 UTC (8 months, 2 weeks ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2020Q1-base, pkgsrc-2020Q1
Changes since 1.6: +3 -3 lines
Diff to previous 1.6 (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.6 / (download) - annotate - [select for diffs], Fri Dec 13 01:39:23 2019 UTC (9 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2019Q4-base, pkgsrc-2019Q4
Changes since 1.5: +20 -13 lines
Diff to previous 1.5 (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.5 / (download) - annotate - [select for diffs], Sun Dec 8 22:03:38 2019 UTC (9 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.4: +8 -1 lines
Diff to previous 1.4 (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.4 / (download) - annotate - [select for diffs], Sun Dec 8 00:06:38 2019 UTC (9 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.3: +147 -45 lines
Diff to previous 1.3 (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 <> like MACHINE_ARCH, which
are always in scope, and those from mk/defaults/mk.conf, which only come
into scope later, after 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

When a package sets a default value for a user-settable variable (which
is something that should not happen anyway), it should .include 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.3 / (download) - annotate - [select for diffs], Mon Dec 2 23:32:09 2019 UTC (9 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.2: +1 -1 lines
Diff to previous 1.2 (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

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

Revision 1.2 / (download) - annotate - [select for diffs], Sat Nov 30 20:35:11 2019 UTC (9 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.1: +92 -31 lines
Diff to previous 1.1 (colored)

pkgtools/pkglint: update to 19.3.12

Changes since 19.3.11:

The command line option -Wstyle has been removed since it didn't have
any effect.

License names may contain underscores. This fixes 3 parse errors and 2
wrong notes about seemingly unused licenses.

The parser for Makefile variables has been improved for some edge cases.
The :M and :N modifiers behave surprisingly when they contain unbalanced
parentheses or braces. Pkglint now parses them in the same way as bmake,
but doesn't warn since these cases are not actually used in pkgsrc.

Revision 1.1 / (download) - annotate - [select for diffs], Wed Nov 27 22:10:07 2019 UTC (9 months, 3 weeks ago) by rillig
Branch: MAIN

pkgtools/pkglint: update to 19.3.11

Changes since 19.3.10:

The check for 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

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

CVSweb <>