Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 46c9ead0 | 2020-06-25 08:08:10 | Make all classes Entry, Struct, etc) new-style classes This allows the object methods to be properly inherited and called via `super(..)`, addressing breakage with python 2.x, introduced in cfcc093606e747a5d250787012bac0b149c60d6d. Fixes #1042. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| b57b6e46 | 2020-03-28 16:01:46 | event_rpcgen.py: fix arguments-differ | ||
| 7cdf75ca | 2020-03-28 15:58:57 | event_rpcgen.py: fix attribute-defined-outside-init | ||
| 121fe013 | 2020-03-28 15:58:36 | event_rpcgen: suppress some warnings to make pylint clean | ||
| 47a2bcf6 | 2020-03-27 17:24:53 | Don't accumulate arguments in `Entry.GetTranslation` Initialize `extradict` safely to avoid accumulating arguments in dict objects passed in across calls. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 6a3ca347 | 2020-03-27 17:01:53 | Fix improper string concatenations in lists This change adds commas between elements or explicitly concatenates the strings, so the values are no longer concatenated by accident. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 496fc02b | 2020-03-27 16:56:16 | Fix warnings regarding unused variables Prefix all unused variables with `_` to mute unused variable warnings with flake8/pylint. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 80171db5 | 2020-03-27 16:45:21 | Don't override the `type` built-in Name the second parameter to `Entry(..)` `ent_type` to avoid overriding the built-in. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| cfcc0936 | 2020-03-27 16:27:56 | Call `super` to call methods from the parent class Not only does it make it clearer to the reader what the intent is behind the code, it fixes MRO evaluation of classes if the parent-child relationship is nonlinear. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 83175940 | 2020-03-27 16:20:24 | Address `no-self-use` issues reported by pylint Sprinkle around `@staticmethod` where need be and raise `NotImplementedError` from `Entry.GetInitializer` instead of doing similar with `assert`. `NotImplementedError` will provide a hint to static analyzers that there are abstract methods which need to be implemented, if they aren't, in subclasses. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 6da0cc61 | 2020-03-27 16:04:37 | Run the code through the black formatter This resolves a number of flake8 issues as well as pylint issues. Not all of the changes mesh between flake8/pylint though, so there are some false positives, but it's better than before. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 10a04036 | 2020-03-27 15:58:02 | Reformat strings to template This change converts the existing code to use triple-quotes extensively, in the end-goal of making the code to reformat with black more readable before and after the change (black messes around with the formatting in a less than desirable way). Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 4cde51b6 | 2020-03-26 22:29:43 | Add `argparse` support This change converts raw parsing with `sys.argv` to its equivalent logic with `argparse`. It doesn't fully convert over all of the TODO items listed in the comments, but it does provide some top-level structure which can be used to drive down further improvements and structure. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 23874cfc | 2020-03-26 21:02:13 | Precompile regular expressions This change boost performance at scale by pre-compiling regular expressions in the global space, then reusing them many times within functions. This (while not the desired intent of the author) will boost performance when parsing input. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 1b545a46 | 2020-03-26 19:15:52 | Use bools instead of ints values where possible This is being done to clarify logic and isn't being done for performance reasons whatsoever, as bools are derived from ints. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 9157b0d2 | 2020-03-26 19:05:48 | Rename all global variables to match the PEP8 spec Global variables should be in all caps, as opposed to lowercase. While here, use named groups for `STRUCT_REF_RE` instead of numbered groups to make the results and their indented tokens to parse more intuitive to the end reader. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| dc576729 | 2020-03-26 17:37:09 | Handle file pointers with context suite patterns This removes the need for manually calling the file pointer's `.close` methods directly. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 7f115c17 | 2020-03-26 20:42:40 | Iterate over `tokens` with a for instead of while This simplifies the logic and avoids unnecessary copying/slicing of array elements in `tokens`. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 5408b963 | 2020-03-26 17:28:09 | Fix indentation for `RpcGenError` Indentation for the exception was double what it should have been. This change normalizes the indentation to a consistent standard with the rest of the file. Fix minor flake8 issues while here corresponding to the minimum number of needed blank lines around the class and its methods. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 30229dcf | 2020-03-26 17:21:25 | Don't override `file` built-in Use `filep` instead of `file` to clarify the fact that `file` is a file pointer object. This mutes warnings on python 2.7 with `pylint`. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| 2c38d6b1 | 2020-03-26 17:13:14 | Resolve variable name issues per PEP8 Move all logic under `if __name__ == "__main__"` to a `main(..)` function. The purpose of this is to not only address flake8/pylint reported issues with variable names, but also to enable testing of the function in isolation to ensure the logic acts as desired. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| f30cc2b0 | 2020-03-26 16:07:17 | Sort imports per PEP8 Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> | ||
| e85818d2 | 2018-06-19 10:15:08 | Cleanup __func__ detection First of all __func__ is not a macro, it is char[] array, so the code that we had before in cmake, was incorrect, i.e.: #if defined (__func__) #define EVENT____func__ __func__ #elif defined(__FUNCTION__) #define EVENT____func__ __FUNCTION__ #else #define EVENT____func__ __FILE__ #endif So just detect do we have __func__/__FUNCTION__ in configure/cmake before build and define EVENT__HAVE___func__/EVENT__HAVE___FUNCTION__ to use the later to choose which should be used as a __func__ (if it is not presented). Closes: #644 | ||
| 8b0aa7b3 | 2017-09-14 17:39:20 | Port `event_rpcgen.py` and `test/check-dumpevents.py` to Python 3. These scripts remain compatible with Python 2. | ||
| 253e7fa9 | 2016-12-06 12:08:32 | util-internal: fix __func__ redefinition (netbsd) ==> netbsd: In file included from ../listener.c:57:0: ==> netbsd: ../util-internal.h:58:0: warning: "__func__" redefined [enabled by default] ==> netbsd: #define __func__ EVENT____func__ ==> netbsd: ^ ==> netbsd: In file included from /usr/include/amd64/types.h:39:0, ==> netbsd: from /usr/include/sys/types.h:45, ==> netbsd: from ../listener.c:30: ==> netbsd: /usr/include/sys/cdefs.h:394:0: note: this is the location of the previous definition ==> netbsd: #define __func__ __PRETTY_FUNCTION__ | ||
| 32ed1102 | 2012-10-26 19:37:00 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| 0eb01099 | 2012-10-23 13:30:58 | Use python2 rather than python python may refer to either python2 or python3 so rather by explicit by using python2. See PEP 394 - http://www.python.org/dev/peps/pep-0394/ for more details. | ||
| 4b5f32a5 | 2012-10-23 13:26:44 | Use python2 rather than python python may refer to either python2 or python3 so rather by explicit by using python2. See PEP 394 - http://www.python.org/dev/peps/pep-0394/ for more details. | ||
| aa59c1e9 | 2012-08-28 16:14:17 | New --quiet option for event_rpcgen.py | ||
| ffb0ba07 | 2012-03-06 06:05:04 | event_rpcgen.py now prints status information to stdout and errors to stderr. Before, running make > /dev/null would result in status information cluttering the error log. This changes it so that event_rpcgen.py prints status information to stdout like the rest of the build tools. | ||
| bcefd246 | 2012-02-29 15:07:32 | Make event_rpcgen.py output conform to indentifier conventions, more | ||
| 372bff1c | 2012-02-29 15:07:31 | Make event_rpcgen.py output conform to indentifier conventions | ||
| e49e2891 | 2012-02-10 17:29:53 | Update copyright notices to 2012 | ||
| f1250eb6 | 2010-10-25 15:23:41 | add a requested docstring for event_rpcgen.CommandLine.__init__ | ||
| ec347b92 | 2010-07-07 16:45:03 | Move event-config.h to include/event2 This change means that all required include files are in event2, and all files not in event2/* are optional. | ||
| f6ab2a28 | 2010-04-23 23:55:30 | Fix a memory leak when unmarshalling RPC object arrays The old code would use type_var_add() for its side-effect of expanding the array, then leak the new object that was added to the array. The new code adds a static function to handle the array resizing. | ||
| 755fbf16 | 2010-04-14 14:27:29 | Add void* arguments to request_new and reply_new evrpc hooks This makes evprc setup more extensible, and helps with Shuo Chen's work on implementing Google protocol buffers rpc on top of Libevent 2 evrpc. This patch breaks binary compatibility with previous versions of Libevent, since it changes struct evrpc and the signature of evrpc_register_generic(). Since all compliant code should be calling evrpc_register_generic via EVRPC_REGISTER, it shouldn't break source compatibility. (Code by Shuo Chen; commit message by Nick) | ||
| 91fe23fc | 2009-11-20 15:46:04 | Tolerate code that returns from a fatal_cb. Also, replace more abort() calls with EVUTIL_ASSERT() or event_errx. | ||
| f9de8670 | 2009-11-16 22:23:06 | Fix a declaration of __func__ in rpcgen. svn:r1535 | ||
| a826a758 | 2009-07-28 19:41:48 | Some tweaks to Brodie Thesfield's MSVC patch. svn:r1386 | ||
| 5d71b25b | 2009-07-17 18:38:38 | Remove all trailing whitespace from end-of-line. svn:r1350 | ||
| 6469598e | 2009-07-03 17:43:26 | Allow C identifiers as struct names; allow multiple comments in .rpc files; from Zack Weinberg; plus a tiny tweak svn:r1336 | ||
| fbb181d1 | 2009-07-03 17:31:17 | Allow specifying the output filename for rpcgen; based on work by jmansion; patch from Zack Weinberg. svn:r1335 | ||
| bbcc54ef | 2009-07-03 17:25:45 | fix preamble of rpcgen-generated files to rely on event2 includes; based on work by jmansion; patch from Zack Weinberg. svn:r1334 | ||
| 37d3e16c | 2009-07-03 17:20:56 | Raise RpcGenError in event_rpcgen.py; from jmanison and Zack Weinberg svn:r1333 | ||
| b228ff91 | 2009-04-25 00:15:31 | remove vararg macros for accessing evrpc structs svn:r1243 | ||
| 9516df0e | 2009-04-23 05:40:06 | Fix c89 bugs reported by Cory Stup. Others may remain. I wasn't able to get gcc --std=c89 to build libevent at all, so I don't know what compiler the original reporter is using here. Note that this change requires us to disable the part of our rpc code that uses variadic macros when using a non-gcc compiler. This is a problem if we want our rpc api to be portable. svn:r1231 | ||
| a8f6d961 | 2009-04-17 06:56:09 | Actually stop using EVBUFFER_LENGTH/DATA, and move them to buffer_compat.h svn:r1183 | ||
| 9993137c | 2009-01-27 21:10:31 | Remove all trailing whitespace in all the source files. svn:r1063 | ||
| 99a1063e | 2008-06-21 02:21:25 | support 64-bit integers in rpc structs svn:r856 | ||
| bb37fbb2 | 2008-05-05 15:45:47 | r19601@catbus: nickm | 2008-05-05 11:45:04 -0400 Make event_rpcgen.py use the new headers. svn:r775 | ||
| 812d2fd8 | 2008-04-03 14:27:01 | proxy one more generator svn:r701 | ||
| a7e39551 | 2008-04-03 03:33:07 | slight refactoring svn:r700 | ||
| d5c15b2e | 2008-03-03 03:36:51 | make event_rpcgen.py generate code include event-config.h svn:r686 | ||
| 5c70ea4c | 2008-02-28 02:47:43 | improved code for evbuffer; avoids memcpy svn:r674 | ||
| 11230f7e | 2008-02-18 20:04:01 | r18145@catbus: nickm | 2008-02-18 15:02:20 -0500 Stop using deprecated autoconf code to set integer types; detect actual files to include more thoroughly. This should make us work on solaris 9 again. This should be a backport candidate, if it works. Also, make all libevent code use ev_uint32_t etc, rather than uint_32_t. svn:r649 | ||
| 616a64c8 | 2007-12-27 20:08:21 | additional add argument was missing const qualifier svn:r615 | ||
| 7e3a7af7 | 2007-12-24 23:59:41 | support string arrays in event_rpcgen svn:r613 | ||
| 68725dc8 | 2007-12-23 07:38:11 | support integer arrays in rpc structures; this involved some refactoring of the event_rpcgen code, so that other types should be able to get arrays fairly easily svn:r609 | ||
| 85053473 | 2007-12-13 06:36:54 | fix a bug with event_rpcgen for integers svn:r588 | ||
| 3b345f3e | 2007-12-12 07:02:55 | pull setters/getters out of RPC structures to reduce their memory footprint svn:r585 | ||
| ba487199 | 2007-12-12 04:39:42 | support for 32-bit tag numbers in rpc structures svn:r583 | ||
| 3c1a6a68 | 2007-09-23 03:49:28 | first attempts at refactoring this code to make it more readable; mostly changing to dictionaries for format strings svn:r450 | ||
| 640c61ba | 2007-09-15 00:53:47 | deal with out of memory situations for realloc svn:r429 | ||
| babd622f | 2007-09-09 03:10:16 | make allocating array members in event_rpcgen more efficient, but doubling the size of available slots every time we run out. svn:r421 | ||
| 35983cd6 | 2007-08-16 21:12:53 | r14618@catbus: nickm | 2007-08-16 17:11:47 -0400 In ANSI C, int func() is a function with unspecified arguments, whereas int func(void) is a function that takes no arguments. Using int func() to mean a function with no arguments is a C++ism, so let's not use or generate it. svn:r395 | ||
| b15d715c | 2007-07-06 03:36:31 | make event_rpcgen.py use the uint_ types; make event.h include stdint.h (wonder which OS that will break) svn:r369 | ||
| c1aa5480 | 2006-11-26 16:13:17 | support #define in .rpc descriptions svn:r278 | ||
| 3a15f7d4 | 2006-11-19 02:03:43 | make it work with python2.2 svn:r267 | ||
| 226fd50a | 2006-11-18 21:27:42 | use more python builtins; dont use reserved keywords svn:r266 | ||
| ebf5333f | 2006-05-17 13:13:31 | oops. the enums were actually creating symbols svn:r212 | ||
| a3bb4a03 | 2006-01-22 05:08:50 | I often need some very simple HTTP functionality, so this is a first stab at integrating something really simple with HTTP. The interface is still evolving as I start messing with it. Not all the interfaces are properly exported yet. I am also trying to figure out how to intelligently hide the details about the different structures from users, so that that things can be changed around later. svn:r196 | ||
| 50f7aaef | 2005-09-09 06:56:12 | make it compile on mac os x svn:r183 | ||
| 7000fe66 | 2005-08-30 06:02:09 | remove dos opportunity svn:r180 | ||
| b4ab56dc | 2005-08-28 23:48:16 | support for arrays on structs. svn:r178 | ||
| 32acc283 | 2005-08-27 06:29:52 | a few more bug fixes svn:r177 | ||
| 2813f1b0 | 2005-08-26 02:15:54 | constify svn:r176 | ||
| aaf56fb6 | 2005-08-23 07:43:11 | fix API problems for get in some types svn:r175 | ||
| 6e55da60 | 2005-08-22 01:39:54 | typo svn:r174 | ||
| e5ab86a7 | 2005-08-22 01:38:23 | make use of the built in warn/err code svn:r173 | ||
| c4e60994 | 2005-08-22 01:34:34 | including the tagging code that is required by event_rpcgen.py; test the new functionality. svn:r172 | ||
| 949cbd12 | 2005-08-21 16:25:02 | generate marshalling code based on libevent svn:r171 |