-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
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
Plan for removing extras #2422
Comments
Good plan. A couple of comments lru.jl : I have a slight preference for lru to go into base, it seems widely useful. One of my plans was to use an lru cache, for example, to cache GMP structures for reuse. time.jl: is, I think incomplete functionality, and shouldn't go into base at this time. It risks baking in. I would suggest moving it to @nolta 's Calendar package right now, and that whole package move to base eventually. Calendar seems to have the most momentum for date/time functionality. |
I think @dmbates needs the final say on Rmath.jl. I believe, but am not sure, that we only need libRmath, not Rmath.jl. |
strpack.jl removal is blocked on #2315. ode.jl needs an owner who's smarter than me. The codes I contributed don't quite work right, and we need more codes with adaptive timesteps. |
Regarding Rmath.jl I have an example in a blog posting that uses it so users might encounter some of the functions. However, the performance is poor relative to the code in Distributions.jl so it may be best to simply remove it and respond to questions about it saying "use the Distributions package instead". I really don't know if others are using it. |
@dmbates Perhaps we can update your blog post examples with Distributions? At the very least, we can add an update there pointing to the Distributions package. |
In all cases, I would prefer if the original authors take ownership of the new repositories and add them as packages. I will make repositories for the rest of them under JuliaLang. |
I'll try to get to Units.jl this weekend. |
I think time should be merged into Units. Will update the plan to reflect this. |
I'll volunteer to package dicom (I have a lot of test data) and merge the image stuff into Image.jl w/ @JeffBezanson and @timholy consent/guidance. |
That would be great. I'm willing to help maintain dicom.jl as well if you'd like to give me access. |
I have a more efficient wrapper to zlib in Codecs.jl. (It resizes as needed, rather than attempting decompression and starting over with a bigger array if it runs out of space.) I will merge whatever is missing, which is trivial things like setting the compression level and strategy, then we could deprecate that. |
Excellent. Thanks for doing that, @dcjones. I think we can probably just remove extras/zlib.jl altogether rather than deprecating it. |
Jeff and Isaiah, you both have push access to Image.jl |
...and Stefan, when there's actually a Units.jl in existence, I'll do the same for you so you can merge your time stuff in. |
@ViralBShah I am continuing to develop extras/suitesparse.jl on the db/suitesparse branch. I think it is close to the point where it could be incorporated into the master branch. A lot of the changes create Julia methods corresponding to CHOLMOD functions, which I find quite convenient. However, most users will only want the basics of factorizing and solving systems so we may want to create modules for UMFPACK and CHOLMOD, similar to those for BLAS and LAPACK, with only the most important functionality exposed with the idea that advanced users will use fully qualified names for advanced functions. I think UMFPACK could be in a separate module because it is not tied to CHOLMOD structures the way that SPQR is. |
As requested, I'll package up gzip (which, since it focuses on a file format, is probably fine as separate from zlib). |
@dmbates I am aware of your db/suitesparse branch, and will wait for that to be merged into master. Also, in general, I do not think that anything in extras needs deprecation, since much of it was never documented. |
Since I made |
@vtjnash Go with your personal tag for now. Neither of those packages has any active development, and I do not expect those packages to have a large number of contributors in any case. |
GZip.jl is now a package (https://github.com/kmsquire/GZip.jl) with docs (https://gzipjl.readthedocs.org/en/latest/) (and it's listed in METADATA). I know at least @dmbates and @carlobaldassi are using You can also now use After I hear back that it works for others, I'll announce this on julia-dev and julia-users lists and wait a few days before removing the code from |
Oh, and @ViralBShah, I chose to go with I also don't have write access to this issue, so if you could check off gzip, that would be great. |
I also fixed a problem with memoize that I haven't submitted, and created a least-fixed-point iterator version, so I can package that up as well. |
Great. I checked off Gzip. |
gzip.jl is going to run into the same problem as strpack.jl--there are packages using it, so the packages will need to do something for their compatible-with-0.1 branch and something different for their compatible-with-0.2+ mainline, for which we really need #2315. @StefanKarpinski, I think I may have already asked this, but is there a plan to do this soon? |
#2315 is the only real issue at this point that is preventing us from announcing 0.1 on the julia blog. We need to address it and give package managers some time to update their packages and tie them to 0.1. |
I checked off ODE and Polynomial. They can be deleted from extras (and test) now. |
dicom can be checked off and removed: https://github.com/JuliaLang/METADATA.jl/tree/master/DICOM |
@kmsquire If you add the url to the docs into the github project details, it will be linked from the package listing page. See StrPack or Gadfly for examples. |
@kmsquire Is there a consensus on what to do about old dependencies on, say, extras/gzip.jl for the 0.1 branch as opposed to the Gzip package for 0.1+? I use gzopen in the DataFrames package which itself is used by many other packages. If I switch to Gzip.open() do we need to tag the DataFrames package for 0.1 before doing so? |
@aviks, sorry, I'm not quite following you. I have the GZip.jl URL for the ReadTheDocs at the end of the README.md for GZip.jl, and I can't see anywhere else StrPack or Gadfly have a link. What am I missing? @dmbates, I'm not aware of any consensus. Generally, #2315 needs to be addressed, but this doesn't directly affect the current version of GZip.jl (and probably won't any time soon), as it is compatible with 0.1, even with the version in extras. So I think you would be fine just depending on the new package. (I'm recompiling julia 0.1 right now to make sure the GZip.jl module works, but since I just copied the version in extras with minimal changes, there shouldn't be any issues.) |
@timholy I saw a package for image processing. Should we remove |
Thanks for the reminder. Done. I notice that @StefanKarpinski is very actively developing pkg2 inside extras/, so we may want to keep extras around a while longer (depending on how that proceeds relative to the next release). |
@dcjones I am planning to remove Perhaps it would be better to rename |
Hi Viral, @dcjones already created a separate Zlib.jl package. https://github.com/dcjones/Zlib.jl Kevin On Wednesday, April 24, 2013, Viral B. Shah wrote:
|
Thanks. I just removed it from extras in 0d5af2c |
Is there a plan for what's going to happen to I'm asking because I'm preparing some modification suggestions for |
@tlycken If possible, could you submit a pull request merging the useful parts of |
@ViralBShah Sure, will do. But the more I look at the functions in |
Now that you mention it, they do seem to be more appropriate for Looking at the names, I actually feel they are fine. |
I agree this can go in Base. |
Can we come up with a better name than |
|
Ah, ok. |
@ViralBShah @JeffBezanson @StefanKarpinski I'm working on putting this together, and will send you a pull request when I have something to show for it =) |
I just finished tweaking |
Hi @simonster, please feel free to make a package. https://gist.github.com/kmsquire/5591523 includes a few modifications:
Feel free to include these, modifying as needed, or I can submit a pull request after you create the package. |
Actually, I remember now. The |
@kmsquire, I made a Memoize package (https://github.com/simonster/Memoize.jl), taking a slightly different route to creating the cache so that it can hopefully be freed by GC if a file is reloaded. I have to admit I'm not entirely sure what why It also occurred to me that type inference won't work for |
Thanks. I'll look at your updates and post an example of where both |
Can we remove In Makefile.jl:19, I would also like to remove extras from being installed. It also needs to be removed from being added to the search paths and such. Does anyone still depend on anything in extras - @StefanKarpinski I see some pkg2 stuff. I say that the remaining files can be safely removed - time.jl, test.jl |
Does LRU have other users? StrPack.jl doesn't use it anymore, but it is a generic structure and not specific to memoize. Maybe roll it into DataStructures (possibly built on its' deque?) @lindahua? |
Maybe move |
We started using
extras
as a place to keep all sorts of code that was experimental, or domain specific. Now that we have a packaging system, it is time to removeextras
. Some of the stuff should go into Base, and the rest into packages. Here's my first cut at doing this:Distributions
? I would prefer to continue bundling libRmath, but I believe Rmath.jl is no longer needed. ( @johnmyleswhite ?)Once all this is complete, extras/ can be removed from the repository, and from all the various load paths.
This issue should not be closed until the corresponding documentation is included in the packages.
20db526#commitcomment-2821097
The text was updated successfully, but these errors were encountered: