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

Julia 0.7-DEV version #52

Closed
Nosferican opened this issue Apr 9, 2018 · 11 comments
Closed

Julia 0.7-DEV version #52

Nosferican opened this issue Apr 9, 2018 · 11 comments

Comments

@Nosferican
Copy link
Contributor

I was wondering if anyone was working on getting a release of StatsModels for Julia 0.7-DEV. Getting a 0.7-DEV version should be pretty straightforward if we drop the statsmodels.jl DataFrame wrapper and delegations. That should also help towards eventually dropping exclusive dependency on DataFrames and supporting multiple tabular data representations (e.g., getting a stream of Named Tuples for the ModelFrame). One argument if favor of discontinuing future development for 0.x.y versions and focusing on 1.x.y is that no new features are being developed as part of the plans to re-write the Terms representation and ModelBuilder pipeline which will not happen in the near future and most likely after 0.7 / 1.0 is released.

@kleinschmidt
Copy link
Member

I don't know of any active work on this direction (or how hard it would be to make the current implementation work with 0.7-DEV), but it would be a major problem if 0.7/1.0 is released and there isn't a working statsmodels package.

@nalimilan
Copy link
Member

Is there any reason to think that porting the package to 0.7 would be difficult? I wouldn't think so. I'd be inclined to port it with minimal changes, since the deeper improvements (generic streaming API...) are not likely to be ready soon.

@Nosferican
Copy link
Contributor Author

The idea is that since new development is not expected to occur until well after 1.x.y, the extra effort to port a compatible version with 0.x.y versions will not add any value. Would any user that wants the new systems need to use 0.x.y versions? Very unlikely. It would also help to migrate code that uses Nullable to Missing and Nothing from Base.

@nalimilan
Copy link
Member

I don't understand. What makes you think we'll be able to stop development soon? Also, what has Nullable to do with it?

@Nosferican
Copy link
Contributor Author

Releasing a 0.7-DEV version compatible with 0.6 makes sense only if one believes that future developments will occur while users still use 0.6, no? If the future developments will not occur before the release of 1.x.y versions and the ecosystem updated to use 1.x.y versions there is no value to doing a compatible version. If we keep the DataFrameRegressionModel for now then it might be worthwhile to do a compatible release since the Julia 0.6 version could break (e.g., StatsBase stderr -> stderror). If we drop DataFrameRegressionModel as a first step to transition to a less DataFrames dependent solution, then there wouldn't be a need for a compatible version. The Nullable if not mistaken were the go-to solution from Base, but since Void changed to Nothing and added Missing, those are the preferred ways to represent what StatsModels used Nullable for.

@kleinschmidt
Copy link
Member

kleinschmidt commented Apr 10, 2018

I don't see any reason why we can't support 0.7 while also supporting 0.6. Compat makes that pretty easy...it's just a matter of someone finding the time to fix things and clean up deprecations. The last build (which is a few months old) failed because of statsbase, but that's 0.7 compatible now.

The only things that nullables are used for are internally in the contrast matrix code which isn't hurting anyone (or even exposed to users, unless they're really digging), so there's no real reason to change that (unless we really feel strongly about not having a nullables dependency since it's moving out of base AFAIK)

@nalimilan
Copy link
Member

I agree with @kleinschmidt. The stderr change needs to be backported to 0.6 anyway if StatsBase renames the function. The Nullable breakage has been dealt with already, at least for the public API. Finally, I don't see any short-term perspective which would allow us to drop DataFrameRegressionModel.

@kleinschmidt
Copy link
Member

See #53

@kleinschmidt
Copy link
Member

closed by 82d6a72

@Nosferican
Copy link
Contributor Author

It seems like StatsModels is still failing on nightly.

@kleinschmidt
Copy link
Member

master should be okay, unless nightly has changed since then. the badge shows the latest build, which is for #54 (and that failure is just because I can't figure out a way to test for a deprecation warning that works on both 0.6 and 0.7...)

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