Commit graph

1369 commits

Author SHA1 Message Date
rillig
51008f3dc3 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.
2018-01-27 18:50:36 +00:00
rillig
31a3a6b80c pkglint: Update to 5.5.1
Changes since 5.5:

* Allow filtering log messages by keyword (--only)
* In --autofix and --show-autofix mode, show only fixable diagnostics
* When called with --source, show the source below the diagnostics
* Don't warn about USE_LANGUAGES in ../../mk/compiler.mk
* Fix autofix for .gz in PLIST
2018-01-13 23:56:14 +00:00
rillig
5e7481dcd2 pkglint: Update to 5.5
Changes since 5.4.26:

SUBST blocks are now checked correctly even if they contain conditionals
like .if ... .elif ... .endif.

AUTO_MKDIRS is only suggested for those directories that actually appear
in the PLIST since other directories are not affected by this variable.
2018-01-10 00:39:52 +00:00
rillig
902c8a49a5 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.
2018-01-07 17:08:15 +00:00
rillig
f726ad139c Updated pkglint to 5.4.25.
Changes since 5.4.24:

* More specific warning for "exitcode with pipe shell commands"
* Don't warn that the echo in "echo | sed" could fail
* Allow packages to define custom make targets
* Don't warn about a misplaced LICENSE when a package doesn't define it
* Skip .git directories
* Reduce number of hicolor-icon-theme error messages in PLIST files
* Remove MKCRYPTO, USE_CRYPTO, CRYPTO variable definitions
2018-01-07 01:13:21 +00:00
maya
6e5f1de0c2 pkglint 5.4.24: remove references to crypto restrictions.
Discussed with rillig.
2018-01-02 08:13:15 +00:00
rillig
e93a88ba30 Updated pkglint to 5.4.23.
Changes since 5.4.22:
Only autofix PLIST sorting in simple cases. Before this version, pkglint
sorted the PLIST even when it contained unresolved variable references like
${IMAKE_MAN_DIR}, which resulted in strange and unintuitive orders. These
complicated files are left for human inspection.
2018-01-01 21:55:36 +00:00
rillig
e012ab11fa 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
2018-01-01 18:04:15 +00:00
wiz
67ea766c4c apache22: remove, it was eol'd in June 2017
Remove packages that only work with apache22.
Remove apache22 references.
2018-01-01 10:23:04 +00:00
ryoon
c0c6815977 Some files are moved. Fix build 2017-10-17 03:32:28 +00:00
rillig
ccb81e9920 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
2017-10-08 22:31:13 +00:00
wiz
6b593e536e pkglint*: Start sentence with a capital letter
From Thomas Orgis in private mail.
2017-10-02 14:41:21 +00:00
wiz
eef80df883 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.
2017-09-29 12:40:26 +00:00
wiz
44faa0cdcd Remove teTeX* packages and references to them.
teTeX was desupported in 2006, and we have texlive in pkgsrc since 2009.
2017-09-06 16:49:21 +00:00
wiz
ea89f938a8 c++11 is valid for USE_LANGUAGES.
Bump PKGREVISION.
2017-07-27 11:21:25 +00:00
adam
f7716a4492 Removed databases/postgresql91 2017-05-24 19:51:12 +00:00
wiz
0872a7baa8 Allow db6 in BDB_* variables.
Bump PKGREVISION.
2017-05-14 14:36:06 +00:00
khorben
6a95312dc6 Remove references to WINDOWMAKER_{OPTIONS,THEMES}
From what I can tell, this is no longer in use.
2017-04-16 22:10:40 +00:00
rillig
1dacef077c Updated pkglint to 5.4.20.
Changes since 5.4.19:
* Updated allowed Python versions to include py36.
2017-04-05 19:17:19 +00:00
rillig
a0818b689b Updated pkglint to 5.4.19.
Changes since 5.4.18:

* Added generated Go yacc source files to CVS, since starting with Go 1.8
  the yacc tool is no longer part of the core distribution. The dependency
  on yacc would pull in all the Go tools, which are quite a few, and some
  of these do not currently build since they depend on go-crypto. See
  https://mail-index.netbsd.org/tech-pkg/2017/03/17/msg017900.html
2017-03-17 22:43:34 +00:00
bsiegert
f8ac46fcc6 pkglint 5.4.18.
Changes:
 - go tool yacc -> goyacc to fix building with Go 1.8 (PR pkg/52081).
2017-03-16 20:03:22 +00:00
rillig
0681838a82 Removed expecter.go, which had been moved to files/textproc. 2017-01-29 14:30:26 +00:00
rillig
5bbfc26161 Refactored the code into separate packages. No functional changes. 2017-01-29 14:27:48 +00:00
rillig
7e20045b7f Updated pkglint to 5.4.17.
Changes since 5.4.16:

* allow multiple definitions for MASTER_SITES in the package Makefile,
  without triggering a warning about wrong ordering.
  See https://mail-index.netbsd.org/tech-pkg/2017/01/18/msg017698.html
2017-01-18 23:05:43 +00:00
rillig
1548b3ba55 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
2017-01-17 22:37:27 +00:00
rillig
54117d3486 Updated pkglint to 5.4.15.
Changes since 5.4.14:

* Definitions for CONF_FILES should always come in pairs (pkg/37284)
2017-01-01 16:41:37 +00:00
rillig
277fb0b88c Cleaned up and refactored code.
The getopt and pkgver code have been extracted to separate packages to make
them reusable.

Several other functions have been moved to make the structure easier to
understand:

* dir.go and main.go have been moved to pkglint.go
* utility functions from pkglint.go have been moved to mkline.go

Now pkglint.go contains only high-level code.
2017-01-01 15:15:47 +00:00
rillig
31e4b26be2 Updated pkglint to 5.4.14.
Changes since 5.4.13:

* Pkglint can fix $(VARIABLES) in parentheses to ${VARIABLES} in braces
  automatically
2016-12-17 13:35:32 +00:00
rillig
ca7de210ff 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
2016-12-13 00:58:06 +00:00
rillig
055bab28e4 Updated pkglint to 5.4.12.
Changes since 5.4.11:

* warn when PKGSRC_COMPILER is compared with "==", since it may be a chain
  of compilers
* warn about listing Python .egg-info files directly in PLIST files, since
  lang/python/egg.mk takes care of this
* code cleanup: unify Error{0,1,2,3} into Errorf to make understanding the
  code easier; use interface{} for MkLine data; use regular expression
  instead of handwritten matching code, since one line is easier to read
  than 50
2016-12-04 15:28:36 +00:00
rillig
ebbdc6dad9 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.
2016-11-14 01:08:23 +00:00
rillig
95724ea46c Updated pkglint to 5.4.10.
Changes since 5.4.9:

* Check for mismatch between conditional and unconditional includes
  of other files (mostly depending on PKG_OPTIONS or OPSYS)
* Check that PLIST files contain "man" instead of "${PKGMANDIR}"
2016-11-01 21:40:25 +00:00
wiz
2ea9b05c83 Remove some dead code, python-3.3 is no more. 2016-10-03 12:25:36 +00:00
reed
f430510cfb pkglint has hardcoded php55 referenced a couple times.
That package was removedi and caused pkglint errors like:
ERROR: ../../lang/php/ext.mk:25: Cannot read
"./../../lang/php55/Makefile.common".

So update to later php56.

I don't understand why the ChecklinesDistinfo function in distinfo.go
has an exception for the php patches directory but changed there too.

I received an okay on packages@ list.

Note that the make check for the pkglint package failed for me
but the pkglint worked for me in my tests of some php using packages.

Increase version of pkglint.
2016-09-30 18:27:37 +00:00
rillig
14dd5b2a97 Updated pkglint to 5.4.9.
Changes since 5.4.8:

* Disallow lib/charset.alias in PLIST. This file may only be installed
  by converters/libiconv. (That package is currently broken, since
  it only touches that file when installing from source, not from a
  binary package. But pkglint is prepared for it to be fixed.)
2016-09-17 23:58:04 +00:00
rillig
cb4a44d998 Allow packages to define their own tools using TOOLS_CREATE.
Suggested by @jperkin for lang/rust.
2016-09-06 20:54:21 +00:00
rillig
063810441a Updated pkglint to 5.4.8.
Changes since 5.4.7:

* Added cputime as an allowed keyword for UNLIMIT_RESOURCES.
2016-09-06 19:23:03 +00:00
rillig
2498c7154b 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
2016-07-10 21:24:47 +00:00
rillig
c1acc57ca0 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
2016-07-10 11:37:27 +00:00
rillig
9c9916dff2 Updated pkglint to 5.4.5.
Changes since 5.4.4:

* Removed autofix for variables in BUILDLINK_TREE, since that change
  affects multiple variables in the file and therefore cannot be done
  automatically
* Fixed PLIST sorting to not lose lines
2016-07-09 13:16:43 +00:00
rillig
bc46f036d4 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
2016-07-09 09:43:48 +00:00
rillig
d8d8a2c0be 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.*
2016-07-07 12:09:26 +00:00
wiz
712ddf30b3 USE_CROSSBASE is deprecated, remove it.
Bump version.
2016-06-19 18:03:29 +00:00
rillig
baecbd3b40 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.
2016-06-10 19:42:41 +00:00
rillig
aa6acd9ffd 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
2016-06-05 11:24:32 +00:00
joerg
7c420efe84 USE_DESTDIR is gone. 2016-04-10 16:59:37 +00:00
rillig
cc0455efbd 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
2016-03-13 13:40:10 +00:00
rillig
4e2f61b1ea 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
2016-01-31 17:18:54 +00:00
rillig
3998949c17 Updated pkglint to 5.3.4
Changes since 5.3.3:

* Added some unit tests
* Fixed the Makefile parser to recognize seldomly-used variable modifiers
  like :S///S/// without intermediate colon or :ts\n
* Cleaned up some unit tests
* Combined diagnostics that span multiple lines into single-line ones
2016-01-27 21:55:50 +00:00
rillig
9d83eaf9b7 Updated pkglint to 5.3.3
Changes since 5.3.2:

* The -e, -fs, -F options are advertised even when no warnings and errors
  occurred. In such a case, there were only notes, and some of these can
  also be autofixed.
* Special handling for autoconf{,213} tools, since mentioning these in
  USE_TOOLS makes available more than just one tool command.
* Downgrades from 1.0nb17 to 1.0 are no longer flagged as warnings.
* Files in /wip/mk/ are scanned like all other files, to prevent warnings
  about undefined or unused variables.
2016-01-26 21:10:42 +00:00