Skip to content

Merge AePPL into logprob submodule #6334

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

Merged
merged 1 commit into from
Nov 25, 2022
Merged

Conversation

ricardoV94
Copy link
Member

@ricardoV94 ricardoV94 commented Nov 24, 2022

There are still some redundancies to clean, namely in distributions/transforms and distributions/logprob but this should get us 99% there.

TODO

  • Figure out if we want an explicit license note for this submodule

Major / Breaking Changes

  • PyMC no longer depends on Aeppl. Relevant dispatch methods can be found in pymc.logprob.abstract

@ricardoV94 ricardoV94 added logprob major Include in major changes release notes section labels Nov 24, 2022
@codecov
Copy link

codecov bot commented Nov 24, 2022

Codecov Report

Merging #6334 (5cd0c6a) into main (0654e7f) will decrease coverage by 0.11%.
The diff coverage is 91.61%.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #6334      +/-   ##
==========================================
- Coverage   94.26%   94.14%   -0.12%     
==========================================
  Files         111      132      +21     
  Lines       24004    26714    +2710     
==========================================
+ Hits        22627    25150    +2523     
- Misses       1377     1564     +187     
Impacted Files Coverage Δ
pymc/tests/logprob/test_joint_logprob.py 0.00% <0.00%> (ø)
pymc/tests/sampling/test_forward.py 100.00% <ø> (ø)
pymc/tests/logprob/utils.py 54.87% <54.87%> (ø)
pymc/logprob/tensor.py 87.03% <87.03%> (ø)
pymc/tests/logprob/test_scan.py 93.51% <93.51%> (ø)
pymc/logprob/joint_logprob.py 95.52% <95.52%> (ø)
pymc/logprob/rewriting.py 97.05% <97.05%> (ø)
pymc/logprob/scan.py 97.35% <97.35%> (ø)
pymc/logprob/abstract.py 97.56% <97.56%> (ø)
pymc/tests/logprob/test_tensor.py 99.24% <99.24%> (ø)
... and 37 more

@twiecki
Copy link
Member

twiecki commented Nov 24, 2022

We should probably add copyright notices at the top linking to aeppl.

@ricardoV94
Copy link
Member Author

We should probably add copyright notices at the top linking to aeppl.

Top of what? Each file?

@michaelosthege
Copy link
Member

We should probably add copyright notices at the top linking to aeppl.

Top of what? Each file?

I'd place the license in the __init__.py of the logprob module, and possibly also as a LICENSE.txt file inside the logprob module

At the top of each file we have license notices in other parts of the codebase too.

@ricardoV94
Copy link
Member Author

ricardoV94 commented Nov 24, 2022

At the top of each file we have license notices in other parts of the codebase too.

I am not a fan of those, do we need them as well?

@ricardoV94
Copy link
Member Author

BTW anyone feel free to push the license stuff, I would appreciate the help.

@michaelosthege
Copy link
Member

michaelosthege commented Nov 24, 2022

@ricardoV94 I amended the license stuff.

I also cancelled the CI because I didn't fix the tests. You can find the previous CI results with the error messages here: https://github.com/pymc-devs/pymc/actions/runs/3539685445

@twiecki
Copy link
Member

twiecki commented Nov 24, 2022

I amended the license stuff.

I think we should add it at the top of every new file we copy.

@Armavica
Copy link
Member

@ricardoV94 Out of curiosity what is the icdf story? Also it looks like you missed five documentation links in pymc/distributions/transforms.py (search for "aeppl")

@ricardoV94
Copy link
Member Author

ricardoV94 commented Nov 25, 2022

@ricardoV94 Out of curiosity what is the icdf story?

They already existed in Aeppl, I brought them to where we define the other distribution specific methods. Does that make sense?

Also it looks like you missed five documentation links in pymc/distributions/transforms.py (search for "aeppl")

I didn't want to touch those yet, but maybe I should. I haven't figured out where they should live...

@ricardoV94 ricardoV94 force-pushed the merge_aeppl branch 3 times, most recently from c1e5d3b to 811063c Compare November 25, 2022 10:40
@ricardoV94 ricardoV94 changed the title Merge aeppl into logprob submodule Merge AePPL into logprob submodule Nov 25, 2022
@ricardoV94 ricardoV94 marked this pull request as ready for review November 25, 2022 10:47
@twiecki
Copy link
Member

twiecki commented Nov 25, 2022

@brandonwillard @rlouf this is how we think licensing and attribution are correct. Please let us know if you disagree. We plan to merge by EOD. You can still give feedback after that of course.

@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@rlouf
Copy link
Contributor

rlouf commented Nov 25, 2022

For files that are copied almost verbatim you should paste the full license at the beginning of the file, is that what you suggested above?

For the record, that doesn't mean I am ethically ok with this or approve any of this, I am just making sure proper attribution is given.

@michaelosthege
Copy link
Member

For files that are copied almost verbatim you should paste the full license at the beginning of the file, is that what you suggested above?

Yes, at the top of all files in logprob we now have this notice:

#   MIT License
#
#   Copyright (c) 2021-2022 aesara-devs
#
#   The full transcript of the AePPL license can be found in pymc/logprob/LICENSE_AEPPL.txt

@twiecki
Copy link
Member

twiecki commented Nov 25, 2022

@michaelosthege I think @rlouf means to include the full license, not just a reference. I'm personally don't mind that. Did you have a reference for just referencing the license?

@michaelosthege
Copy link
Member

@michaelosthege I think @rlouf means to include the full license, not just a reference. I'm personally don't mind that. Did you have a reference for just referencing the license?

@lucianopaz looked it up, but I agree that we can just paste the whole thing.

While we're at it, we can also rebase on main, which should fix that flaky test.

@brandonwillard
Copy link
Contributor

People, stop tagging me on your work. I want nothing to do with any of your activities (PyMC or otherwise), and give absolutely no explicit or implicit approval or consent to any of it.

@twiecki, you in particular are well aware of this, but you keep doing it. I don't want to have to block you, but I definitely will. The same goes for any follow-ups to this comment.

@twiecki twiecki merged commit e0d25c8 into pymc-devs:main Nov 25, 2022
@ricardoV94 ricardoV94 deleted the merge_aeppl branch November 25, 2022 19:41
canyon289 added a commit that referenced this pull request Nov 29, 2022
@canyon289 canyon289 mentioned this pull request Nov 29, 2022
OriolAbril pushed a commit that referenced this pull request Nov 30, 2022
* Update GOVERNANCE.md

Remove per request #6334 (comment)

* Add to alumni

* Fix to make consistent
junpenglao pushed a commit to junpenglao/pymc that referenced this pull request Dec 1, 2022
* Update GOVERNANCE.md

Remove per request pymc-devs#6334 (comment)

* Add to alumni

* Fix to make consistent
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
logprob major Include in major changes release notes section
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants