Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gitchangelog.rc.reference not found #71

Closed
tantale opened this issue Feb 16, 2017 · 8 comments
Closed

gitchangelog.rc.reference not found #71

tantale opened this issue Feb 16, 2017 · 8 comments

Comments

@tantale
Copy link

tantale commented Feb 16, 2017

Hi,

I have just installed the last version of gitchangelog (version 2.5.1) on a Python 3.5 virtualenv (same with Python 2.7), but the command failed with the following message:

Config reference file '/Users/me/virtualenv/py-gitchangelog/lib/python3.5/site-packages/gitchangelog.rc.reference' not found.

Is this file missing in the library? Is it a packaging error?

How to reproduce:

$ mkvirtualenv -p python3 py-gitchangelog
Running virtualenv with interpreter /Library/Frameworks/Python.framework/Versions/3.5/bin/python3
[boring stuf...]

(py-gitchangelog) $ pip install gitchangelog
Collecting gitchangelog
Installing collected packages: gitchangelog
Successfully installed gitchangelog-2.5.1

(py-gitchangelog) $ pip list
Package      Version 
------------ --------
appdirs      1.4.0   
gitchangelog 2.5.1   
packaging    16.8    
pip          9.0.1   
pyparsing    2.1.10  
setuptools   34.2.0  
six          1.10.0  
wheel        0.30.0a0

(py-gitchangelog) $ cd ~/workspace/my_project
(py-gitchangelog) $ ls .gitchangelog.rc 
.gitchangelog.rc

(py-gitchangelog) $ gitchangelog 
Config reference file '/Users/me/virtualenv/py-gitchangelog/lib/python3.5/site-packages/gitchangelog.rc.reference' not found.

I'm on OS X.

@tantale
Copy link
Author

tantale commented Feb 16, 2017

I have no trouble with gitchangelog v2.4.1.

@vaab
Copy link
Owner

vaab commented Feb 16, 2017

Thank you for your interest. I'm in the process of releasing the v3.0.0 that should air in the following days. In the current master you'll find a revised packaging that should work in your setup. If you have the time to check it on your computer, this could help me ensure that it is working on OSX correctly.
Sorry for the inconvenience.

@vaab
Copy link
Owner

vaab commented Feb 16, 2017

BTW, what does your pip show -f gitchangelog says ?

@tantale
Copy link
Author

tantale commented Feb 16, 2017

$ pip show -f gitchangelog
Name: gitchangelog
Version: 2.5.1
Summary: gitchangelog generates a changelog thanks to git log.
Home-page: http://github.com/vaab/gitchangelog
Author: Valentin LAB
Author-email: valentin.lab@kalysto.org
License: UNKNOWN
Location: /Users/me/virtualenv/tmp/lib/python2.7/site-packages
Requires:
Files:
../../../bin/gitchangelog
../../../gitchangelog.rc.reference
../../../templates/mako/octobercms-plugin.tpl
../../../templates/mako/restructuredtext.tpl
../../../templates/mustache/markdown.tpl
../../../templates/mustache/restructuredtext.tpl
gitchangelog-2.5.1.dist-info/DESCRIPTION.rst
gitchangelog-2.5.1.dist-info/INSTALLER
gitchangelog-2.5.1.dist-info/METADATA
gitchangelog-2.5.1.dist-info/RECORD
gitchangelog-2.5.1.dist-info/WHEEL
gitchangelog-2.5.1.dist-info/entry_points.txt
gitchangelog-2.5.1.dist-info/metadata.json
gitchangelog-2.5.1.dist-info/top_level.txt
gitchangelog.py
gitchangelog.pyc

@tantale
Copy link
Author

tantale commented Feb 16, 2017

How you can check your packaging

Create a release, for instance a wheel (the new standard), avoid sdist:

python setup.py clean --all egg_info --tag-build="" -D bdist_wheel

Then create a new virtualenv for testing:

cd your/tmp/dir/
virtualenv dummy
source dummy/bin/activate
pip install -U pip setuptools wheel  # optional

Install your newly created package (located in the dist/ subdirectory):

pip install path/to/your/project/dist/gitchangelog-X.Y.Z-py3-none-any.whl

Then test it:

cd your/directory/with/gitchangelog/rc/
gitchangelog

Alternative

Use check-manifest

@vaab
Copy link
Owner

vaab commented Feb 17, 2017

Looking at your gitchangelog -f, I confirm the location of gitchangelog.rc.reference is not what it was expected (and this changes depending on a lot of factors). I confirm also that this was tackled in the master branch. This is related to the very poor and changing support of the combination of 2 facts:

  • I'm using one-file packages (that was claimed to be supported, but is not)
  • And the usage of "data_file" with an hack (an option that was necessary fore one-file packages to get their data files correctly placed, a quite common situation, django was using it for instance - a long time ago).

So I had to change gitchangelog to full-package, forced by the unfortunately ill situation of python packaging. This was done a few days before, and I introduced a full matrix that tests a huge combinations of setuptools versions, python versions, ways of installation (pip install, python setup.py, usage of whl or tar.gz, usage from source), wether you are in a virtualenv or not... And this is working with the last version (un-released yet) and showed lot of inconsistencies, but the last version proposed seems to work (except with v3.6 and old versions of python packagings packages, which is a unlikely combination).
And, BTW, I wanted to integrate check-manifest to my evergrowing lists of tests around the packaging, and it doesn't work for some reason... I'm not that surprised TBH, and feel quite secure with my last test matrix.
Although I don't have cross platform testing done, and I couldn't test this on OSX, I'm not expecting big problems now. So you can install it through::

 pip install git+git://github.com/vaab/gitchangelog.git

I'm not sure that your 2.4.1 was working as expected (despite working in your case), I forced the check on existence of gitchangelog.rc.reference in 2.5.1, and you could avoid having it in 2.4.1 only if you provided a complete .gitchangelog.rc. Your current report makes me feel uneasy now with this last move, and I might move towards the support of not having access to gitchangelog.rc.reference and provide consistent docs about it if it runs into trouble because of that.

@vaab
Copy link
Owner

vaab commented Feb 17, 2017

The PR for the new merged packaging is #67
The distribution checks are located in the last part of the travis file : https://github.com/vaab/gitchangelog/blob/master/.travis.yml
This is not interpreted by travis but by a local tool I use before releasing.

@vaab
Copy link
Owner

vaab commented Mar 17, 2017

I'm happy to announce that version 3.0.0 that was just released and have dealt with packaging issues.

@vaab vaab closed this as completed Mar 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants