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

Streamline conda package release for Tax-Calc / OG-USA and others #1158

Closed
PeterDSteinberg opened this issue Jan 25, 2017 · 9 comments
Closed

Comments

@PeterDSteinberg
Copy link
Contributor

PeterDSteinberg commented Jan 25, 2017

This is a reminder to either 1) fix the distribution folder in Tax-Calculator, OG-USA to be more general, or 2) get conda forge builds working. Currently the conda package build and upload scripts have a couple hardcoded sections that need to change, and it would be easy to build the packages for all Python versions, rather than just 2.7. Also, make corresponding changes in the Wiki for each repo.

@PeterDSteinberg
Copy link
Contributor Author

This issue is somewhat related to #1118

@PeterDSteinberg
Copy link
Contributor Author

PeterDSteinberg commented Feb 10, 2017

TODO ( @MattHJensen - this list captures our discussion from #1180 ):

  • Make a new repo in Github open-source-economics Github org that is public. @MattHJensen - I think you will need to create the repo. A name might be taxbrain-builder or similar since it will build taxcalc, ogusa, btax, and the future package we will create to abstract some of the model logic out of webapp-public.
  • Move logic that is currently in the distribution directories of Tax-Calculator, OG-USA to the new builder repo in open-source-economics
  • EDIT (I removed this TODO item based on the comments at the bottom of this issue) Modify conda recipe in Tax-Calculator to be based on programmatically reading environment.yml and inserting dependencies in meta.yaml (See also add mock as a requirement of Tax-Calc conda recipe and environment.yml #1180 discussion)
  • Close PRs / issues related to conda-forge
  • Document package build process

@MattHJensen
Copy link
Contributor

MattHJensen commented Feb 10, 2017

@PeterDSteinberg, this looks right to me. Here's the policybrain-builder repo. Could you wait on this project until after webapp milestones b3, though? Getting through b2 and b3 ought to be high priorities right now.

@PeterDSteinberg
Copy link
Contributor Author

Delaying until after b3 sounds good to me @MattHJensen

@martinholmer
Copy link
Collaborator

@PeterDSteinberg listed this to-do item in the discussion of Tax-Calculator issue #1158:

Modify conda recipe in Tax-Calculator to be based on programmatically reading environment.yml and inserting dependencies in meta.yaml (See also #1180 discussion)

I'm not sure this is a good idea. The environment.yml file specifies the development and testing environment, while conda.recipe/meta.yaml specifies the execution environment (with no testing) of the taxcalc package. These two environments need not be the same, which is what this to-do item would impose.

I'd suggest you take it off your list of things to do and also check a number of other boxes that seem to have been implements in the new policybrain-builder repository.

@MattHJensen

@PeterDSteinberg
Copy link
Contributor Author

@martinholmer - Most of the items of the checklist above had been completed, but I had not circled back to this issue. Regarding your comment above, I agree at this point it would be easier to keep the meta.yaml and environment.yml logic separate. In that case, this comment is a reminder for everyone when you change a package dependency or its version in the environment.yml or conda.recipe, you must make that change in both the conda.recipe and the envrionment.yml, otherwise some of us may be running with different requirements' versions.

cc @MattHJensen @jdebacker @brittainhard

@martinholmer
Copy link
Collaborator

@PeterDSteinberg said in the conversation around issue #1158:

I agree at this point it would be easier to keep the meta.yaml and environment.yml logic separate. In that case, this comment is a reminder for everyone when you change a package dependency or its version in the environment.yml or conda.recipe/meta.yaml, you must make that change in both the conda.recipe/meta.yaml and the envrionment.yml files, otherwise some of us may be running with different requirements' versions.

Agreed! Thanks for spelling out the details of this to make it crystal clear.

Now that you have circled back to issue #1158, what is its status?
Can it be closed with a pointer to the work being done in the policybrain-builder repo?

@MattHJensen @PeterDSteinberg @brittainhard @jdebacker @rickecon @GoFroggyRun

@PeterDSteinberg
Copy link
Contributor Author

Closing this issue. If you have questions about environment.yml, conda.recipe/meta.yaml for any of the packages, see the policybrain-builder repo and the corresponding Jenkins job. If you need access to the Jenkins worker or help with policybrain-builder, let me know. When running policybrain-builder, feel free to message me to check the pushed packages, and remember to look into whether you are pushing to the dev or main label of ospc.

@martinholmer
Copy link
Collaborator

@PeterDSteinberg, Thanks!

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

3 participants