Products.MasterSelectWidget

Just thinking what add-ons I am going to use and liked the look of vs.org

One of its dependencies is Products.MasterSelectWidget and it wanted 0.4.8 whic would not install

My test is a vanilla 4.3.9 with only the hotfixes applied

Running Products.MasterSelectWidget-0.4.8\setup.py bdist_egg --dist-dir c:\users
\intran~1\appdata\local\temp\easy_install-pdtunt\Products.MasterSelectWidget-0.4
.8\egg-dist-tmp-cckq27
running bdist_egg
running egg_info
writing requirements to src\Products.MasterSelectWidget.egg-info\requires.txt
writing src\Products.MasterSelectWidget.egg-info\PKG-INFO
writing namespace_packages to src\Products.MasterSelectWidget.egg-info\namespace
packages.txt
writing top-level names to src\Products.MasterSelectWidget.egg-info\top_level.tx
t
writing dependency_links to src\Products.MasterSelectWidget.egg-info\dependency

links.txt
writing entry points to src\Products.MasterSelectWidget.egg-info\entry_points.tx
t
reading manifest file 'src\Products.MasterSelectWidget.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
Traceback (most recent call last):
File "", line 1, in
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 2248
, in main
File "C:\Plone43\python\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\Plone43\python\lib\distutils\dist.py", line 975, in run_commands
self.run_command(cmd)
File "C:\Plone43\python\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 391,
in run
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 621,
in easy_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 670,
in install_item
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 853,
in install_eggs
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1081
, in build_and_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1067
, in run_setup
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 246, in run_setup

File "C:\Plone43\python\lib\contextlib.py", line 34, in exit
self.gen.throw(type, value, traceback)
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 195, in setup_con
text
File "C:\Plone43\python\lib\contextlib.py", line 34, in exit
self.gen.throw(type, value, traceback)
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 166, in save_modu
les
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 141, in resume
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 154, in save_modu
les
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 195, in setup_con
text
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 243, in run_setup

File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 273, in run
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 242, in runner
File "build\bdist.win-amd64\egg\setuptools\sandbox.py", line 46, in _execfile
File "c:\users\intran~1\appdata\local\temp\easy_install-pdtunt\Products.Master
SelectWidget-0.4.8\setup.py", line 47, in
File "C:\Plone43\python\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\Plone43\python\lib\distutils\dist.py", line 975, in run_commands
self.run_command(cmd)
File "C:\Plone43\python\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "build\bdist.win-amd64\egg\setuptools\command\bdist_egg.py", line 152, in
run
File "C:\Plone43\python\lib\distutils\cmd.py", line 333, in run_command
self.distribution.run_command(command)
File "C:\Plone43\python\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "build\bdist.win-amd64\egg\setuptools\command\egg_info.py", line 186, in
run
File "build\bdist.win-amd64\egg\setuptools\command\egg_info.py", line 209, in
find_sources
File "build\bdist.win-amd64\egg\setuptools\command\egg_info.py", line 295, in
run
File "build\bdist.win-amd64\egg\setuptools\command\sdist.py", line 73, in __re
ad_template_hack
File "C:\Plone43\python\lib\distutils\command\sdist.py", line 336, in read_tem
plate
self.filelist.process_template_line(line)
File "C:\Plone43\python\lib\distutils\filelist.py", line 129, in process_templ
ate_line
(action, patterns, dir, dir_pattern) = self._parse_template_line(line)
File "C:\Plone43\python\lib\distutils\filelist.py", line 112, in _parse_templa
te_line
dir_pattern = convert_path(words[1])
File "C:\Plone43\python\lib\distutils\util.py", line 201, in convert_path
raise ValueError, "path '%s' cannot end with '/'" % pathname
ValueError: path 'docs/' cannot end with '/'
An error occurred when trying to install Products.MasterSelectWidget 0.4.8. Look
above this message for any errors that were output by easy_install.
While:
Installing instance.
Getting distribution for 'Products.MasterSelectWidget'.
Error: Couldn't install: Products.MasterSelectWidget 0.4.8

C:\Plone43>

Any suggestions TIA

This is a Windows compatibility problem regarding the direction of the path slashes, which are the opposite from Unix/OSX.

Try editing the following file and replacing all "/" with "". If that doesn't work you may try erasing the entire file content and then run buildout again.

Many thanks Davi,
That has broadened my understanding and taken me a little further down the line.

I downloaded the zip file from pypi, unzipped it in a distinct PloneAddon folder
Doing the edit just caused more line errors, but when I removed manifest.in I got solid compiling until

