Thread: [pygccxml-development] Installing from cvs doesn't work
Brought to you by:
mbaas,
roman_yakovenko
From: Matthias B. <ba...@ir...> - 2006-04-09 12:58:24
|
Hi, the latest version of pyplusplus cannot be built/installed when the sources are obtained from cvs. Running the setup script for pyplusplus results in the following error: error: pyplusplus\scripts\CVS: Permission denied The problem is that in the setup script the entire contents of the scripts directory is passed to the "scripts" argument: , scripts= map( lambda script_name: os.path.join( 'pyplusplus', 'scripts', script_name ) , os.listdir( os.path.join( 'pyplusplus', 'scripts' ) ) ) This includes the directory "CVS" which leads to the above error. (My quick workaround was to remove the above two lines from the setup script. A proper fix would be to specify the files explicitly) - Matthias - |
From: Roman Y. <rom...@gm...> - 2006-04-09 13:05:28
|
On 4/9/06, Matthias Baas <ba...@ir...> wrote: > Hi, > > the latest version of pyplusplus cannot be built/installed when the > sources are obtained from cvs. > Running the setup script for pyplusplus results in the following error: > > error: pyplusplus\scripts\CVS: Permission denied > > The problem is that in the setup script the entire contents of the > scripts directory is passed to the "scripts" argument: > > , scripts=3D map( lambda script_name: os.path.join( 'pyplusplus', > 'scripts', script_name ) > , os.listdir( os.path.join( 'pyplusplus', > 'scripts' ) ) ) > > This includes the directory "CVS" which leads to the above error. > (My quick workaround was to remove the above two lines from the setup > script. A proper fix would be to specify the files explicitly) May be. I don't think/expect user/programmer to run setup_pyplusplus.py directly. I think he should run release_manager/release_builder.py and then to run setup.py from pyplusplusXXX directory. Is this wrong approach? > - Matthias - -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Matthias B. <ba...@ir...> - 2006-04-09 15:11:00
|
Roman Yakovenko wrote: > May be. I don't think/expect user/programmer to run > setup_pyplusplus.py directly. > I think he should run release_manager/release_builder.py and then to > run setup.py > from pyplusplusXXX directory. > > Is this wrong approach? Well, in my opinion it is. ;) The main reason is that it is non-standard. The standard way of dealing with an extension package is by using the distutils. This includes not only building and installing the package but also creating a source or binary distribution (see the "sdist" and "bdist_*" commands (setup.py --help-commands)). Some other reasons are that it takes much longer and is inconvenient when I just want to update the sources and apply those updates. - Matthias - |
From: Roman Y. <rom...@gm...> - 2006-04-09 16:58:09
|
On 4/9/06, Matthias Baas <ba...@ir...> wrote: > Roman Yakovenko wrote: > > May be. I don't think/expect user/programmer to run > > setup_pyplusplus.py directly. > > I think he should run release_manager/release_builder.py and then to > > run setup.py > > from pyplusplusXXX directory. > > > > Is this wrong approach? > > Well, in my opinion it is. ;) The main reason is that it is > non-standard. The standard way of dealing with an extension package is > by using the distutils. This includes not only building and installing > the package but also creating a source or binary distribution (see the > "sdist" and "bdist_*" commands (setup.py --help-commands)). > Some other reasons are that it takes much longer and is inconvenient > when I just want to update the sources and apply those updates. Are you able to build something similar to release manager with distutils? If so, can you spend some time and implement this. I will be glad to drop the usage of release manager. If not, I think I will release this version using release manager. > - Matthias - Thanks -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Matthias B. <ba...@ir...> - 2006-04-11 07:20:49
|
Roman Yakovenko wrote: >>> May be. I don't think/expect user/programmer to run >>> setup_pyplusplus.py directly. >>> I think he should run release_manager/release_builder.py and then to >>> run setup.py >>> from pyplusplusXXX directory. >>> >>> Is this wrong approach? >> Well, in my opinion it is. ;) The main reason is that it is >> non-standard. The standard way of dealing with an extension package is >> by using the distutils. This includes not only building and installing >> the package but also creating a source or binary distribution (see the >> "sdist" and "bdist_*" commands (setup.py --help-commands)). >> Some other reasons are that it takes much longer and is inconvenient >> when I just want to update the sources and apply those updates. > > Are you able to build something similar to release manager with distutils? > If so, can you spend some time and implement this. I will be glad to drop > the usage of release manager. ok, I'll give it a try... Where do you want to keep the version number? Did you just put it into __init__.py so that it is available somewhere during creating the distribution or is this also meant as a way for the user to determine the version at runtime? Maybe the documentation should be packaged separately. It would be ok to add them to the sources but I'm not aware that there is a standard location to install them. - Matthias - |
From: Roman Y. <rom...@gm...> - 2006-04-11 07:34:21
|
On 4/11/06, Matthias Baas <ba...@ir...> wrote: > Roman Yakovenko wrote: > ok, I'll give it a try... Thank you. If you don't have time, we can do it for next release. > Where do you want to keep the version number? Did you just put it into > __init__.py so that it is available somewhere during creating the > distribution or is this also meant as a way for the user to determine > the version at runtime? The first one. Until now I did not get requests to expose version as public variable. If it will be requested I will do that. > Maybe the documentation should be packaged separately. It would be ok to > add them to the sources but I'm not aware that there is a standard > location to install them. I did not add documentation to the sources. The structure I propose is next= : __next_release__ / package_name + version number / setup.py docs / examples / unittests / package / only sources needed to use package + scripts So if you run setup.py it will install only the package, nothing more. If you run release_builder.py you will see it. > - Matthias - -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |