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.5.2 #3503

Merged
merged 55 commits into from
Aug 18, 2017
Merged

julia-0.5.2 #3503

merged 55 commits into from
Aug 18, 2017

Conversation

dfornika
Copy link
Contributor

@dfornika dfornika commented Aug 10, 2017

Fixes #1618

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/julia) and found some lint.

Here's what I've got...

For recipes/julia:

  • The top level meta keys are in an unexpected order. Expecting ['package', 'source', 'build', 'requirements', 'test', 'about'].
  • The recipe could do with some maintainers listed in the extra/recipe-maintainers section.
  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/julia) and found some lint.

Here's what I've got...

For recipes/julia:

  • The recipe could do with some maintainers listed in the extra/recipe-maintainers section.
  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form.
  • There are 2 too many lines. There should be one empty line at the end of the file.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/julia) and found some lint.

Here's what I've got...

For recipes/julia:

  • The recipe could do with some maintainers listed in the extra/recipe-maintainers section.
  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/julia) and found some lint.

Here's what I've got...

For recipes/julia:

  • The recipe could do with some maintainers listed in the extra/recipe-maintainers section.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/julia) and found it was in an excellent condition.

Copy link
Contributor

@bgruening bgruening left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dfornika thanks a bunch. Small review inline.

- libgcc # [linux]
- libgit2 0.24.*
- gmp 0.5.*
- openblas
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you pin openblas to openblas 0.2.19|0.2.19.*

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I've got gmp wrong too. Will use gmp 6.1.*

- libgit2 0.24.*

run:
- zlib
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you pin zlib to zlib 1.2.8 both run and build environments.

- mpfr
- curl
- libssh2 1.7.*
- libxml2
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

- llvmdev 3.9.*
- fftw
- gmp 0.5.*
- mpfr
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mpfr 3.1.*

- rpath.patch

build:
skip: True # [osx]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be combined in one like [py3k or osx]

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skip windows builds too? (ie:)

build:
  skip: True  # [py3k or osx or win]

The AppVeyor CI build fails with message:

Packages missing in current win-32 channels: 
  - autoconf 2.69 pl5.*
  - automake 1.15 pl5.*
  - openblas
  - gmp 0.5.*

...and

Packages missing in current win-64 channels: 
  - autoconf 2.69 pl5.*
  - automake 1.15 pl5.*
  - openblas
  - gmp 0.5.*

(I realized the gmp version is wrong anyways, but not sure about the others)

export LIBRARY_PATH=${PREFIX}/lib
export CMAKE_PREFIX_PATH=${PREFIX}

make -j 2 prefix=${PREFIX} MARCH=core2 sysconfigdir=${PREFIX}/etc NO_GIT=1 \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there something like make test which we can run?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a test target in the Makefile. Can you suggest how to include that in the build script? Would we just run the make test command first then make install after, with the same env variables and flags? (ie:)

make -j 2 prefix=${PREFIX} MARCH=core2 sysconfigdir=${PREFIX}/etc NO_GIT=1 \
  USE_SYSTEM_LIBGIT2=1 USE_LLVM_SHLIB=0 USE_SYSTEM_CURL=1 USE_SYSTEM_MPFR=1 \
  USE_SYSTEM_PATCHELF=1 USE_SYSTEM_LIBSSH2=1 USE_SYSTEM_LLVM=1 USE_SYSTEM_BLAS=1 \
  USE_SYSTEM_FFTW=1 USE_SYSTEM_GMP=1 USE_SYSTEM_LAPACK=1 LIBBLAS=-lopenblas \
  LIBBLASNAME=libopenblas.so LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas.so \
  test

make -j 2 prefix=${PREFIX} MARCH=core2 sysconfigdir=${PREFIX}/etc NO_GIT=1 \
  USE_SYSTEM_LIBGIT2=1 USE_LLVM_SHLIB=0 USE_SYSTEM_CURL=1 USE_SYSTEM_MPFR=1 \
  USE_SYSTEM_PATCHELF=1 USE_SYSTEM_LIBSSH2=1 USE_SYSTEM_LLVM=1 USE_SYSTEM_BLAS=1 \
  USE_SYSTEM_FFTW=1 USE_SYSTEM_GMP=1 USE_SYSTEM_LAPACK=1 LIBBLAS=-lopenblas \
  LIBBLASNAME=libopenblas.so LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas.so \
  install


