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

0.2 release notes #2581

Closed
ViralBShah opened this issue Mar 16, 2013 · 85 comments
Closed

0.2 release notes #2581

ViralBShah opened this issue Mar 16, 2013 · 85 comments
Labels
docs This change adds or pertains to documentation
Milestone

Comments

@ViralBShah
Copy link
Member

I am starting this issue for two reasons - to start collecting items for Release Notes for 0.2. This will be continuously updated as the discussion progresses.

Current date for the 0.2 milestone is April 5.

Release Notes:

  1. Immutable types (implement immutable types #13)
  2. Functions that were deprecated in 0.1 are removed (include the list)
  3. varm, stdm (mean function on dimension #2265)
  4. getindex, setindex! (rename ref etc. to something less likely to conflict #1484, consider consistently using ! for mutating functions #907)
  5. Linear algebra updates (WIP: Linear Algebra bikeshedding #2212)
  6. Updates to the package manager
  7. Removal of extras (Plan for removing extras #2422)
  8. Named arguments (keyword arguments #485)
  9. Optional positional argument syntax (support C++ style default arguments? #1817)
  10. Explicit relative importing (import/using search order? #2375)
@mlubin
Copy link
Member

mlubin commented Mar 16, 2013

Might want to mention the change in the Expr syntax also.

@JeffBezanson
Copy link
Sponsor Member

Also check the bottom of base/deprecated.jl.

There's no need to list 0.2 dependencies in here; there's a milestone for that. And that list of 43 is looking pretty hopeless.

@wlbksy
Copy link
Contributor

wlbksy commented Mar 16, 2013

[i18n] beginnings of i18n support
example of usage: #2498 (comment)

@stevengj
Copy link
Member

@JeffBezanson
Copy link
Sponsor Member

  • indented multi-line strings
  • Other new functions: readandwrite, versioninfo, methodswith, logdet
  • names for C-compatible types: Cchar, Clong, etc.

@mlubin
Copy link
Member

mlubin commented Mar 20, 2013

Were keyword args bumped to 0.3?

@JeffBezanson
Copy link
Sponsor Member

It might be possible to put keyword args in 0.2, but the whole problem is what to do with the other 40 issues.

@johnmyleswhite
Copy link
Member

I think that officially supporting keyword args in 0.2 would be huge.

@mlubin
Copy link
Member

mlubin commented Mar 20, 2013

+1. I think many people would be fine with pushing the release back a week if needed because it's a huge feature that will change (improve) how libraries are written and used. Up to you guys though.

@ViralBShah
Copy link
Member Author

I feel that pushing 0.2 to a later release date to accommodate keyword arguments and resulting API changes is worthwhile. These changes become a lot more difficult to make later.

@ViralBShah
Copy link
Member Author

As for the 40 open issues, people just need to chip away at them. Can we have everyone look at the list and pick whichever ones they can fix, so that all issues have an owner who will fix them?

@ghost ghost assigned ViralBShah Mar 21, 2013
@johnmyleswhite
Copy link
Member

I can clean up logdet and add documentation for it.

@ViralBShah
Copy link
Member Author

The toughest part of the open issues is all the various package related issues - @StefanKarpinski and @pao will have to help us out on figuring out what all can be done by 0.2. It would be nice if the packages can stabilize for 0.2, and we can have all package maintainers update their packages to be compatible with 0.2. We may perhaps want to have a one week gap between tagging and announcing 0.2.

The rest of the issues are reasonably easy to tackle over the next 2 weeks, and we may have to push a couple out to 0.3. I have claimed a number of them.

@StefanKarpinski
Copy link
Sponsor Member

When did we even pick a date for 0.2? I don't recall doing that.

On Wed, Mar 20, 2013 at 11:54 PM, Viral B. Shah notifications@git.luolix.topwrote:

The toughest part of the open issues is all the various package related
issues - @StefanKarpinski https://github.com/StefanKarpinski and @paohttps://github.com/paowill have to help us out on figuring out what all can be done by 0.2. It
would be nice if the packages can stabilize for 0.2, and we can have all
package maintainers update their packages to be compatible with 0.2. We may
perhaps want to have a one week gap between tagging and announcing 0.2.

The rest of the issues are reasonably easy to tackle over the next 2
weeks, and we may have to push a couple out to 0.3. I have claimed a number
of them.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2581#issuecomment-15218251
.

@ViralBShah
Copy link
Member Author

It has kind of always been there. Someone surely picked it!

@JeffBezanson
Copy link
Sponsor Member

current requested fix rate: 3 issues/day
actual fix rate: 0/day
estimated finish: never

@vtjnash
Copy link
Sponsor Member

vtjnash commented Mar 28, 2013

The purpose of tagging 0.2 is to be able to generate updated, tagged binaries for windows (and other platforms). As such, I picked a monthly release schedule. My hope was that this would correspond to a reasonable period a time to get some work done between binaries, without letting binaries get too behind (since it is painful to compile from source sometimes). One month also roughly corresponded to the approximate period of time between binary releases last fall.

Also, Windows 64 binaries may be included in 0.2 (probably with beta status, until they get more usage)

@diegozea
Copy link
Contributor

diegozea commented Apr 4, 2013

Due date for 0.2 is today.
But Ubuntu 13.04 is launched on April 25.
Would be great a next stable release of Julia (0.2) for that date.
In order people can starting using Julia 0.1 with Ubuntu... and after look on Julia lang web page maybe opting for update to 0.2

@diegozea
Copy link
Contributor

diegozea commented Apr 4, 2013

[ Keyword args, Immutable types and support for new packages are good options for choose make an update ]

@andrioni
Copy link
Member

andrioni commented Apr 4, 2013

Unfortunately it won't be possible to target Ubuntu 13.04, as the feature freeze happened on March 7th.

@ViralBShah
Copy link
Member Author

Keyword args will have to settle for a while, as the APIs change to accommodate it. I am guessing that we should give it a month to shake things out.

Ubuntu 13.04 will ship with Julia 0.1.2. We will have PPAs for 0.2.

@andrioni
Copy link
Member

andrioni commented Apr 4, 2013

Viral, this means 0.2 will be delayed for around another month, as keyword args are already in the main tree? I want to know if I should bump a version in my packages to use keyword arguments (and then target the current HEAD and possibly 0.3) or I can already use them in the version targeting Julia v0.2.

@ViralBShah
Copy link
Member Author

I think you should be fine targeting Julia v0.2 for keyword argument support.

One thing we should do this time around is make sure that packages are ready for v0.2 before v0.2 is officially released.

@vtjnash
Copy link
Sponsor Member

vtjnash commented Apr 5, 2013

Can someone (probably @JeffBezanson) go ahead and tag a good commit as v0.2? Once that is done, I'll confirm functionality on windows and put up new binaries.

@JeffBezanson
Copy link
Sponsor Member

I don't think we're ready to tag. This was an arbitrarily-chosen day. There are probably a few more things we'd like to get in. But, I don't know if we will fix all 29 issues. Let's try to make the 0.2 milestone reflect what we will actually do.

@ViralBShah
Copy link
Member Author

Although we are not ready in any way for a 0.2 milestone, I think targeting May 1 as a target release date may be a good idea. I think the major features for 0.2 are in, but a lot more needs to be done on APIs due to kw args, general stability, package compatibility, etc.

@vtjnash
Copy link
Sponsor Member

vtjnash commented Apr 5, 2013

I don't mind just bumping these issues to 0.3, but I would really like to release a new windows binary soon (my goal is monthly, to keep pace with changes in julia -- the release notes already show significant additions). Possibly the tag should be the commit before kw args?

@pao
Copy link
Member

pao commented Apr 5, 2013

Last time we tried to hit an arbitrary date we rushed in a bunch of stuff and ended up with the Pkg mess we have now. If we want to call something "0.2 beta" so the Windows binaries can look more official, fine, but given the v0.1 disaster (yay broken stuff we have to support for who knows how long because we're in a distro) I can't figure out why this is a good idea.

@mlubin
Copy link
Member

mlubin commented Apr 5, 2013

Why not release snapshot binaries for windows?

@ViralBShah ViralBShah reopened this Aug 1, 2013
@JeffBezanson
Copy link
Sponsor Member

I figured it would typically be called NEWS.md

@staticfloat
Copy link
Sponsor Member

Or even CHANGELOG.md. (Man, the bikeshed principle really is true, isn't it!)

@stevengj
Copy link
Member

stevengj commented Aug 1, 2013

Usually, the ChangeLog would be a dump of git log, whereas NEWS would a human-written summary.

@staticfloat
Copy link
Sponsor Member

That's going to be a heck of a read. :) As long as we have a human-written summary somewhere, I don't care if we dump ~3K commits into a file. It'll be just like a dissertation; a document chronicling an amazing amount of work, that very few will understand, and even fewer will ever read.

@StefanKarpinski
Copy link
Sponsor Member

Let's skip the changelog – that's an artifact of an era before distributed version control gave everyone easy access to the full revision history.

@stevengj
Copy link
Member

stevengj commented Aug 2, 2013

readbytes and readbytes! functions (#3878)

writeable renamed to writable (#3874), and isreadable/iswritable functions added for more IO types (#3872)

@ViralBShah
Copy link
Member Author

I think a concise release notes that includes major features and changes is greatly useful. For Example, see LLVM release notes. We certainly do not need a changelog and for that, the commit history suffices.

@stevengj
Copy link
Member

stevengj commented Aug 8, 2013

flush_cstdio function (#3949)

Multimedia I/O API (display, writemime, etcetera): #3932

@StefanKarpinski
Copy link
Sponsor Member

New variable bindings on each for loop and comprehension iteration: #1571.

@andrioni
Copy link
Member

andrioni commented Sep 3, 2013

Rounding modes for floating point arithmetic: #3149

@stevengj
Copy link
Member

stevengj commented Sep 3, 2013

Would be better for people to submit pull requests against the NEWS file rather than in this issue...

@JeffBezanson
Copy link
Sponsor Member

Very true.

@JeffBezanson
Copy link
Sponsor Member

NEWS is in good shape now and we are nearing feature freeze so I think this is done.

@ViralBShah
Copy link
Member Author

Pinging everyone here to take a quick look at NEWS.md and add any updates in the last two months, which may deserve a mention.

@ivarne
Copy link
Sponsor Member

ivarne commented Oct 29, 2013

For those who like to click on links: https://github.com/JuliaLang/julia/blob/master/NEWS.md

@vtjnash
Copy link
Sponsor Member

vtjnash commented Oct 29, 2013

win64 support
improved backtraces on windows and mac

@timholy
Copy link
Sponsor Member

timholy commented Oct 29, 2013

If this is intended as the main way to announce the changes, can I suggest starting out with a paragraph that might be something like this:

The 0.2 release brings improvements to many areas of Julia. Among the
most visible changes are keyword arguments to functions, immutable
types, support for 64-bit Windows, a redesigned and polished package
manager, a multimedia interface supporting usage of Julia in IPython,
a built-in profiler, and major improvements to Julia's I/O and
parallel capabilities. These changes are accompanied by many others
adding new features, enhancing the library's consistency, and
improving performance. While not part of Julia proper, the package
ecosystem has also grown and matured considerably since the 0.1
release. See below for more information about the long list of
changes that improve Julia's usability and performance.

I hate to pick out a few items (so many awesome changes!), and I encourage others to redesign the balance here, but something more than a list seems warranted for such a major achievement!

@ViralBShah
Copy link
Member Author

+1

@timholy
Copy link
Sponsor Member

timholy commented Oct 29, 2013

@ViralBShah
Copy link
Member Author

I am reopening this issue temporarily to make sure that any new discussion that needs to be captured in NEWS.md is done before release.

@ViralBShah ViralBShah reopened this Oct 29, 2013
@timholy
Copy link
Sponsor Member

timholy commented Oct 29, 2013

I tweaked and pushed that paragraph, and also collected the specifics mentioned so far.

@StefanKarpinski
Copy link
Sponsor Member

I spent some time cleaning up the NEWS file last night. It's looking pretty solid at this point.

@staticfloat
Copy link
Sponsor Member

Are we good to cut an RC3 now? I don't see much on my end to put into NEWS.md now. (Thanks for that intro paragraph, Tim!)

@StefanKarpinski
Copy link
Sponsor Member

There's Ingmar Schuster's segfault bug that Jeff is working on and the type inference bug that Jameson opened today.

@StefanKarpinski
Copy link
Sponsor Member

Actually, the former is already taken care of: ceeade0. Now it's just the type conversion (not inference) business: #4681.

@timholy
Copy link
Sponsor Member

timholy commented Oct 31, 2013

Jeff seems to fix issues about as fast as they can be enumerated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs This change adds or pertains to documentation
Projects
None yet
Development

No branches or pull requests