Allow tracking custom dependencies files

Issue #24 resolved
Fernando Alvarez created an issue

On most of our Python projects we have the requirments splitted in a requirements.txt, which containes the main dependencies of the project, and requirements_test.txt which list all test-related dependencies, plus the requirements.txt itself.

Currently, having this setup, I can only track my dependencies for requirements.txt file:

Selection_071.png

I'd like to select more files within my project, e.g. requirements_test.txt.

There it goes my 2 cent. Thanks for the awesome work!

Comments (8)

  1. Robert Reiz

    I get your point. The problem is we don't want to display ALL files in the repository because that would be messy. We have a list of file names which we filter out and display in the UI. Maybe we could display all files which match /requirements\S.text/. What do you think? Would that solve your problem?

  2. Fernando Alvarez reporter

    Hi Robert, thanks for the quick response. Yes, that would solve the problem for Python. There isn't any clear convention on this, I've seen requirements_tests.txt, requirements-test.txt, etc., yet that pattern you propose would address all cases. Did you have any similar request for another languages, i.e. dependencies files without a fixed name?

  3. Robert Reiz

    OK. For other languages I didn't had similar requests. Most other package managers don't support multiple files. Maven for Java is an exception. But for Maven we have the VersionEye Maven Plugin which resolves all files on localhost or CI and updates the project via the VersionEye API. Not sure if PIP has a plugin system where you could implement a VersionEye plugin.

  4. Fernando Alvarez reporter

    I don't know either. But including requirements*.txt files would make totally sense.

    EDIT: We just thought about a sensible approach to solve that problem. You can create a versioneye python package, that would read a config file, e.g. .versioneye, where you specify the files to track and maybe other settings, and each time you execute the versioneye command, it would send the current dependencies on these files to your API and update the project status accordingly. That would be very handy to integrate with CI systems like Travis or Jenkins to run before or after the build. Anyway, I still support the idea of adding requirements*.txt files.

  5. Log in to comment