Thomas Nagy
8cbc8da5ce
Undo parentheses escaping in ant_glob
2019-05-10 23:13:01 +02:00
Michael Vincent
e874342103
Node: escape parentheses in ant_glob()
...
ant_matcher() converts an ANT glob pattern to an equivalent regex
pattern. This commit adds support for escaping parenthesis in the
input pattern so they don't end up being treated as a regex capture
group.
Also add a unit test to verify ant_glob()'s ability to handle special
characters in the input pattern.
2019-05-08 17:22:00 -05:00
Thomas Nagy
4ed9af0ee9
Node.listdir outputs are already sorted, do not sort it again in Node.ant_glob
2019-04-23 07:13:02 +02:00
Thomas Nagy
8abce6ddd3
docs
2018-04-02 12:06:54 +02:00
Thomas Nagy
9cf12afa62
docs
2018-04-01 23:31:45 +02:00
Thomas Nagy
facdc0b173
Python 3.7 fixes #2126
2018-03-12 20:42:55 +01:00
Thomas Nagy
d21446ff71
Update docs for 2018
2018-01-01 20:53:49 +01:00
Thomas Nagy
5996879673
Enable more advanced warnings of ant_glob on build folders in verbose mode
2017-12-23 20:36:14 +01:00
Thomas Nagy
c0e2e7f281
Defer node.ant_glob(..., generator=True) evaluation
2017-12-23 14:56:54 +01:00
Calle Rosenquist
69e45d1a71
Node.ant_glob: Do not ignore case by default, as specified by the documentation.
2017-09-19 22:46:16 +02:00
captainmalloc
5d4cd9e13c
Default ignore Vim swap and Python Compiled files ( #2020 )
...
* Default ignore Vim swap and Python Compiled files
* Only Vim swap file accepted, removing Python compiled from default ignore
2017-08-31 20:25:18 +02:00
Thomas Nagy
172cafa629
Docs for #1937
2017-04-02 09:57:18 +02:00
Thomas Nagy
e352fb05c0
UNC path fixes
2017-03-02 20:45:45 +01:00
Thomas Nagy
b7d93c3c4d
Update the year in headers to 2017
2017-02-11 16:13:37 +01:00
Thomas Nagy
1ea2039c3a
cleanup
2017-02-05 13:00:36 +01:00
Yinon Ehrlich
cd20e6f0c2
Retain original trace-back ( #1903 )
2017-02-05 12:59:36 +01:00
Thomas Nagy
f1487eab44
iso8859-1 -> latin-1
2017-01-21 13:28:06 +01:00
Thomas Nagy
cfbf539166
Let ant_glob(generator=True) return a generator object
2017-01-15 01:33:44 +01:00
Thomas Nagy
4226d0cf7b
Code cleanup
2017-01-15 01:16:44 +01:00
Thomas Nagy
900d6b891c
Optimize Node.path_from
2016-12-21 22:28:42 +01:00
Thomas Nagy
a5d2c5fe24
Remove Node.sig/Node.cache_sig
2016-12-01 22:55:49 +01:00
Thomas Nagy
ec9081e81c
Let Node.find_or_declare accept paths as lists
2016-11-20 13:49:17 +01:00
Thomas Nagy
a892d8725a
Force files into the build directory by default
2016-11-20 13:43:06 +01:00
Thomas Nagy
ef6525c0bf
Api docs
2016-06-25 14:49:27 +02:00
Thomas Nagy
57e711d801
Api docs
2016-06-25 13:27:22 +02:00
Thomas Nagy
2c76187d41
Api docs
2016-06-25 12:50:04 +02:00
Thomas Nagy
e8ef5a89eb
More cleanup
2016-06-05 00:23:57 +02:00
Thomas Nagy
ab9609c0d8
docs
2016-05-21 12:01:48 +02:00
Thomas Nagy
c2646d2380
Provide md5_tstamp by default and make it easier to add more persistent BuildContext dicts
2016-05-21 11:58:47 +02:00
Thomas Nagy
f876392200
Must call os.remove on files
2016-05-21 01:15:19 +02:00
Thomas Nagy
09fd2f211f
Ensure Node.delete can remove invalid folders
2016-05-21 00:39:56 +02:00
Thomas Nagy
1ebb318ec0
find_node returns Nodes that exist, no need to verify again
2016-03-27 21:29:02 +02:00
Thomas Nagy
31742bd06d
Remove old fixes for Python < 2.3
2016-03-25 14:02:36 +01:00
Thomas Nagy
d62767e561
Add Node.isdir and remove cache_isdir optimizations for the time being
2016-03-19 14:21:02 +01:00
Thomas Nagy
3cac9c7077
Node objects can be folders too, but dependencies must be managed manually
2016-03-07 21:12:51 +01:00
Thomas Nagy
31381f9b63
Cache Node signatures on the context level
2016-02-15 23:04:30 +01:00
Thomas Nagy
43e26b5bef
cwd must be a Node object
2016-01-02 01:54:52 +01:00
Thomas Nagy
ad2f3d420c
Setting node signatures clears cached values if present
2015-12-25 17:54:02 +01:00
Thomas Nagy
5a3a89b4de
Stop adding incompatible task data into the same dict objects
2015-12-24 18:36:48 +01:00
Thomas Nagy
06c7c09681
Provide node.exists() to increase filesystem abstraction
2015-12-24 18:36:42 +01:00
Thomas Nagy
72fda8ae36
Reduce the size of the build pickle file
2015-12-24 18:36:38 +01:00
Thomas Nagy
281148b8eb
Removed the old __eq__ and __hash__ which are not useful anymore in recent interpreters
2015-12-23 19:16:31 +01:00
Thomas Nagy
e365a30215
Cache file hashes for performance reasons
2015-12-23 18:23:14 +01:00
Thomas Nagy
7681bddfb7
Remove Node.sig and Node.cache_sig
2015-12-23 17:55:44 +01:00
Thomas Nagy
2ab00f7f49
Removed Node.cache_sig
2015-12-23 17:55:44 +01:00
Thomas Nagy
8b74beb233
Removed the split functions from Node.py
2015-12-23 17:54:41 +01:00
Thomas Nagy
8113778aab
Undefined name 'unicode' in the new json methods
2015-11-21 17:17:16 +01:00
Thomas Nagy
eb5aeb8715
The json module is available only in Python 2.6, so the import cannot be on the top-level
2015-11-20 18:06:36 +01:00
Matt Clarkson
8b71e16989
Add Node.write_json()
...
Allows for a python object to be serialized to disk as JSON easily. By
default the function pretty prints the JSON which makes the file easily
human readable. A compact representation of the JSON can be done with
'pretty = False'
2015-11-20 13:52:26 +00:00
Matt Clarkson
2c617a42f8
Add a Node.read_json() function
...
This allows an easy way to read a JSON file into a python object. It, by
default, on Python2 converts all strings to normal strings. This is the
common use case for simple JSON files. Files that have UTF8 codepoints
over the normal ASCII range can use the 'convert = False' argument.
2015-11-20 13:51:11 +00:00