]>
Savannah Git Hosting - gnulib.git/log
Dmitry Selyutin [Sun, 8 Jul 2018 20:32:30 +0000 (23:32 +0300)]
pygnulib: fix "mention" section paths
Dmitry Selyutin [Sun, 8 Jul 2018 20:20:47 +0000 (23:20 +0300)]
pygnulib: fixed ignore files; fixed logging
Dmitry Selyutin [Sat, 7 Jul 2018 14:58:43 +0000 (17:58 +0300)]
module: fix test_module calculations
Dmitry Selyutin [Thu, 5 Jul 2018 19:32:35 +0000 (22:32 +0300)]
generator: fix gl_VC_FILES in gnulib_cache
Dmitry Selyutin [Thu, 5 Jul 2018 18:57:52 +0000 (21:57 +0300)]
more fixes regarding --lgpl option
Dmitry Selyutin [Thu, 5 Jul 2018 19:25:36 +0000 (22:25 +0300)]
generator: fix subdirs for gnulib_comp
Dmitry Selyutin [Thu, 5 Jul 2018 19:26:10 +0000 (22:26 +0300)]
module: fix autoconf version check
Dmitry Selyutin [Thu, 5 Jul 2018 18:58:43 +0000 (21:58 +0300)]
vfs: multiple overrides in lookup routine
Dmitry Selyutin [Wed, 4 Jul 2018 21:33:22 +0000 (00:33 +0300)]
generator: fix gl_LGPL macro if --lgpl given
Dmitry Selyutin [Wed, 4 Jul 2018 21:06:31 +0000 (00:06 +0300)]
pygnulib: fix output regarding Makefile.am
Dmitry Selyutin [Wed, 4 Jul 2018 20:51:06 +0000 (23:51 +0300)]
generator: fix gnulib-cache.m4 and command line
Dmitry Selyutin [Wed, 4 Jul 2018 20:50:33 +0000 (23:50 +0300)]
misc: optional configuration paths
Dmitry Selyutin [Wed, 4 Jul 2018 07:54:18 +0000 (10:54 +0300)]
generator: swap mkedits yield and delete actions
Dmitry Selyutin [Wed, 4 Jul 2018 07:19:24 +0000 (10:19 +0300)]
pygnulib: fix transformations of CVS paths
Dmitry Selyutin [Tue, 3 Jul 2018 20:29:58 +0000 (23:29 +0300)]
misc: remove unused code
Dmitry Selyutin [Tue, 3 Jul 2018 18:42:45 +0000 (21:42 +0300)]
parser: fix --avoid option handling
Dmitry Selyutin [Tue, 3 Jul 2018 19:57:17 +0000 (22:57 +0300)]
module: custom hook for licenses field
Dmitry Selyutin [Tue, 3 Jul 2018 18:37:25 +0000 (21:37 +0300)]
generator: update snippet variable
Dmitry Selyutin [Mon, 2 Jul 2018 19:55:05 +0000 (22:55 +0300)]
pygnulib: support paths in transformations
Dmitry Selyutin [Mon, 2 Jul 2018 17:19:42 +0000 (20:19 +0300)]
generator: fix missing path separator
Dmitry Selyutin [Sun, 1 Jul 2018 22:09:52 +0000 (01:09 +0300)]
pygnulib: remove redundant sign
Dmitry Selyutin [Sun, 1 Jul 2018 22:05:10 +0000 (01:05 +0300)]
pygnulib: support file transformation routines
Dmitry Selyutin [Sun, 1 Jul 2018 22:03:15 +0000 (01:03 +0300)]
module: fix initial values for properties
Dmitry Selyutin [Sun, 1 Jul 2018 22:02:30 +0000 (01:02 +0300)]
parser: support empty --lgpl argument
Dmitry Selyutin [Sun, 1 Jul 2018 22:02:02 +0000 (01:02 +0300)]
generator: make licenses hashable
Dmitry Selyutin [Sat, 30 Jun 2018 13:30:26 +0000 (16:30 +0300)]
vfs: normalize file path after concatenation
Dmitry Selyutin [Sat, 30 Jun 2018 13:30:02 +0000 (16:30 +0300)]
vfs: simplify some code parts
Dmitry Selyutin [Fri, 29 Jun 2018 07:05:31 +0000 (10:05 +0300)]
pygnulib: postpone ignore files backup
Dmitry Selyutin [Fri, 29 Jun 2018 07:04:59 +0000 (10:04 +0300)]
pygnulib: deprecate unused variable
Dmitry Selyutin [Thu, 28 Jun 2018 22:45:09 +0000 (01:45 +0300)]
pygnulib: fix substitutions; backup removed files
Dmitry Selyutin [Thu, 28 Jun 2018 22:44:29 +0000 (01:44 +0300)]
vfs: deprecate unused "backup" parameter
Dmitry Selyutin [Thu, 28 Jun 2018 21:25:05 +0000 (00:25 +0300)]
pygnulib: support VCS files
Dmitry Selyutin [Thu, 28 Jun 2018 21:24:26 +0000 (00:24 +0300)]
parser: enable vc_files by default
Dmitry Selyutin [Thu, 28 Jun 2018 21:23:37 +0000 (00:23 +0300)]
generator: fix gnulib-cache.m4 generation
Dmitry Selyutin [Wed, 27 Jun 2018 22:00:53 +0000 (01:00 +0300)]
modules: swap dependencies and demanders; cleanup
Dmitry Selyutin [Wed, 27 Jun 2018 21:55:04 +0000 (00:55 +0300)]
remove debugging leftovers
Dmitry Selyutin [Sat, 10 Feb 2018 16:01:32 +0000 (19:01 +0300)]
minor code cleanup
Dmitry Selyutin [Sun, 4 Feb 2018 10:17:41 +0000 (13:17 +0300)]
pygnulib.py: print the final notifications
Dmitry Selyutin [Sun, 4 Feb 2018 10:13:13 +0000 (13:13 +0300)]
simplify properties; improve performance
Dmitry Selyutin [Mon, 29 Jan 2018 16:07:42 +0000 (19:07 +0300)]
refactored generators; bugfix; tests Makefile.am
Dmitry Selyutin [Sun, 21 Jan 2018 17:43:31 +0000 (20:43 +0300)]
parser: simplify mode parsing; fix --help error
Dmitry Selyutin [Wed, 17 Jan 2018 20:51:24 +0000 (23:51 +0300)]
parser: do not override --help option
Dmitry Selyutin [Wed, 17 Jan 2018 18:37:36 +0000 (21:37 +0300)]
module: override applicability and test properties
Dmitry Selyutin [Wed, 17 Jan 2018 18:31:03 +0000 (21:31 +0300)]
generator: library Makefile generator fixes
Dmitry Selyutin [Wed, 17 Jan 2018 18:25:50 +0000 (21:25 +0300)]
config: autoconf options; version match; cleanup
Dmitry Selyutin [Sat, 13 Jan 2018 15:27:57 +0000 (18:27 +0300)]
read-only modules; module cache; various fixes
Since gnulib-tool does not modify modules, it is OK to initialize each
module only once. Moreover, since most of the time is spent upon
executing transitive closures and each transitive closure stores all
modules into different lists, it is also a good idea to calculate the
hash only once for read-only modules. These simple additions make
gnulib-tool much faster than before, since each module is initialized
only once-per-run and has a constant hash value.
For example, an invocation of pygnulib.py inside wget2 takes about 0.5
seconds until it completes gnulib-comp.m4 generation; previously it used
to take up to 8 seconds. Needless to say that performing the same task
is much slower when using the good old gnulib-tool: in my experiments
it takes about a minute to complete gnulib-comp.m4 generation.
Some of the TransitiveClosure methods considered useful enough to be
also present as a part of Database class. The refactoring also revealed
that conditional modules computation was implemented incorrectly; this
code was fixed. Moreover, this part of functionality was moved into the
__init__ section, which also saves several milliseconds since it is not
necessary to check whether conditional modules table exists upon each
conditional() invocation.
Dmitry Selyutin [Fri, 12 Jan 2018 20:09:16 +0000 (23:09 +0300)]
module: a faster hash computation
Dmitry Selyutin [Fri, 12 Jan 2018 20:05:54 +0000 (23:05 +0300)]
module: fix transitive closure algorithm
Dmitry Selyutin [Thu, 11 Jan 2018 19:21:42 +0000 (22:21 +0300)]
module: generic hash and comparison for dummy
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