Re: Keyword "as" in RuleDispatch
Alexey Smishlayev <[email protected]> Wed, 7 Oct 2015 19:34:50 +0300
| Newsgroups | gmane.comp.python.peak |
|---|---|
| Message-ID | <[email protected]> |
Yeah sounds like one could just rewrite the half of the PEAK from scratch. Sorry to hear that, I guess, we'll have to stick with patches. Many thanks for the help, anyways. Regards, Alexey On 07/10/15 19:26, PJ Eby wrote: > peak.util.Graph is actually a dead import, so that's trivial to fix. > However, peak.web, peak.security.rules, and peak.binding all make > fairly deep uses of RuleDispatch and rely on its ability to work with > PyProtocols, not to mention its internals (like dispatching > strategies). It should be possible to make PEAK-Rules support > PyProtocols in a relatively straightforward manner, but it's not clear > to me where that code would live, unless it's within PEAK itself. > Even then, replacements for the internals usage would need to be > found, and I'm afraid of breaking things in the event there is anybody > else using any of it. > > I think it's probably going to not happen; these days I work with > CoffeeScript and Node more than I do Python. (Heck, I work more with > freakin' PHP these days than I do Python!) Fixing the Twisted support > for signals is something I can probably carve out some time to do, and > the binding.Obtain issue. But just taking the time to remind myself > of how all the 10-year-old stuff in PyProtocols and RuleDispatch works > would be a pretty big project. > > > On Wed, Oct 7, 2015 at 4:26 AM, Alexey Smishlayev <[email protected]> wrote: >> I see that RuleDispatch ("import dispatch") is used in >> peak.binding.attributes and peak.util.Graph. What activities would be >> necessary to port this code to PEAK-Rules and therefore replace the >> RuleDispatch dependency in the main package? >> I am considering making this contribution. >> >> >> Regards, >> Alexey >> >> >> On 06/10/15 18:57, PJ Eby wrote: >>> Yes, you do need to install it. Make sure you install >>> 0.5a1.dev-r2717, as that is the version with 2.7 support. PEAK itself >>> has not been ported to using PEAK-Rules yet, and it's rather unlikely >>> it will ever be. (You are free to continue using RuleDispatch, of >>> course; the current version does in fact have 2.7 support. I forgot >>> that we put that in already.) >>> >>> On Tue, Oct 6, 2015 at 8:34 AM, Alexey Smishlayev <[email protected]> >>> wrote: >>>> Thank you for the suggestion! >>>> >>>> What would be the correct way to install PEAK + PEAK-Rules? >>>> I did: >>>> $ sudo pip install >>>> http://peak.telecommunity.com/snapshots/PEAK-Rules-0.5a1.dev-r2713.tar.gz >>>> [...] >>>> $ sudo pip install >>>> http://peak.telecommunity.com/snapshots/PEAK-0.5a4.dev-r2486.tar.gz >>>> Downloading/unpacking >>>> http://peak.telecommunity.com/snapshots/PEAK-0.5a4.dev-r2486.tar.gz >>>> Downloading PEAK-0.5a4.dev-r2486.tar.gz (1.0MB): 1.0MB downloaded >>>> Running setup.py (path:/tmp/pip-pEff4R-build/setup.py) egg_info for >>>> package from >>>> http://peak.telecommunity.com/snapshots/PEAK-0.5a4.dev-r2486.tar.gz >>>> >>>> Downloading/unpacking RuleDispatch>=0.5a0dev-r2287 (from >>>> PEAK==0.5a4.dev-r2486) >>>> Could not find any downloads that satisfy the requirement >>>> RuleDispatch>=0.5a0dev-r2287 (from PEAK==0.5a4.dev-r2486) >>>> Cleaning up... >>>> No distributions at all found for RuleDispatch>=0.5a0dev-r2287 (from >>>> PEAK==0.5a4.dev-r2486) >>>> >>>> >>>> Do I still have to install RuleDispatch, even if I don't use it? >>>> >>>> >>>> Best regards, >>>> Alexey >>>> >>>> >>>> >>>> On 2015.10.03. 02:13, PJ Eby wrote: >>>>> Ruledispatch had support dropped many years ago; PEAK-Rules has a >>>>> RuleDispatch emulation API that addresses the 'as' issue. See >>>>> >>>>> >>>>> http://peak.telecommunity.com/DevCenter/PEAK-Rules#porting-code-from-ruledispatch >>>>> for details. >>>>> >>>>> On Fri, Oct 2, 2015 at 3:34 AM, Alexey Smishlayev <[email protected]> >>>>> wrote: >>>>>> Hello! >>>>>> >>>>>> In the RuleDispatch package (I use most recent dev snapshot >>>>>> >>>>>> >>>>>> http://peak.telecommunity.com/snapshots/RuleDispatch-0.5a1.dev-r2717.tar.gz, >>>>>> file src/dispatch/__init__.py, line 22) a global name "as" is set, >>>>>> which >>>>>> is >>>>>> a reserved keyword in Python 2.7. That makes the package unusable, so I >>>>>> have >>>>>> to patch it locally every time I do an install. >>>>>> >>>>>> Is that an expected behavior or maybe there are other ways to deals >>>>>> with >>>>>> the >>>>>> problem? >>>>>> >>>>>> >>>>>> Best regards, >>>>>> Alexey Smishlayev >>>>>> _______________________________________________ >>>>>> PEAK mailing list >>>>>> [email protected] >>>>>> http://www.eby-sarna.com/mailman/listinfo/peak >>>>