1.0 roadmap

question

#1

I’m pitching julia for a major project right now, and any information I could get about the current plans for 1.0 would help enormously. Here are some specific questions, I understand that some of them probably don’t have firm answers at this point, but even the current thinking would help me:

  • What is the current plan for a timeline? I assume that the original plan of 1.0 at juliacon 2017 is off the table? Any more recent thoughts on that?
  • Will 1.0 deprecate things? If I understand the current deprecation guidelines, anything that runs on julia 0.6 without deprecation warnings should run on 1.0, right? Because anything that didn’t throw deprecation warnings on 0.6 won’t be removed from 1.0? But will 1.0 deprecate new things, or was all of that done in 0.6?
  • I looked at the 1.0 milestone on github, and that seems like a very long list. Has that list just accumulated all the things that were perpetually moved back, or is this a triaged list of things that actually are planned for 1.0?

In any case, any thoughts from the core group about any of this would really help me right now.

Best,
David


#2

If possible, I would like some kind of an update on the “big points”. For reference, the last big list (that I know of) was given at the last JuliaCon:

Pkg3 was mentioned as slated for 1.0 not too long ago.

The key points I think that haven’t been mentioned are:

  • Array buffers
  • Default packages / standard library
  • Conditional modules

Is all of this still slated for v1.0 (of course, barring magical PR by new contributor)? It seems like that would be a lot to fit in.


#3
  • What is the current plan for a timeline? I assume that the original plan of 1.0 at juliacon 2017 is off the table? Any more recent thoughts on that?

That timeline is still roughly on track. We probably won’t have 1.0 final out by JuliaCon, but 1.0-alpha is entirely possible.

  • Will 1.0 deprecate things? If I understand the current deprecation guidelines, anything that runs on julia 0.6 without deprecation warnings should run on 1.0, right? Because anything that didn’t throw deprecation warnings on 0.6 won’t be removed from 1.0? But will 1.0 deprecate new things, or was all of that done in 0.6?

There are a few things that we didn’t deprecate in 0.6 that we know we need to take out in 1.0:

  1. Old-style type declarations: immutable ... end and type ... end will be removed and you will need to write struct ... end and mutable struct ... end instead.

  2. Parametric constructor syntax will change but if you write all parametric methods with where clauses, then you’re in the clear.

I can’t think of any others, but we may find that there’s some changes we need to make but didn’t anticipate sufficiently early. I’m optimistic that these will be fairly minimal.

  • I looked at the 1.0 milestone on github, and that seems like a very long list. Has that list just accumulated all the things that were perpetually moved back, or is this a triaged list of things that actually are planned for 1.0?

Yes, it’s been accumulating things for a rather long time. We’ll need to cull the list, which will itself be a lot of work.


#4

What is the current thinking? I assume alpha/feature freeze at juliacon is no longer the plan? Any update would be great.

Best,
David


#5

Yes, we’re definitely behind schedule at this point, so 1.0 will not be in alpha by JuliaCon. On the flip side, this will be the first time the merge window will be open during JuliaCon, so there’s a chance for lots of productive work accomplished while we’re there. Julia 1.0 by the end of the summer is still feasible and is what we’re planning for now. We’ll announce a more concrete timeline once 0.6 is released.


#6

Any news on v1.0 timeline?


#7

The milestones doesn’t have a due date set yet (but I’m not sure those are updated or who is in charge of estimating/goal setting)


#8

1.0 milestone is already 54% complete, I think we are very close. Maybe 3 or 4 months from now :slight_smile:


#9

@rsmaior Please don’t spread false/vague information just based on your impressions. 54% complete only means that 54% of marked issues have been closed, but that doesn’t say anything about how much time will be needed to fix the remaining ones. Only the core developers can tell when we can reasonably expect 1.0 to be released (and even for them it can be hard to know precisely).


#10

@nalimilan thanks for pointing this out, since people out there can interpret my comment as I had some trustable info about this. It’s not information, it’s my opinion (that’s why I used “I think we are very close”). And what I mean by “Maybe 3 or 4 months from now” was “Let’s hope 3 or 4 months from now”. Stefan itself said that 1.0 in the end of this summer was feasible, but I’m expecting that devs will try to deliver the best experience for 1.0 and it can take a little longer. Again IMO.

Anyway, don’t take me wrong, I’m just excited about this nice language and anxious about 1.0 release. I started using it with 0.3 version long ago and finally I can see the stable version near schedule.


#11

Just curious as to any updates on the 1.0 roadmap (I know estimations are probably difficult). Are we less than a year away?
My understanding is 0.7 is essentially going to be 1.0 but with deprecation warnings, so I guess the 0.7 release might be a better benchmark.
Thanks!


#12

Q4 this year is expected. There are 81 issues on the 1.0 milestone currently, several have corresponding PRs already.


DataFrames: why is `df[2,]` the same as `df[2]`?