[Python-ideas] New PEP proposal -- Pathlib Module Should Contain All File Operations -- version 2
Barry
barry at barrys-emacs.org
Sat Mar 17 16:34:23 EDT 2018
> On 17 Mar 2018, at 10:42, George Fischhof <george at fischhof.hu> wrote:
>
> Hi folks,
>
> I added the list of functions to the proposal, here is the new version.
>
> George
>
>
>
>
> PEP: 9999
> Title: Pathlib Module Should Contain All File Operations
> Author: George Fischhof <george at fischhof.hu>
> Status: Draft
> Type: Standards Track
> Content-Type: text/x-rst
> Created: 15-Mar-2018
> Python-Version: 3.8
> Post-History: 12-Mar-2018, 17-Mar-2018
>
>
> Abstract
> ========
>
> This PEP proposes pathlib module to be a centralized place for all
> file-system related operations.
>
>
> Rationale
> =========
>
> Right now we have several modules that contain functions related
> to file-system operations mainly the os, pathlib and shutil.
> For beginners it is quite hard to remember where can he / she find
> a function (copy resides in shutil, but the remove function can be
> found in the os module. (And sometimes developers with moderate
> experience have to check the documentation as well.)
>
> After the release of version 3.6 several methods became aware of
> path-like object. There are only a few ones which does not support
> the path-like object. After making these methods path-like object
> aware, these functions could be added to pathlib.
>
> With functions in pathlib the developers should not have to think
> on which method (function) can be found in which module.
>
> Makes the life easier.
>
>
> Implementation
> ==============
>
> For compatibility reasons the pathlib should contain wrappers to
> the original functions. The original functions should remain
> at their original place. (Or if pathlib contains the function, the
> original modules should have a wrapper to it.)
>
>
> List of mentioned functions
> ===========================
>
> * os.link => path.hardlink_to
> (should be named similarly to path.softlink_to)
>
> * os.mkfifo
>
> * os.readlink
>
> * os.remove
>
> * os.removedirs
> (shutil.rmtree has the same functionalaty)
I think you will find these to are a lot different.
>
> * os.truncate
>
> * shutil.copyfileobj
This function does not take paths as arguments. I guess it does not belong here.
>
> * shutil.copyfile
>
> * shutil.copymode
>
> * shutil.copystat
>
> * shutil.copy
>
> * shutil.copy2
>
> * shutil.copytree with shutil.ignore_patterns
>
> * shutil.move
>
> * shutil.disk_usage
>
> * shutil.chown
Is yout plan to also expose all the constants need to use chmod etc from pathlib?
>
> All functions from os module accept path-like objects,
> and none of the shutil functions.
Should shutils be improved to accept path-like first?
Barry
>
>
> Copyright
> =========
>
> This document has been placed in the public domain.
>
>
>
> ..
> Local Variables:
> mode: indented-text
> indent-tabs-mode: nil
> sentence-end-double-space: t
> fill-column: 70
> coding: utf-8
> End:
>
>
>
>
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20180317/86be5b78/attachment.html>
More information about the Python-ideas
mailing list