test:
commands:
- "julia -v"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the quotes can be removed


extra:
recipe-maintainers:
- dfornika
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feel free to add me.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I'm going to add @acaprez too.

@dfornika
Copy link
Contributor Author

dfornika commented Aug 11, 2017

CircleCI build failed with error below. Same error as seen here:

JuliaLang/julia#22407

The Julia github page says that libgit2 >= 0.23 should be compatible, and we're pulling libgit2 = 0.24.5 from conda-forge, so I'm not sure what the problem is.

Exception running test libgit2 :
On worker 3:
LoadError: There was an error during testing
 in record at ./test.jl:397
 in do_test at ./test.jl:281
 in include_string at ./loading.jl:441
 in include_from_node1 at ./loading.jl:491
 in macro expansion at ./util.jl:230 [inlined]
 in runtests at /staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/test/testdefs.jl:7
 in #16 at /staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/test/runtests.jl:44
 in #645 at ./multi.jl:1421
 in run_work_thunk
 at ./multi.jl:1001
 in macro expansion at ./multi.jl:1421 [inlined]
 in #644 at ./event.jl:68
while loading /staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/test/libgit2.jl, in expression starting on line 21ERROR: LoadError: Some tests exited with errors.
 in (::##11#19)() at /staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/test/runtests.jl:72
 in cd(::##11#19, ::String) at ./file.jl:59
 in include_from_node1(::String) at ./loading.jl:488
 in process_options(::Base.JLOptions) at ./client.jl:265
 in _start() at ./client.jl:321
while loading /staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/test/runtests.jl, in expression starting on line 26
make[1]: *** [all] Error 1
make: *** [test] Error 2
Traceback (most recent call last):
  File "/opt/conda/bin/conda-build-all", line 6, in <module>
    sys.exit(conda_build_all.cli.main())
  File "/opt/conda/lib/python3.6/site-packages/conda_build_all/cli.py", line 93, in main
    b.main()
  File "/opt/conda/lib/python3.6/site-packages/conda_build_all/builder.py", line 280, in main
    built_dist_location = self.build(meta, build_config)
  File "/opt/conda/lib/python3.6/site-packages/conda_build_all/builder.py", line 209, in build
    conda_build.api.build(meta.meta, config=config)
  File "/opt/conda/lib/python3.6/site-packages/conda_build/api.py", line 97, in build
    need_source_download=need_source_download, config=config)
  File "/opt/conda/lib/python3.6/site-packages/conda_build/build.py", line 1524, in build_tree
    config=config)
  File "/opt/conda/lib/python3.6/site-packages/conda_build/build.py", line 1147, in build
    utils.check_call_env(cmd, env=env, cwd=src_dir)
  File "/opt/conda/lib/python3.6/site-packages/conda_build/utils.py", line 628, in check_call_env
    return _func_defaulting_env_to_os_environ(subprocess.check_call, *popenargs, **kwargs)
  File "/opt/conda/lib/python3.6/site-packages/conda_build/utils.py", line 624, in _func_defaulting_env_to_os_environ
    return func(_args, **kwargs)
  File "/opt/conda/lib/python3.6/subprocess.py", line 291, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/bin/bash', '-x', '-e', '/staged-recipes/build_artefacts/julia_1502474743960/work/julia-0.5.2/conda_build.sh']' returned non-zero exit status 2.
Exited with code 1

@acaprez
Copy link
Contributor

acaprez commented Aug 11, 2017

It looks like the issue is that the libgit2 package in conda-forge was built without SSH support. The Julia test script (test/libgit2.jl) is running the following check:

#@testset "Check library features" begin
    f = LibGit2.features()
    @test findfirst(f, LibGit2.Consts.FEATURE_SSH) > 0
    @test findfirst(f, LibGit2.Consts.FEATURE_HTTPS) > 0
#end

Running LibGit2.features() manually using v0.24.5 shows:

julia> f = LibGit2.features()
2-element Array{Base.LibGit2.Consts.GIT_FEATURE,1}:
 FEATURE_THREADS
 FEATURE_HTTPS

So the first test for FEATURE_SSH fails and causes the error.