Installed c:\python26\lib\site-packages\products.masterselectwidget-0.4.8-py2.6.
egg
Processing dependencies for products.masterselectwidget==0.4.8
Searching for BTrees>=4.0.0dev
Reading https://pypi.python.org/simple/BTrees/
Best match: BTrees 4.3.1
Downloading https://pypi.python.org/packages/24/76/cd6f225f2180c22af5cdb6656f51a
ec5fca45e45bdc4fa75c0a32f161a61/BTrees-4.3.1.tar.gz#md5=cf6a994b54df253de2a74e05
904534c9
Processing BTrees-4.3.1.tar.gz
Writing c:\users\intran~1\appdata\local\temp\easy_install-d1cecd\BTrees-4.3.1\se
tup.cfg
Running BTrees-4.3.1\setup.py -q bdist_egg --dist-dir c:\users\intran~1\appdata
local\temp\easy_install-d1cecd\BTrees-4.3.1\egg-dist-tmp-ccmbzs

Creating library build\temp.win-amd64-2.6\Release\BTrees_fsBTree.lib and obj
ect build\temp.win-amd64-2.6\Release\BTrees_fsBTree.exp
LOBTree.c
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeModuleTemplate.c(89) : warning C4013: 'PyLong_AsLongLongAndOverflow' undefi
ned; assuming extern returning int
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeItemsTemplate.c(149) : warning C4244: '=' : conversion from 'Py_ssize_t' to
'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeItemsTemplate.c(231) : warning C4244: 'function' : conversion from 'Py_ssiz
e_t' to 'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeItemsTemplate.c(477) : warning C4244: 'return' : conversion from 'Py_ssize

t' to 'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BucketTemplate.c(1127) : warning C4244: 'initializing' : conversion from 'Py_ssi
ze_t' to 'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BucketTemplate.c(1277) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'i
nt', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BucketTemplate.c(1857) : warning C4267: '=' : conversion from 'size_t' to 'int',
possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
SetTemplate.c(117) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'int',
possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
SetTemplate.c(287) : warning C4244: 'function' : conversion from 'Py_ssize_t' to
'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeTemplate.c(1004) : warning C4244: 'initializing' : conversion from 'Py_ssiz
e_t' to 'int', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
BTreeTemplate.c(1184) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'in
t', possible loss of data
c:\users\intranetgwt\appdata\local\temp\easy_install-d1cecd\btrees-4.3.1\btrees
SetOpTemplate.c(492) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'int
', possible loss of data
_LOBTree.obj : warning LNK4197: export 'init_LOBTree' specified multiple times;
using first specification
Creating library build\temp.win-amd64-2.6\Release\BTrees_LOBTree.lib and obj
ect build\temp.win-amd64-2.6\Release\BTrees_LOBTree.exp
_LOBTree.obj : error LNK2019: unresolved external symbol PyLong_AsLongLongAndOve
rflow referenced in function longlong_check
build\lib.win-amd64-2.6\BTrees_LOBTree.pyd : fatal error LNK1120: 1 unresolved
externals
error: c:\users\intran~1\appdata\local\temp\easy_install-d1cecd\BTrees-4.3.1.eg
gs\persistent-4.2.0-py2.6-win-amd64.egg\persistent\cPersistence.pyd: Access is d
enied

C:\Plone43>

You're welcome! Let me offer another suggestion that will get you even further.

That error too seems related to the compilation on Windows, I'd guess something related to permissions (might need to run buildout as Administrator) or compilation dependencies (GCC/MinGW). You may workaround those but I think you're better off trying to work in Linux or OSX which are much more battle-tested systems.

Are you using the Unified Installer? Have you tried the Vagrant Kit as recommended for Windows users in https://plone.org/download/releases/5.0.4?

Hi Davi
I started in the MS environment as an end-user travel agent with the MS unified installer.(Plone 3.x)
I hear what you are saying, and will now dabble with the Vagrant Kit and Ubuntu as my Linux flavour.
Thank you again for responding.
Michael

btw, @IntranetGWT you haven't said what you want the masterselectwidget form, however in most cases where I need a form this complex I prefer to use Plomino. It's hidewhen feature allows you to create very complex skip logic and alternative selects based on selections. And once you have it installed, you don't need to muck around with filesystem packages for your integration code anymore. Plomino for plone 5 is in beta but is already being used in production - https://pypi.python.org/pypi/Products.CMFPlomino

Hi Dylan (Michael W in Adelaide)

I wanted to test out vs.org as an out of the box addon (as part of the value of a listing of addons dialogue)
https://pypi.python.org/pypi/vs.org/1.1.1
Products.MasterSelectWidget was a requirement

That's when I struck the OS problem because I am still using Microsoft Win7