]>
Savannah Git Hosting - gnulib.git/log
Dmitry Selyutin [Thu, 11 Jan 2018 19:16:42 +0000 (22:16 +0300)]
dummy singleton; update module hash and properties
Dmitry Selyutin [Sun, 7 Jan 2018 20:19:07 +0000 (23:19 +0300)]
generic cleanup; bug fixes; gnulib-comp generator
In order to implement correct gnulib-comp.m4 generation, the whole
conditional dependencies calculation algorithm had to be rewritten.
This patch fixes transitive closure algorithm so that it handles all
conditions correctly. Most of the transitive closure functionality was
separated into a standalone TransitiveClosure class to provide a fast
access to transitive closure results (thus incorporating almost all
functionality of the pygnulib.module.Database class).
The transitive closure is usually performed twice: the base one checks
dependencies for the base set of modules, while the full one also takes
the corresponding tests into account. A standalone Database class was
created to perform both closures in one shot and provide an easy access
to all required module and file lists. This allowed to incorporate some
code from the main script: dummy module handling, libtests.a presense,
module and file lists processing.
Yet another small change is that there is a special DummyModule object,
representing the well-known gnulib dummy module. It was created since
the original gnulib dummy module is unlikely to change quite often, so
it acts like special placeholder value.
Finally the naming convention was changed to longer names again.
Bruno Haible [Thu, 28 Dec 2017 23:29:23 +0000 (00:29 +0100)]
gnulib-tool: Make --conditional-dependencies work better.
Reported by Dmitry Selyutin <ghostman.sd@gmail.com>.
* gnulib-tool (Options): Don't reject the combination of
--conditional-dependencies with --with-tests.
(func_emit_autoconf_snippets): Add argument referenceable_modules.
Don't reference $modules.
(func_import, func_create_testdir): Pass it.
Dmitry Selyutin [Tue, 26 Dec 2017 20:32:00 +0000 (23:32 +0300)]
parser: fix non-import options
Dmitry Selyutin [Tue, 26 Dec 2017 20:30:51 +0000 (23:30 +0300)]
module: database refactoring; consistent hashes
Dmitry Selyutin [Wed, 20 Dec 2017 21:57:56 +0000 (00:57 +0300)]
module: module database implementation
Dmitry Selyutin [Wed, 20 Dec 2017 17:07:49 +0000 (20:07 +0300)]
generator: change base class name
Dmitry Selyutin [Sun, 17 Dec 2017 20:06:10 +0000 (23:06 +0300)]
miscellaneousfixes; po files and gnulib-cache generation
Dmitry Selyutin [Mon, 11 Dec 2017 22:01:54 +0000 (01:01 +0300)]
library Makefile generator
Dmitry Selyutin [Tue, 5 Dec 2017 18:13:16 +0000 (21:13 +0300)]
vfs: eliminate weird pylint warning
Dmitry Selyutin [Tue, 5 Dec 2017 18:12:50 +0000 (21:12 +0300)]
module: gnumake support; code cleanup
Dmitry Selyutin [Mon, 4 Dec 2017 16:58:34 +0000 (19:58 +0300)]
module: nested automake conditionals workaround
Dmitry Selyutin [Mon, 4 Dec 2017 16:46:20 +0000 (19:46 +0300)]
module: unconditional automake snippet
Dmitry Selyutin [Sun, 3 Dec 2017 15:54:05 +0000 (18:54 +0300)]
pygnulib.py: bug fixes; explicit options list
Dmitry Selyutin [Sun, 3 Dec 2017 15:53:15 +0000 (18:53 +0300)]
config: fix po_domain option
Dmitry Selyutin [Sun, 3 Dec 2017 15:52:12 +0000 (18:52 +0300)]
config: rename avoid option into avoids
Dmitry Selyutin [Sun, 3 Dec 2017 15:11:18 +0000 (18:11 +0300)]
generator: command-line invocation generator
Dmitry Selyutin [Sun, 3 Dec 2017 15:04:58 +0000 (18:04 +0300)]
config: gnumake option support
Dmitry Selyutin [Sun, 3 Dec 2017 14:34:56 +0000 (17:34 +0300)]
parser: fix naming for private constants
Dmitry Selyutin [Fri, 1 Dec 2017 21:45:06 +0000 (00:45 +0300)]
vfs: use absolute paths during backup
Dmitry Selyutin [Fri, 1 Dec 2017 21:42:30 +0000 (00:42 +0300)]
pygnulib.py: support all copy modes
Dmitry Selyutin [Fri, 1 Dec 2017 21:42:08 +0000 (00:42 +0300)]
vfs: relative/absolute paths; relative symlinks
Dmitry Selyutin [Fri, 1 Dec 2017 07:26:13 +0000 (10:26 +0300)]
support multiple override directories
Dmitry Selyutin [Thu, 30 Nov 2017 20:10:59 +0000 (23:10 +0300)]
pygnulib.py: support basic file actions subset
Dmitry Selyutin [Thu, 30 Nov 2017 19:53:18 +0000 (22:53 +0300)]
parser: group miscellaneous options in dict
Dmitry Selyutin [Thu, 30 Nov 2017 19:52:30 +0000 (22:52 +0300)]
vfs: standalone filesystem functions
Dmitry Selyutin [Sun, 22 Oct 2017 20:57:55 +0000 (23:57 +0300)]
module: __enter__ and __exit__ methods
Dmitry Selyutin [Sun, 22 Oct 2017 20:56:20 +0000 (23:56 +0300)]
module: reorder methods
Dmitry Selyutin [Sun, 22 Oct 2017 20:55:25 +0000 (23:55 +0300)]
generator: __enter__ and __exit__ methods
Dmitry Selyutin [Sun, 22 Oct 2017 20:49:00 +0000 (23:49 +0300)]
config: __enter__ and __exit__ methods
Dmitry Selyutin [Sun, 22 Oct 2017 20:46:08 +0000 (23:46 +0300)]
vfs: base VFS __enter__ and __exit__ methods
Dmitry Selyutin [Sun, 22 Oct 2017 20:25:39 +0000 (23:25 +0300)]
vfs: lookup: freestanding again; return VFS
Dmitry Selyutin [Sun, 22 Oct 2017 20:18:12 +0000 (23:18 +0300)]
module: simplify file table generation
Dmitry Selyutin [Sun, 22 Oct 2017 20:13:50 +0000 (23:13 +0300)]
style: prefer using a single underscore
Dmitry Selyutin [Sun, 22 Oct 2017 19:43:46 +0000 (22:43 +0300)]
generator: simplify InitMacroHeader iterator
Dmitry Selyutin [Sun, 22 Oct 2017 19:43:04 +0000 (22:43 +0300)]
fix pylint warnings
Dmitry Selyutin [Sun, 22 Oct 2017 17:04:06 +0000 (20:04 +0300)]
vfs: basic file operations
Dmitry Selyutin [Sun, 22 Oct 2017 16:46:06 +0000 (19:46 +0300)]
vfs: __contains__ is a part of base VFS
Dmitry Selyutin [Sun, 22 Oct 2017 16:45:38 +0000 (19:45 +0300)]
vfs: base and full prefix separation
Dmitry Selyutin [Sun, 22 Oct 2017 16:43:33 +0000 (19:43 +0300)]
config: copymode, local_copymode, copyrights
Dmitry Selyutin [Sun, 22 Oct 2017 09:21:41 +0000 (12:21 +0300)]
pygnulib.py: simplify prefix table
Dmitry Selyutin [Sun, 22 Oct 2017 09:18:36 +0000 (12:18 +0300)]
vfs: implement Project.mkdir method
Dmitry Selyutin [Fri, 20 Oct 2017 20:03:09 +0000 (23:03 +0300)]
vfs: return path/state upon lookup
Dmitry Selyutin [Fri, 20 Oct 2017 17:42:25 +0000 (20:42 +0300)]
vfs: remove backup indirection layer
Dmitry Selyutin [Fri, 20 Oct 2017 17:41:21 +0000 (20:41 +0300)]
vfs: make patch path a property
Dmitry Selyutin [Fri, 20 Oct 2017 17:24:17 +0000 (20:24 +0300)]
config: aggregate all options
Dmitry Selyutin [Fri, 20 Oct 2017 14:06:07 +0000 (17:06 +0300)]
pygnulib.py: use project VFS
Dmitry Selyutin [Fri, 20 Oct 2017 14:05:21 +0000 (17:05 +0300)]
vfs: split base class into base and project
Dmitry Selyutin [Fri, 20 Oct 2017 07:09:58 +0000 (10:09 +0300)]
vfs: (stream, path) instead of (path, type)
Dmitry Selyutin [Fri, 20 Oct 2017 07:03:06 +0000 (10:03 +0300)]
vfs: fix copy-paste bug
Dmitry Selyutin [Fri, 20 Oct 2017 06:58:06 +0000 (09:58 +0300)]
vfs: per-instance patch binary path
Dmitry Selyutin [Thu, 19 Oct 2017 07:11:05 +0000 (10:11 +0300)]
pygnulib.py: instantiate root and local VFS
Dmitry Selyutin [Thu, 19 Oct 2017 07:10:13 +0000 (10:10 +0300)]
vfs: integrate file operations into the base VFS
Dmitry Selyutin [Wed, 18 Oct 2017 07:52:27 +0000 (10:52 +0300)]
pygnulib.py: more file lists; old files <= cache
Dmitry Selyutin [Wed, 18 Oct 2017 07:51:02 +0000 (10:51 +0300)]
vfs: remove strange doc string
Dmitry Selyutin [Tue, 17 Oct 2017 21:13:50 +0000 (00:13 +0300)]
config: additional checks and better validation
Dmitry Selyutin [Tue, 17 Oct 2017 21:09:46 +0000 (00:09 +0300)]
vfs: normalize paths
Dmitry Selyutin [Tue, 17 Oct 2017 20:44:42 +0000 (23:44 +0300)]
vfs: rename 'kwargs' argument to 'table'
Dmitry Selyutin [Tue, 17 Oct 2017 19:26:03 +0000 (22:26 +0300)]
vfs: simplify code; pure virtual operations
Dmitry Selyutin [Sun, 8 Oct 2017 19:08:56 +0000 (22:08 +0300)]
vfs: remove unused variable inside base VFS
Dmitry Selyutin [Sun, 8 Oct 2017 15:52:52 +0000 (18:52 +0300)]
vfs: simplify table handling
Dmitry Selyutin [Wed, 4 Oct 2017 20:26:22 +0000 (23:26 +0300)]
vfs: use "root" argument instead of "gnulib"
Dmitry Selyutin [Wed, 4 Oct 2017 20:10:29 +0000 (23:10 +0300)]
vfs: discard config module dependency
Dmitry Selyutin [Wed, 4 Oct 2017 19:58:49 +0000 (22:58 +0300)]
vfs: implement lookup function
Dmitry Selyutin [Wed, 4 Oct 2017 19:54:35 +0000 (22:54 +0300)]
vfs: do not raise error on non-existent files
Dmitry Selyutin [Wed, 4 Oct 2017 18:10:55 +0000 (21:10 +0300)]
vfs: rename filesystem to vfs
Dmitry Selyutin [Tue, 3 Oct 2017 17:59:41 +0000 (20:59 +0300)]
pygnulib.py: fix verbosity level check for notices
Dmitry Selyutin [Tue, 3 Oct 2017 07:52:48 +0000 (10:52 +0300)]
pygnulib.py: old and new files generation
Dmitry Selyutin [Tue, 3 Oct 2017 07:44:38 +0000 (10:44 +0300)]
pygnulib.py: force cache invocation for some keys
Dmitry Selyutin [Tue, 3 Oct 2017 07:43:57 +0000 (10:43 +0300)]
config: ignore non-existent cache files
Dmitry Selyutin [Tue, 3 Oct 2017 07:42:52 +0000 (10:42 +0300)]
filesystem: check if name exists (__contains__)
Dmitry Selyutin [Sun, 1 Oct 2017 17:29:47 +0000 (20:29 +0300)]
pygnulib.py: determine the final file lists
Dmitry Selyutin [Sun, 1 Oct 2017 17:29:13 +0000 (20:29 +0300)]
pygnulib.py: fetch ac_version if not present
Dmitry Selyutin [Sun, 1 Oct 2017 17:28:10 +0000 (20:28 +0300)]
pygnulib.py: print main and tests modules iff present
Dmitry Selyutin [Sun, 1 Oct 2017 17:25:50 +0000 (20:25 +0300)]
module: fix dummy_required helper
Dmitry Selyutin [Sun, 1 Oct 2017 17:25:06 +0000 (20:25 +0300)]
config: fix "local" key
Dmitry Selyutin [Fri, 29 Sep 2017 19:46:51 +0000 (22:46 +0300)]
module: filelist helper
Dmitry Selyutin [Fri, 29 Sep 2017 19:46:16 +0000 (22:46 +0300)]
config: autoconf -> ac_version
Dmitry Selyutin [Fri, 29 Sep 2017 19:44:12 +0000 (22:44 +0300)]
config: prefer attributes over items
Dmitry Selyutin [Fri, 29 Sep 2017 16:59:42 +0000 (19:59 +0300)]
pygnulib: deprecate legacy formatting
Dmitry Selyutin [Fri, 29 Sep 2017 15:51:05 +0000 (18:51 +0300)]
module: more efficient hash implementation
Dmitry Selyutin [Fri, 29 Sep 2017 07:16:29 +0000 (10:16 +0300)]
pygnulib.py: show banner notices
Dmitry Selyutin [Thu, 28 Sep 2017 21:51:41 +0000 (00:51 +0300)]
module: yet another fix in transitive closure; style changes
Dmitry Selyutin [Thu, 28 Sep 2017 21:13:18 +0000 (00:13 +0300)]
pygnulib.py: do not call transitive closure twice (copy & paste)
Dmitry Selyutin [Thu, 28 Sep 2017 21:12:01 +0000 (00:12 +0300)]
module: multiple statuses support; fixed transitive closure
Dmitry Selyutin [Thu, 28 Sep 2017 18:08:01 +0000 (21:08 +0300)]
pygnulib.py: simplify license conflicts detection
Dmitry Selyutin [Thu, 28 Sep 2017 15:53:30 +0000 (18:53 +0300)]
module: efficient hash implementation
Dmitry Selyutin [Thu, 28 Sep 2017 15:18:21 +0000 (18:18 +0300)]
parser: cleanup; allow empty options (--import in wget2)
Dmitry Selyutin [Thu, 28 Sep 2017 14:05:59 +0000 (17:05 +0300)]
pygnulib.py: inform about license incompatibilities
Dmitry Selyutin [Thu, 28 Sep 2017 10:12:08 +0000 (13:12 +0300)]
pygnulib.py: transfer script name
Dmitry Selyutin [Thu, 28 Sep 2017 10:10:25 +0000 (13:10 +0300)]
config: add GPL and LGPL to license sets
Dmitry Selyutin [Thu, 28 Sep 2017 07:46:01 +0000 (10:46 +0300)]
module: fix typo (is -> in)
Dmitry Selyutin [Thu, 28 Sep 2017 07:05:15 +0000 (10:05 +0300)]
module: use list on line-by-line iteration
Dmitry Selyutin [Thu, 28 Sep 2017 07:03:35 +0000 (10:03 +0300)]
module: add missing argument
Dmitry Selyutin [Thu, 28 Sep 2017 07:03:06 +0000 (10:03 +0300)]
module: use sets instead of lists
Dmitry Selyutin [Thu, 28 Sep 2017 07:00:49 +0000 (10:00 +0300)]
pygnulib.py: determine incompatible licenses
Dmitry Selyutin [Thu, 28 Sep 2017 06:58:25 +0000 (09:58 +0300)]
deprecate LicenseSet (use a simple set); licenses constants
Dmitry Selyutin [Tue, 26 Sep 2017 19:41:19 +0000 (22:41 +0300)]
use libtests_required and dummy_required helpers
Dmitry Selyutin [Tue, 26 Sep 2017 19:40:34 +0000 (22:40 +0300)]
module: libtests_required and dummy_required helpers
Dmitry Selyutin [Tue, 26 Sep 2017 19:36:56 +0000 (22:36 +0300)]
module: transform transitive closure back into function