@dfornika
Copy link
Contributor Author

@acaprez Thanks for the insight, I would have had trouble tracking that down.

Would you recommend setting USE_SYSTEM_LIBGIT2=0, and removing the conda libgit2 dependency from the meta.yaml file?

Or would it be better to use the conda libgit2, and (somehow) skip that specific test?

@acaprez
Copy link
Contributor

acaprez commented Aug 11, 2017

I don't actually contribute to conda-forge, so I'm unsure of what their guidelines are. For bioconda at least, I think the goal is to explicitly list and use conda packages for all the dependencies.

You might try removing the version pinning for libgit2 and see if it will build ok. The 0.25.1 version of libgit2 was built with SSH support.

@dfornika dfornika mentioned this pull request Aug 11, 2017
- autoconf 2.69 pl5.*
- automake 1.15 pl5.*
- openblas 0.2.19|0.2.19.*
- llvmdev 3.9.*
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

llvm 3.9 with julia 0.5.x is not a recommended configuration that would be supported in upstream bug reports

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What version would be recommended?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

llvm 3.7.1 (heavily patched) with julia 0.5.x, or llvm 3.9.1 (also heavily patched) with julia 0.6.0

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any news on when these patches might move upstream?

We can include patches for llvm. There is a mechanism for it, but I haven't kept up with the latest details. Maybe @SylvainCorlay can comment.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We upstream everything we can. See all the "Remove for" comments here https://github.com/JuliaLang/julia/blob/4c5cc04156ba074a8baa028c2a8a41b9e70d56ee/deps/llvm.mk#L432-L482 that mean things were successfully upstreamed. The problem is LLVM breaks other things before their next release and we haven't tested or ifdef-ed code sufficiently to work with anything else. We also haven't tested backporting our patches against other LLVM-using projects, they may cause issues in use cases that Julia doesn't care about. Realistically LLVM does not work well as a shared dependency.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can I get some advice on how to solve this? Should I remove llvm and llvmdev from meta.yaml? My understanding is that the julia build system would pull down its own copy if we don't list it as a dependency and set USE_SYSTEM_LLVM=0 in the build.sh script.


test:
commands:
- julia -v
Copy link
Member

