Skip to content
New issue

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

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

Already on GitHub? # to your account

Drafting 4.1 Release #824

Closed
10 of 14 tasks
ProfFan opened this issue Jul 19, 2021 · 22 comments
Closed
10 of 14 tasks

Drafting 4.1 Release #824

ProfFan opened this issue Jul 19, 2021 · 22 comments
Assignees
Labels
wip This is still a work in progress
Milestone

Comments

@ProfFan
Copy link
Collaborator

ProfFan commented Jul 19, 2021

The develop branch has been pretty stable now, so it's high time that we actually release a version 4.1.0 of GTSAM.

The Python packages are now built automatically on https://github.com/borglab/gtsam-manylinux-build/actions. Please download the artifacts there and test with your code base.

Outstanding issues and PRs:

Nice to haves:

@varunagrawal @jlblancoc @gchenfc @dellaert and all,
feel free to add the issues and PRs you think are important to this list :)

@ProfFan ProfFan added the wip This is still a work in progress label Jul 19, 2021
@ProfFan ProfFan added this to the GTSAM 4.1 milestone Jul 19, 2021
@ProfFan ProfFan self-assigned this Jul 19, 2021
@jlblancoc
Copy link
Member

Sure! I just edited it to add the 2nd and 3rd items in the "nice to have" section ;-)

@varunagrawal
Copy link
Collaborator

System Eigen to ON? That seems suspect since we might get more issues about Eigen related errors from people who don't read error logs.

@ProfFan
Copy link
Collaborator Author

ProfFan commented Jul 25, 2021

It's twofold:

  • ON, and we get issues from people with bad Eigen installs
  • OFF, and we get issues from ABI compatibility and mysterious errors originated from different options of Eigen.

I think ON is slightly better, since these should mostly be it doesn't work type of issues...

@asa
Copy link
Contributor

asa commented Aug 1, 2021

Is there a python osx wheel I could test for this build? I can't seem to get it to build locally for me. Pip installs an old build (4.0.3).

@ProfFan
Copy link
Collaborator Author

ProfFan commented Aug 1, 2021

@asa https://github.com/borglab/gtsam-manylinux-build/actions

Click artifacts and download

@asa
Copy link
Contributor

asa commented Aug 1, 2021

I was able to do that and successfully install an artifact, thank you. These actions are not run on develop branch as far as I see however. I suppose a branch will be cut for 4.1 in a pr and the artifacts will be built then... Looks like I should keep banging on getting my local builds to work... These artifacts get me relatively recent bits though. Thanks!

@ProfFan
Copy link
Collaborator Author

ProfFan commented Nov 22, 2021

We are very close to doing a 4.1 release (since the PyPI packages are very out-of-date now). Currently we only need #188 blocking, but we do have a lot of nice-to-haves outstanding.

Pinging everyone here for a last sprint on getting more in the release :)

@varunagrawal @dellaert @lucacarlone @jlblancoc @acxz

@varunagrawal
Copy link
Collaborator

#368 is solved but needs some major documentation updates which will only be done in December. We can push it to the next release.

@lucacarlone
Copy link
Contributor

I'm happy to push on PR #861 if there is interest. It has been ready for a while, but I'll need to fix a CI error.

@jlblancoc
Copy link
Member

There's a remaining issue which might need to be listed as "must fix" before release: apparently, when building a subgraph by selecting factors from a FG and inserting them into a new FG, some kind of memory corruption happens.
I've been avoding this problem in an application by serializing-and-deserializing to a temporary file to ensure the new subgraph doesn't make the optimizer to crash, but I should put together a proper bug report with a minimal test case... I'll try to do it asap.

@ProfFan
Copy link
Collaborator Author

ProfFan commented Nov 25, 2021

@jlblancoc Could you post a PoC in an issue so we can help reproduce?

@lucacarlone
Copy link
Contributor

I think we have seen similar segfaults on our side. @jlblancoc : is this in conjunction with smart factors or also happens for other factors?

@jlblancoc
Copy link
Member

@ProfFan It was 100% reproducible in my app but now I can't reproduce it anymore so can't provide a PoC... I'll report in a new issue if it shows up again.
@lucacarlone Nope, it was with "non-smart" factors only...

@ProfFan
Copy link
Collaborator Author

ProfFan commented Dec 5, 2021

@jlblancoc Can you reproduce it? If not we may just do the release and fix in 4.1.1?

@ProfFan
Copy link
Collaborator Author

ProfFan commented Dec 5, 2021

Let's cut the release next Tuesday

@dellaert
Copy link
Member

dellaert commented Dec 5, 2021

That would be amazing. Note I do not want to change the default behavior of Eigen at this moment, at least not without extensive discussion on the pros and cons

@jlblancoc
Copy link
Member

@jlblancoc Can you reproduce it? If not we may just do the release and fix in 4.1.1?

@ProfFan Sure, go ahead.

@ProfFan
Copy link
Collaborator Author

ProfFan commented Dec 7, 2021

we may delay cutting branch due to #954

@dellaert
Copy link
Member

So, I have a proposal. I (rather recently) made an API breaking change in Discrete - which I thought only I was using, really, but it turns out @keevindoherty depends on 4.1 and Discrete. I want to probably make more API breaking changes, so I propose we silently cut a release of both GTSAM and the pypi wrapper right before that PR. Then the next API will include formatting and graphing support in python notebooks, and we can make a bigger deal of it as version 4.2.

@ProfFan
Copy link
Collaborator Author

ProfFan commented Dec 19, 2021

I am back from quals (yay!) so let's do that. I'll cut the branch, compile and release artifacts at the time @dellaert makes the call.

@dellaert
Copy link
Member

Great. Actually, before cutting anything, can we talk? I’ve since then also looked at the pypi distributions from GTSam, and I wonder whether we should tag versions that have the same version number. Send me an invite for tomorrow if you can make it

@ProfFan
Copy link
Collaborator Author

ProfFan commented Dec 20, 2021

4.1.1 is out! We'll do a bigger 4.2 shortly after the discrete changes per discussions w/ @dellaert .

@ProfFan ProfFan closed this as completed Dec 20, 2021
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
wip This is still a work in progress
Projects
None yet
Development

No branches or pull requests

6 participants