• New computer, new Python

    From [email protected]@21:1/5 to All on Fri Dec 9 12:13:16 2022
    Hello. I've downloaded the new Python to my new Computer, and the new Python mystifies me. Instead of an editor, it looks like a Dos executable program. How can I write my own Python Functions and subroutines in the new Python? It is version 3.
    11 (64 bit). Kermit -----Original Message-----From: [email protected]t: Friday, December 9, 2022 12:00pmTo: [email protected]ject: Python-list Digest, Vol 231, Issue 9Send Python-list mailing list submissions to
    [email protected] subscribe or unsubscribe via the World Wide Web, visit https://mail.python.org/mailman/listinfo/python-listor, via email, send a message with subject or body 'help' to [email protected] can reach the person
    managing the list at [email protected]n replying, please edit your Subject line so it is more specificthan "Re: Contents of Python-list digest..."Today's Topics: 1. Re: How to convert a raw string r'\xdd' to '\xdd' more gracefully?
    (Jach Feng) 2. Re: Nonuniform PRNG? (Stefan Ram) 3. Panoptisch - A way to understand your project's dependencies and find malicious packages (Aarnav Mahavir Bos) 4. MinecraftEdu (Jelena Ili?) 5. Re: MinecraftEdu (Cameron Simpson) 6. Re: How to
    convert a raw string r'\xdd' to '\xdd' more gracefully? (Jach Feng) 7. Re: Panoptisch - A way to understand your project's dependencies and find malicious packages (Axy) 8. Re: How to convert a raw string r'\xdd' to '\xdd' more gracefully? (
    Weatherby,Gerard) 9. Re: Panoptisch - A way to understand your project's dependencies and find malicious packages (Dan Kolis)----------------------------------------------------------------------Message: 1Date: Thu, 8 Dec 2022 00:56:42 -0800 (PST)
    From: Jach Feng <[email protected]>To: [email protected]ject: Re: How to convert a raw string r'\xdd' to '\xdd' more gracefully?Message-ID: <[email protected]>Content-Type: text/plain; charset="UTF-8"
    Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????> s0 = r'\x0a' > At this moment it was done by > > def to1byte(matchobj): > ....return chr(int('0x' + matchobj.group(1), 16)) > s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0) > > But, is it
    that difficult on doing this simple thing? > > --JachI find another answer on the web.>>> s0 = r'\x0a'>>> s0.encode('Latin-1').decode('unicode-escape')'\n'------------------------------Message: 2Date: 8 Dec 2022 12:17:22 GMTFrom: ram@zedat.
    fu-berlin.de (Stefan Ram)To: [email protected]ject: Re: Nonuniform PRNG?Message-ID: <[email protected]>Content-Type: text/plain; charset=UTF-8"Robert E. Beaudoin" <[email protected]> writes:>One thing you could
    do is to apply von Neumann de-biasing to convert a>string of output bits from your biased PRNG to an unbiased string, and>test the de-biased output. Some non-uniform generators are based on uniform generators whose output then is warped by the
    application of some function. If one has access to the underlying uniform generator used, one can test this with the algorithms for uniform generators.------------------------------Message: 3Date: Thu, 8 Dec 2022 18:52:29 +0100From: Aarnav
    Mahavir Bos <[email protected]>To: [email protected]ject: Panoptisch - A way to understand your project's dependencies and find malicious packagesMessage-ID: <CAGKp6MyQYVrxmYr4gNzuSNx53v=[email protected]>Content-
    Type: text/plain; charset="UTF-8"Hello all,I would like to share Panoptisch, a FOSS(Free and Open Source Software)tool I've been working on.We all may have encountered the issue of not having a clear dependency treeor not being sure of the
    modules our dependencies and sub-dependencies areusing.Some of us may have also heard of supply chain attacks, where open sourceprojects are hijacked to distribute malicious code masquerading as theoriginal package. This can happen deep down in the
    dependency chain.Panoptisch was born out of the need to accurately verify the modules usedin my project.It recursively scans a Python module or file to find modules used andexports a report in JSON which can be parsed for analysis.For example,
    should your yaml parser, or it's sub-dependencies importsocket/os? should your markdown renderer or it's sub-dependencies importsys/importlib? *Probably not.*Panoptisch is in early stages, has known limitations and is looking forhelp! I would love
    feedback, contributions, and most important of all,rigorous testing!I would also love to help you integrate this tool in your workflow to writemore secure software.Link: https://github.com/R9295/panoptischShort Demo: https://www.youtube.com/watch?
    v=bDJWl_odXx0Thanks and Regards,aarnav------------------------------Message: 4Date: Thu, 8 Dec 2022 12:12:47 -0800 (PST)From: Jelena Ili? <[email protected]>To: [email protected]ject: MinecraftEduMessage-ID: <60a744d6-4994-
    [email protected]>Content-Type: text/plain; charset="UTF-8"Hello,I'm new to MinecraftEDU programming with Python. I'm wondering if anyone can recommend how to get started with creating lessons and how to get started programming
    in MinecraftEDU?------------------------------Message: 5Date: Fri, 9 Dec 2022 08:26:12 +1100From: Cameron Simpson <[email protected]>To: Jelena Ili? <[email protected]>Cc: [email protected]ject: Re: MinecraftEduMessage-ID: <
    [email protected]>Content-Type: text/plain; charset=utf-8; format=flowedOn 08Dec2022 12:12, Jelena Ili? <[email protected]> wrote:>I'm new to MinecraftEDU programming with Python. I'm wondering if >anyone can recommend how to
    get started with creating lessons and how >to get started programming in MinecraftEDU?Had you started here? https://education.minecraft.net/en-us/resources/computer-science-subject-kit/python-101That's just from a web search, I've not used it.
    Cheers,Cameron Simpson <[email protected]>------------------------------Message: 6Date: Thu, 8 Dec 2022 18:05:02 -0800 (PST)From: Jach Feng <[email protected]>To: [email protected]ject: Re: How to convert a raw string r'\xdd' to '\xdd'
    more gracefully?Message-ID: <[email protected]>Content-Type: text/plain; charset="UTF-8"Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????> s0 = r'\x0a' > At this moment it was done by > > def to1byte(
    matchobj): > ....return chr(int('0x' + matchobj.group(1), 16)) > s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0) > > But, is it that difficult on doing this simple thing? > > --JachThe whold story is,I had a script which accepts an argparse's
    positional argument. I like this argument may have control character embedded in when required. So I make a post "How to enter escape character in a positional string argument from the command line? on DEC05. But there is no response. I assume that there
    is no way of doing it and I have to convert it later after I get the whole string from the command line.I made this convertion using the chr(int(...)) method but not satisfied with. That why this post came out.At this moment the conversion is done
    almost the same as Peter's codecs.decode() method but without the need of importing codecs module:-)def to1byte(matchobj):....return matchobj.group(0).encode().decode("unicode-escape")------------------------------Message: 7Date: Fri, 9 Dec 2022
    03:49:58 +0000From: Axy <[email protected]>To: [email protected]ject: Re: Panoptisch - A way to understand your project's dependencies and find malicious packagesMessage-ID: <[email protected]>Content-Type:
    text/plain; charset=UTF-8; format=flowedOn 08/12/2022 17:52, Aarnav Mahavir Bos wrote:> Hello all,>> I would like to share Panoptisch, a FOSS(Free and Open Source Software)> tool I've been working on.Hi there,I added your project to my watch
    list, keep on your work.A couple of points:First, I glanced at the code and in the very first file I opened, https://github.com/R9295/panoptisch/blob/master/panoptisch/__init__.py, I see main(). I usually place such a code in __main__.pySecond,
    in addition to AST analysis it would be nice to implement a sandbox with import hooks.Axy.------------------------------Message: 8Date: Fri, 9 Dec 2022 13:29:06 +0000From: "Weatherby,Gerard" <[email protected]>To: Jach Feng <[email protected].
    , "[email protected]" <[email protected]>Subject: Re: How to convert a raw string r'\xdd' to '\xdd' more gracefully?Message-ID: <SA1PR14MB5855E3DF0336F514B506CAF9B91C9@SA1PR14MB5855.namprd14.prod.outlook.com>Content-Type: text/plain;
    charset="iso-2022-jp"That?s actually more of a shell question than a Python question. How you pass certain control characters is going to depend on the shell, operating system, and possibly the keyboard you?re using. (e.g. https://www.alt-codes.net).
    Here?s a sample program. The dashes are to help show the boundaries of the string#!/usr/bin/env python3import argparseimport loggingparser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)parser.add_argument('data')
    args = parser.parse_args()print(f'Input\n: -{args.data}- length {len(args.data)}')for c in args.data: print(f'{ord(c)} ',end='')print()Using bash on Linux:./cl.py '^M'Input -- length 313 32 10From: Python-list <python-list-bounces+
    gweatherby=[email protected]> on behalf of Jach Feng <[email protected]>Date: Thursday, December 8, 2022 at 9:31 PMTo: [email protected] <[email protected]>Subject: Re: How to convert a raw string r'xdd' to 'xdd' more gracefully?***
    Attention: This is an external email. Use caution responding, opening attachments or clicking on links. ***Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????> s0 = r'\x0a'> At this moment it was done by>> def to1byte(matchobj):> ....return chr(
    int('0x' + matchobj.group(1), 16))> s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0)>> But, is it that difficult on doing this simple thing?>> --JachThe whold story is,I had a script which accepts an argparse's positional argument. I like this
    argument may have control character embedded in when required. So I make a post "How to enter escape character in a positional string argument from the command line? on DEC05. But there is no response. I assume that there is no way of doing it and I have
    to convert it later after I get the whole string from the command line.I made this convertion using the chr(int(...)) method but not satisfied with. That why this post came out.At this moment the conversion is done almost the same as Peter's codecs.
    decode() method but without the need of importing codecs module:-)def to1byte(matchobj):....return matchobj.group(0).encode().decode("unicode-escape")--https://urldefense.com/v3/__https://mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!
    hcg9ULzmtVUzMJ87Emlfsf6PGAfC-MEzUs3QQNVzWwK4aWDEtePG34hRX0ZFVvWcqZXRcM67JkkIg-l-K9vB$<https://urldefense.com/v3/__https:/mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!hcg9ULzmtVUzMJ87Emlfsf6PGAfC-
    MEzUs3QQNVzWwK4aWDEtePG34hRX0ZFVvWcqZXRcM67JkkIg-l-K9vB$>------------------------------Message: 9Date: Fri, 9 Dec 2022 07:38:57 -0800 (PST)From: Dan Kolis <[email protected]>To: [email protected]ject: Re: Panoptisch - A way to
    understand your project's dependencies and find malicious packagesMessage-ID: <[email protected]>Content-Type: text/plain; charset="UTF-8"I think it needs a built in viewer or at least a human readable output, or
    nobody will go through the trouble to use it.Other that that, maybe a pretty good idea, sure------------------------------Subject: Digest Footer-- https://mail.python.org/mailman/listinfo/python-list------------------------------End of
    Python-list Digest, Vol 231, Issue 9*******************************************

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From dn@21:1/5 to [email protected] on Sat Dec 10 09:30:55 2022
    On 10/12/2022 06.13, [email protected] wrote:


    Hello. I've downloaded the new Python to my new Computer, and the new Python mystifies me.

    Instead of an editor, it looks like a Dos executable program.

    How can I write my own Python Functions and subroutines in the new Python?

    It is version 3.11 (64 bit).


    Have you invested time in the documentation? https://docs.python.org/3/using/windows.html

    --
    Regards,
    =dn

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From DFS@21:1/5 to [email protected] on Fri Dec 9 15:36:44 2022
    On 12/9/2022 12:13 PM, [email protected] wrote:


    Hello. I've downloaded the new Python to my new Computer, and the new Python mystifies me.

    Instead of an editor, it looks like a Dos executable program.

    python.exe is a Windows executable.



    How can I write my own Python Functions and subroutines in the new Python?

    Open a text editor and write your own functions and subs. Save the file
    as prog.py.

    From the command line (not from inside the Python shell), type:

    $ python prog.py



    It is version 3.11 (64 bit).

    The latest and greatest. Significantly sped up vs 3.10.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Weatherby,Gerard@21:1/5 to [email protected] on Fri Dec 9 22:03:19 2022
    Python in an IDE is much easier in the long run. We use PyCharm � there�s a free version: https://www.jetbrains.com/pycharm/download/#section=windows

    From: Python-list <python-list-bounces+gweatherby=[email protected]> on behalf of DFS <[email protected]>
    Date: Friday, December 9, 2022 at 4:36 PM
    To: [email protected] <[email protected]>
    Subject: Re: New computer, new Python
    *** Attention: This is an external email. Use caution responding, opening attachments or clicking on links. ***

    On 12/9/2022 12:13 PM, [email protected] wrote:


    Hello. I've downloaded the new Python to my new Computer, and the new Python mystifies me.

    Instead of an editor, it looks like a Dos executable program.

    python.exe is a Windows executable.



    How can I write my own Python Functions and subroutines in the new Python?

    Open a text editor and write your own functions and subs. Save the file
    as prog.py.

    From the command line (not from inside the Python shell), type:

    $ python prog.py



    It is version 3.11 (64 bit).

    The latest and greatest. Significantly sped up vs 3.10.

    -- https://urldefense.com/v3/__https://mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!ncQETnsgLM_I29jKwV8WUZPhvn7g3Q5jBnkT_S0CmOf0KCORpl5xSLtMM8ZtE8gMsORNxCKhq01pCww$<https://urldefense.com/v3/__https:/mail.python.org/mailman/listinfo/python-list_
    _;!!Cn_UX_p3!ncQETnsgLM_I29jKwV8WUZPhvn7g3Q5jBnkT_S0CmOf0KCORpl5xSLtMM8ZtE8gMsORNxCKhq01pCww$>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From rbowman@21:1/5 to [email protected] on Fri Dec 9 21:56:34 2022
    On Fri, 9 Dec 2022 12:13:16 -0500 (EST), [email protected] wrote:

    How can I write my own Python Functions and subroutines in the new
    Python?

    Personally, I would go with VS Code:

    https://learn.microsoft.com/en-us/training/modules/python-install-vscode/

    It supports virtual environments nicely:

    https://code.visualstudio.com/docs/python/environments

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mats Wichmann@21:1/5 to rbowman on Fri Dec 9 15:38:59 2022
    On 12/9/22 14:56, rbowman wrote:
    On Fri, 9 Dec 2022 12:13:16 -0500 (EST), [email protected] wrote:

    How can I write my own Python Functions and subroutines in the new
    Python?

    Personally, I would go with VS Code:

    https://learn.microsoft.com/en-us/training/modules/python-install-vscode/

    It supports virtual environments nicely:

    https://code.visualstudio.com/docs/python/environments

    Possibly in some previous setup, IDLE was the thing you opened. IDLE
    *is* an IDE - maybe not the fanciest one available, but it's written in
    Python and comes with the Python distribution. I don't disagree with
    the two fine editors/IESs suggested previously (I use both of them, in
    slightly different circumstances), but IDLE works well too.

    Try telling windows to find and open idle and see if that's more what
    you are expecting?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Thomas Passin@21:1/5 to [email protected] on Fri Dec 9 17:36:10 2022
    It sounds like on your old computer, you used some kind of program to
    write python code and perhaps to run it too. It would help if you could
    say what that program was. Python itself - the actual program called "python.exe" on Windows - runs a Python interpreter inside a Windows
    console window. That's what you see when you run "python". You
    probably would like to run the same editor as you used on the old
    computer, but unless you can say what that program was, we can't help
    you. The best we can do is to suggest various alternative programs and editors, as several people have already done.

    On 12/9/2022 12:13 PM, [email protected] wrote:


    Hello. I've downloaded the new Python to my new Computer, and the new Python mystifies me.

    Instead of an editor, it looks like a Dos executable program.

    How can I write my own Python Functions and subroutines in the new Python?

    It is version 3.11 (64 bit).

    Kermit




    -----Original Message-----
    From: [email protected]
    Sent: Friday, December 9, 2022 12:00pm
    To: [email protected]
    Subject: Python-list Digest, Vol 231, Issue 9



    Send Python-list mailing list submissions to
    [email protected]

    To subscribe or unsubscribe via the World Wide Web, visit
    https://mail.python.org/mailman/listinfo/python-list
    or, via email, send a message with subject or body 'help' to
    [email protected]

    You can reach the person managing the list at
    [email protected]

    When replying, please edit your Subject line so it is more specific
    than "Re: Contents of Python-list digest..."


    Today's Topics:

    1. Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully? (Jach Feng)
    2. Re: Nonuniform PRNG? (Stefan Ram)
    3. Panoptisch - A way to understand your project's dependencies
    and find malicious packages (Aarnav Mahavir Bos)
    4. MinecraftEdu (Jelena Ili?)
    5. Re: MinecraftEdu (Cameron Simpson)
    6. Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully? (Jach Feng)
    7. Re: Panoptisch - A way to understand your project's
    dependencies and find malicious packages (Axy)
    8. Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully? (Weatherby,Gerard)
    9. Re: Panoptisch - A way to understand your project's
    dependencies and find malicious packages (Dan Kolis)


    ----------------------------------------------------------------------

    Message: 1
    Date: Thu, 8 Dec 2022 00:56:42 -0800 (PST)
    From: Jach Feng <[email protected]>
    To: [email protected]
    Subject: Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully?
    Message-ID: <[email protected]> Content-Type: text/plain; charset="UTF-8"

    Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????
    s0 = r'\x0a'
    At this moment it was done by

    def to1byte(matchobj):
    ....return chr(int('0x' + matchobj.group(1), 16))
    s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0)

    But, is it that difficult on doing this simple thing?

    --Jach
    I find another answer on the web.

    s0 = r'\x0a'
    s0.encode('Latin-1').decode('unicode-escape')
    '\n'


    ------------------------------

    Message: 2
    Date: 8 Dec 2022 12:17:22 GMT
    From: [email protected] (Stefan Ram)
    To: [email protected]
    Subject: Re: Nonuniform PRNG?
    Message-ID: <[email protected]>
    Content-Type: text/plain; charset=UTF-8

    "Robert E. Beaudoin" <[email protected]> writes:
    One thing you could do is to apply von Neumann de-biasing to convert a
    string of output bits from your biased PRNG to an unbiased string, and
    test the de-biased output.

    Some non-uniform generators are based on uniform generators
    whose output then is warped by the application of some function.

    If one has access to the underlying uniform generator used,
    one can test this with the algorithms for uniform generators.




    ------------------------------

    Message: 3
    Date: Thu, 8 Dec 2022 18:52:29 +0100
    From: Aarnav Mahavir Bos <[email protected]>
    To: [email protected]
    Subject: Panoptisch - A way to understand your project's dependencies
    and find malicious packages
    Message-ID:
    <CAGKp6MyQYVrxmYr4gNzuSNx53v=[email protected]> Content-Type: text/plain; charset="UTF-8"

    Hello all,

    I would like to share Panoptisch, a FOSS(Free and Open Source Software)
    tool I've been working on.

    We all may have encountered the issue of not having a clear dependency tree or not being sure of the modules our dependencies and sub-dependencies are using.

    Some of us may have also heard of supply chain attacks, where open source projects are hijacked to distribute malicious code masquerading as the original package. This can happen deep down in the dependency chain.

    Panoptisch was born out of the need to accurately verify the modules used
    in my project.
    It recursively scans a Python module or file to find modules used and
    exports a report in JSON which can be parsed for analysis.

    For example, should your yaml parser, or it's sub-dependencies import socket/os? should your markdown renderer or it's sub-dependencies import sys/importlib? *Probably not.*

    Panoptisch is in early stages, has known limitations and is looking for
    help! I would love feedback, contributions, and most important of all, rigorous testing!

    I would also love to help you integrate this tool in your workflow to write more secure software.

    Link: https://github.com/R9295/panoptisch
    Short Demo: https://www.youtube.com/watch?v=bDJWl_odXx0

    Thanks and Regards,
    aarnav


    ------------------------------

    Message: 4
    Date: Thu, 8 Dec 2022 12:12:47 -0800 (PST)
    From: Jelena Ili? <[email protected]>
    To: [email protected]
    Subject: MinecraftEdu
    Message-ID: <[email protected]> Content-Type: text/plain; charset="UTF-8"

    Hello,
    I'm new to MinecraftEDU programming with Python. I'm wondering if anyone can recommend how to get started with creating lessons and how to get started programming in MinecraftEDU?


    ------------------------------

    Message: 5
    Date: Fri, 9 Dec 2022 08:26:12 +1100
    From: Cameron Simpson <[email protected]>
    To: Jelena Ili? <[email protected]>
    Cc: [email protected]
    Subject: Re: MinecraftEdu
    Message-ID: <[email protected]>
    Content-Type: text/plain; charset=utf-8; format=flowed

    On 08Dec2022 12:12, Jelena Ili? <[email protected]> wrote:
    I'm new to MinecraftEDU programming with Python. I'm wondering if
    anyone can recommend how to get started with creating lessons and how
    to get started programming in MinecraftEDU?

    Had you started here? https://education.minecraft.net/en-us/resources/computer-science-subject-kit/python-101

    That's just from a web search, I've not used it.

    Cheers,
    Cameron Simpson <[email protected]>


    ------------------------------

    Message: 6
    Date: Thu, 8 Dec 2022 18:05:02 -0800 (PST)
    From: Jach Feng <[email protected]>
    To: [email protected]
    Subject: Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully?
    Message-ID: <[email protected]> Content-Type: text/plain; charset="UTF-8"

    Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????
    s0 = r'\x0a'
    At this moment it was done by

    def to1byte(matchobj):
    ....return chr(int('0x' + matchobj.group(1), 16))
    s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0)

    But, is it that difficult on doing this simple thing?

    --Jach
    The whold story is,

    I had a script which accepts an argparse's positional argument. I like this argument may have control character embedded in when required. So I make a post "How to enter escape character in a positional string argument from the command line? on DEC05.
    But there is no response. I assume that there is no way of doing it and I have to convert it later after I get the whole string from the command line.

    I made this convertion using the chr(int(...)) method but not satisfied with. That why this post came out.

    At this moment the conversion is done almost the same as Peter's codecs.decode() method but without the need of importing codecs module:-)

    def to1byte(matchobj):
    ....return matchobj.group(0).encode().decode("unicode-escape")


    ------------------------------

    Message: 7
    Date: Fri, 9 Dec 2022 03:49:58 +0000
    From: Axy <[email protected]>
    To: [email protected]
    Subject: Re: Panoptisch - A way to understand your project's
    dependencies and find malicious packages
    Message-ID: <[email protected]> Content-Type: text/plain; charset=UTF-8; format=flowed

    On 08/12/2022 17:52, Aarnav Mahavir Bos wrote:
    Hello all,

    I would like to share Panoptisch, a FOSS(Free and Open Source Software)
    tool I've been working on.

    Hi there,

    I added your project to my watch list, keep on your work.

    A couple of points:

    First, I glanced at the code and in the very first file I opened, https://github.com/R9295/panoptisch/blob/master/panoptisch/__init__.py,
    I see main(). I usually place such a code in __main__.py

    Second, in addition to AST analysis it would be nice to implement a
    sandbox with import hooks.

    Axy.



    ------------------------------

    Message: 8
    Date: Fri, 9 Dec 2022 13:29:06 +0000
    From: "Weatherby,Gerard" <[email protected]>
    To: Jach Feng <[email protected]>, "[email protected]"
    <[email protected]>
    Subject: Re: How to convert a raw string r'\xdd' to '\xdd' more
    gracefully?
    Message-ID:
    <SA1PR14MB5855E3DF0336F514B506CAF9B91C9@SA1PR14MB5855.namprd14.prod.outlook.com>

    Content-Type: text/plain; charset="iso-2022-jp"

    That?s actually more of a shell question than a Python question. How you pass certain control characters is going to depend on the shell, operating system, and possibly the keyboard you?re using. (e.g. https://www.alt-codes.net).

    Here?s a sample program. The dashes are to help show the boundaries of the string

    #!/usr/bin/env python3
    import argparse
    import logging


    parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser.add_argument('data')
    args = parser.parse_args()
    print(f'Input\n: -{args.data}- length {len(args.data)}')
    for c in args.data:
    print(f'{ord(c)} ',end='')
    print()


    Using bash on Linux:

    ./cl.py '^M
    '
    Input
    -
    - length 3
    13 32 10


    From: Python-list <python-list-bounces+gweatherby=[email protected]> on behalf of Jach Feng <[email protected]>
    Date: Thursday, December 8, 2022 at 9:31 PM
    To: [email protected] <[email protected]>
    Subject: Re: How to convert a raw string r'xdd' to 'xdd' more gracefully?
    *** Attention: This is an external email. Use caution responding, opening attachments or clicking on links. ***

    Jach Feng ? 2022?12?7? ?????10:23:20 [UTC+8] ??????
    s0 = r'\x0a'
    At this moment it was done by

    def to1byte(matchobj):
    ....return chr(int('0x' + matchobj.group(1), 16))
    s1 = re.sub(r'\\x([0-9a-fA-F]{2})', to1byte, s0)

    But, is it that difficult on doing this simple thing?

    --Jach
    The whold story is,

    I had a script which accepts an argparse's positional argument. I like this argument may have control character embedded in when required. So I make a post "How to enter escape character in a positional string argument from the command line? on DEC05.
    But there is no response. I assume that there is no way of doing it and I have to convert it later after I get the whole string from the command line.

    I made this convertion using the chr(int(...)) method but not satisfied with. That why this post came out.

    At this moment the conversion is done almost the same as Peter's codecs.decode() method but without the need of importing codecs module:-)

    def to1byte(matchobj):
    ....return matchobj.group(0).encode().decode("unicode-escape")
    -- https://urldefense.com/v3/__https://mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!hcg9ULzmtVUzMJ87Emlfsf6PGAfC-MEzUs3QQNVzWwK4aWDEtePG34hRX0ZFVvWcqZXRcM67JkkIg-l-K9vB$<https://urldefense.com/v3/__https:/mail.python.org/mailman/listinfo/
    python-list__;!!Cn_UX_p3!hcg9ULzmtVUzMJ87Emlfsf6PGAfC-MEzUs3QQNVzWwK4aWDEtePG34hRX0ZFVvWcqZXRcM67JkkIg-l-K9vB$>


    ------------------------------

    Message: 9
    Date: Fri, 9 Dec 2022 07:38:57 -0800 (PST)
    From: Dan Kolis <[email protected]>
    To: [email protected]
    Subject: Re: Panoptisch - A way to understand your project's
    dependencies and find malicious packages
    Message-ID: <[email protected]> Content-Type: text/plain; charset="UTF-8"

    I think it needs a built in viewer or at least a human readable output, or nobody will go through the trouble to use it.

    Other that that, maybe a pretty good idea, sure



    ------------------------------

    Subject: Digest Footer


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)