@tkelman tkelman Aug 11, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please run all of the tests. julia -e 'Base.runtests("all"); Base.runtests("pkg libgit2-online")'
(the ones that need network access aren't included under "all" by default, and if you build julia 0.6.x then "download" should be added to that list)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Certainly a good idea to run more tests, but could you please provide us an idea of the runtime for the full test suite? Asking partially as we have to be practical if this goes over the CI time limits.

Copy link
Member

@tkelman tkelman Aug 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Depends on the CI service. 20 minutes to an hour probably. You don't necessarily need to run them all on every minor commit, but do at least run them locally.

I'd also recommend setting TAGGED_RELEASE_BANNER to indicate that this build of Julia comes from conda-forge, as if it fails any tests the first response from upstream will likely be that it was built in a non-recommended configuration. Passing all the tests is the best way to be confident of the build configuration, especially when it differs a lot from a normal upstream source build.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I missed that the tests are actually running in build.sh, that's encouraging.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the test be run from both the build.sh script and from the meta.yaml file, or just one of those?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Running in either place is fine. Though picking one is good. There is a slight preference to running the tests in the test section. However if that isn't practical, running them in build.sh is fine.

# Overwrite JL_SYSTEM_IMAGE_PATH in julia library
- $(call stringreplace,$(DESTDIR)$(libdir)/libjulia.$(SHLIB_EXT),sys.$(SHLIB_EXT)$$,$(private_libdir_rel)/sys.$(SHLIB_EXT))
- $(call stringreplace,$(DESTDIR)$(libdir)/libjulia-debug.$(SHLIB_EXT),sys-debug.$(SHLIB_EXT)$$,$(private_libdir_rel)/sys-debug.$(SHLIB_EXT))
+ #$(call stringreplace,$(DESTDIR)$(libdir)/libjulia.$(SHLIB_EXT),sys.$(SHLIB_EXT)$$,$(private_libdir_rel)/sys.$(SHLIB_EXT))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why are you commenting this out? I would expect this to break things

Copy link
Contributor Author

@dfornika dfornika Aug 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know much about the purpose of that patch. It was written by @acaprez for the bioconda package:

bioconda/bioconda-recipes@dae9e67

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This may make it impossible for Julia to run except via the wrapper script.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that's true, because the julia-0.5.2 package on bioconda uses that patch but doesn't use a wrapper script.

https://anaconda.org/bioconda/julia

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then is this condition even true in your build? If not, you don't need to be patching it at all.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know, but I removed the patch and re-built on my system and it seemed to work fine. It passed the test suite. I created a new conda env based on that build and ran julia, installed a simple package ("ArgParse") and imported it. Everything seemed to work.

@jakirkham
Copy link
Member

Thanks @dfornika for putting this together. Also thanks for helping review this, @tkelman.

- zlib 1.2.8
- python 2.7.*
- autoconf 2.69 pl5.*
- automake 1.15 pl5.*
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what were you needing autotools for? likewise with libxml2, don't usually expect that to be a build-dep

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't write the original meta.yaml file, so all I can say is that they were there in the bioconda recipe.

- gmp 6.1.*
- mpfr 3.1.*
- curl
- libssh2 1.7.*
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if libgit2 depends on this at run time, then I suspect Julia's Pkg would too for handling ssh remotes (though it'll only do so through libgit2 and depend how libgit2 was built, we don't link or call libssh2 directly)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So are you suggesting to add libssh2 as a runtime requirement?

It looks like the pkg tests pass.

     * pkg                  INFO: Initializing package repository /tmp/Zpu2ogMF/v0.5
INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl
INFO: No packages to install, update or remove
INFO: Cloning cache of Example from notarealprotocol://github.com/JuliaLang/Example.jl.git
INFO: Cloning cache of Example from https://github.com/JuliaLang/Example.jl.git
INFO: Installing Example v0.4.1
INFO: Package database updated
INFO: Checking out Example master...
INFO: Pulling Example latest master...
INFO: No packages to install, update or remove
INFO: Freeing Example
INFO: No packages to install, update or remove
INFO: Checking out Example master...
INFO: Pulling Example latest master...
INFO: No packages to install, update or remove
INFO: Freeing Example
INFO: No packages to install, update or remove
INFO: Removing Example v0.4.1
INFO: Package database updated
INFO: Nothing to be done
INFO: Cloning Example from https://github.com/JuliaLang/Example.jl.git
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Package database updated
INFO: Freeing Example
INFO: No packages to install, update or remove
INFO: Checking out Example master...
INFO: Pulling Example latest master...
INFO: No packages to install, update or remove
INFO: Freeing Example
INFO: No packages to install, update or remove
INFO: Cloning Example2 from /tmp/Zpu2ogMF/v0.5/Example
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Cloning Example3 from /tmp/Zpu2ogMF/v0.5/Example
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Checking out Example2 test-branch-1...
INFO: Pulling Example2 latest test-branch-1...
INFO: No packages to install, update or remove
INFO: Checking out Example3 test-branch-1...
INFO: Pulling Example3 latest test-branch-1...
INFO: No packages to install, update or remove
INFO: Checking out Example master...
INFO: Pulling Example latest master...
INFO: No packages to install, update or remove
INFO: Cloning Example4 from /tmp/Zpu2ogMF/v0.5/Example
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Checking out Example4 test-branch-2...
INFO: Pulling Example4 latest test-branch-2...
INFO: No packages to install, update or remove
INFO: Updating METADATA...
INFO: Updating Example2 test-branch-1...
INFO: Updating Example4 test-branch-2...
INFO: Updating Example3 test-branch-1...
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Removing Example v0.4.1
INFO: Package database updated
INFO: Freeing Example
INFO: Upgrading ColorTypes: v0.2.12 => v0.5.2
INFO: Upgrading Colors: v0.6.4 => v0.7.4
INFO: Upgrading FixedPointNumbers: v0.2.1 => v0.3.9
INFO: Removing Example v0.4.1
INFO: Package database updated
WARNING: FixedPointNumbers is fixed at 0.0.6+ conflicting with requirement for ColorTypes: [0.3.0,∞)
WARNING: FixedPointNumbers is fixed at 0.0.6+ conflicting with requirement for Colors: [0.3.0,∞)
WARNING: ColorTypes is fixed at 0.0.0- conflicting with requirement for Colors: [0.3.0,∞)
WARNING: Compat is fixed at 0.2.12+ conflicting with requirement for FixedPointNumbers: [0.17.0,∞)
WARNING: Compat is fixed at 0.2.12+ conflicting with requirement for ColorTypes: [0.26.0,∞)
WARNING: Compat is fixed at 0.2.12+ conflicting with requirement for Colors: [0.18.0,∞)
INFO: Installing Example v0.4.0
INFO: Package database updated
INFO: METADATA is out-of-date — you may not have the latest version of Example
INFO: Use `Pkg.update()` to get the latest versions of your packages
 in 240.46 seconds, maxrss  434.51 MB
     * libgit2-online        in   0.47 seconds, maxrss  434.51 MB
    SUCCESS

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd probably leave it as an indirect dependency, if libgit2 is built against it then libgit2 will have a runtime dependency on it right? Pkg will work but with degraded functionality if libgit2 happens to get built without libssh2 support. I think there are tests that would fail if that happened.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove libssh2 as it is only needed as a indirect dependency of libgit2

@dfornika
Copy link
Contributor Author

Green checkmark!

@dfornika
Copy link
Contributor Author

How can I skip both the appveyor and travis builds?

- gmp 6.1.*
- mpfr 3.1.*
- openblas 0.2.19|0.2.19.*
- blas 1.1 {{ variant }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You probably need curl here

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

libcurl is also indirect at runtime (for proxies in libgit2 if it's built with that support), though curl or wget is used for downloads at build and test time

Copy link
Member

@tkelman tkelman Aug 17, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can keep it for the Base.download function though (edit: on non-windows platforms, since we use something else on windows)

- libgit2

run:
- zlib 1.2.8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tkelman, is zlib used? Or is it used by a dependency?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indirect I believe

@isuruf
Copy link
Member

isuruf commented Aug 17, 2017

How can I skip both the appveyor and travis builds?

You can't. Only appveyor has a CI specific message. Others can use [ci skip] but this skips all CI.

@jakirkham
Copy link
Member

Also issue ( travis-ci/travis-ci#5032 ) is relevant.

@tkelman
Copy link
Member

tkelman commented Aug 17, 2017

Guess conda doesn't have a pcre2 package yet? If that were available and had shared libraries then it would make sense to use conda's there too (build time and run time).

@isuruf
Copy link
Member

isuruf commented Aug 18, 2017

No, there's not. Only pcre2, openspecfun, openlibm, dSFMT are missing. We can add those later as separate feedstocks and update the julia feedstock. I'll merge this after tests pass if there's no objections.

@@ -52,7 +52,8 @@ requirements:

test:
commands:
- julia -e 'Base.runtests("all"); Base.runtests("pkg libgit2-online")'
- julia -e 'Base.runtests("all"); Base.runtests("pkg libgit2-online")':
timeout: 1800s
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does this work?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's CircleCI.yml functionality. This file is for conda-build

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's CircleCI.yml functionality. This file is for conda-build

@tkelman
Copy link
Member

tkelman commented Aug 18, 2017

Suppose replacing the wrapper script with a juliarc modification can be done in the feedstock

@isuruf isuruf merged commit ce8835c into conda-forge:master Aug 18, 2017
@isuruf
Copy link
Member

isuruf commented Aug 18, 2017

Thanks. Can you open 2 issues for the missing dependencies and the wrapper script in the julia-feedstocks repo once it is created?

@jakirkham
Copy link
Member

Thanks so much for you persistence @dfornika. Also thanks to all of the reviewers. Thanks for picking this up on the last leg, @isuruf.

@jakirkham
Copy link
Member

Looks like you have been maintaining a similar build of julia, @tkf, which likely shares some history with this one. Figured you would be interested to know that we have added julia to conda-forge. This will allow users to easily install this with conda ( conda install -c conda-forge julia ). The maintenance burden here is light as all releases are built and deployed automatically with CIs. Changes to how it is being built can be controlled by changing the recipe in this feedstock (repo). If you have any interest in helping maintain the recipe, we would certainly appreciate your expertise and would be more than happy to add you to the maintainers list (providing you the needed permissions).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

8 participants