Fair enough. I should have switched to python 3 for my local environment a
long while ago anyway, and this gives me one more reason to do so.
Thank you both!
Huji

On Sun, Aug 19, 2018 at 6:07 PM Guilherme Gonçalves <
guilherme.p.g...@gmail.com> wrote:

> Hi Huji,
>
> It does look like the difference in Python versions is the problem. The Python
> 3 docs <https://docs.python.org/3/reference/lexical_analysis.html> say:
>
> Both string and bytes literals may optionally be prefixed with a letter
>> 'r' or 'R'; such strings are called *raw strings* and treat backslashes
>> as literal characters. As a result, in string literals, '\U' and '\u'
>> escapes in raw strings are not treated specially. *Given that Python
>> 2.x’s raw unicode literals behave differently than Python 3.x’s the 'ur'
>> syntax is not supported.*
>>
>
> So the syntax you tried to use is indeed invalid. I don't really know what
> the exact difference is between Python 2 and Python 3 raw Unicode literals,
> but since in Python 3 literal strings are always taken as Unicode, you can
> probably just use *r'...'* for your regular expression and settle on
> Python 3 for both local development and on Toolforge.
>
> Hope this helps!
>
> 2018-08-19 21:57 GMT+01:00 Huji Lee <huji.h...@gmail.com>:
>
>> Excellent question. On my own computer, I am using 2.7.12 but on labs it
>> is 3.4.3
>>
>> Of note, when I changed my code such that all cases of *ur'...'* now
>> read *u'...' *the script worked in both environments. So it has to do
>> with how escaping works in python, I guess. But I am not sure.
>>
>> On Sun, Aug 19, 2018 at 4:48 PM Alex Monk <kren...@gmail.com> wrote:
>>
>>> What are the versions of Python involved?
>>>
>>> On Sun, 19 Aug 2018 at 21:34, Huji Lee <huji.h...@gmail.com> wrote:
>>>
>>>> Hello,
>>>>
>>>> When I run this script[1] on my own machine it runs without any
>>>> problem. When I run it on Labs, I get an invalid syntax error, pasted
>>>> below. Can you please help me figure out why?
>>>>
>>>> Thanks!
>>>>
>>>> (venv)tools.huji@tools-bastion-03:~$ python core/pwb.py webcite
>>>> -page:"SOME PAGE"
>>>> Traceback (most recent call last):
>>>>   File "core/pwb.py", line 253, in <module>
>>>>     if not main():
>>>>   File "core/pwb.py", line 246, in main
>>>>     run_python_file(filename, [filename] + args, argvu, file_package)
>>>>   File "core/pwb.py", line 114, in run_python_file
>>>>     exec(compile(source, filename, "exec", dont_inherit=True),
>>>>   File "core/scripts/userscripts/webcite.py", line 125
>>>>     faCitationPattern = ur'\{\{\s*یادکرد(?:\{\{.*?\}\}|.)*?\}\}'
>>>>
>>>>   [1]
>>>> https://github.com/PersianWikipedia/fawikibot/blob/master/webcite.py
>>>> _______________________________________________
>>>> Wikimedia Cloud Services mailing list
>>>> Cloud@lists.wikimedia.org (formerly lab...@lists.wikimedia.org)
>>>> https://lists.wikimedia.org/mailman/listinfo/cloud
>>>
>>> _______________________________________________
>>> Wikimedia Cloud Services mailing list
>>> Cloud@lists.wikimedia.org (formerly lab...@lists.wikimedia.org)
>>> https://lists.wikimedia.org/mailman/listinfo/cloud
>>
>>
>> _______________________________________________
>> Wikimedia Cloud Services mailing list
>> Cloud@lists.wikimedia.org (formerly lab...@lists.wikimedia.org)
>> https://lists.wikimedia.org/mailman/listinfo/cloud
>>
>
>
>
> --
> Guilherme P. Gonçalves
> _______________________________________________
> Wikimedia Cloud Services mailing list
> Cloud@lists.wikimedia.org (formerly lab...@lists.wikimedia.org)
> https://lists.wikimedia.org/mailman/listinfo/cloud
_______________________________________________
Wikimedia Cloud Services mailing list
Cloud@lists.wikimedia.org (formerly lab...@lists.wikimedia.org)
https://lists.wikimedia.org/mailman/listinfo/cloud

Reply via email to