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

[R-package] Add docs on building and using precompiled binaries for the R package #3285

Merged
merged 17 commits into from
Aug 12, 2020

Conversation

jameslamb
Copy link
Collaborator

This PR comes out of this discussion: #3188 (comment).

We're really close to getting the R package to CRAN, but I'm not sure how long it will take to fix #3187 . To make life easier for users until the package gets to CRAN, starting with https://github.com/microsoft/LightGBM/releases/tag/v3.0.0rc1 I think we should start providing precompiled binaries for releases.

When #3283 is done, these binaries can be produced automatically and attached to the releases page. For now, I think it will be useful to document how to use them (for users) and how to build them (for maintainers and adventurous users).

Copy link
Collaborator

@StrikerRUS StrikerRUS left a comment

Choose a reason for hiding this comment

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

Thanks! Very clear guide!

Just dots for the consistency and one comment about the name of Windows artifact.

R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
@StrikerRUS
Copy link
Collaborator

StrikerRUS commented Aug 8, 2020

During reading this comment #3187 (comment) I came to the thought that it might be useful to upload the source distribution to Releases page (automatically after resolving #3283 ) which will be then submitted to CRAN. WDYT @jameslamb ?

R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
@jameslamb
Copy link
Collaborator Author

During reading this comment #3187 (comment) I came to the thought that it might be useful to upload the source distribution to Releases page (automatically after resolving #3283 ) which will be then submitted to CRAN. WDYT @jameslamb ?

yes definitely! I think that is a great idea and something we should be doing. I'll add it and a note in these docs.

And then we can add it automatically in future releases (#3283 )

@jameslamb
Copy link
Collaborator Author

I just added a source distribution (built with sh build-cran-package.sh) to the 3.0.0rc1 release page!

I also added it to the list of artifacts that should be produced by #3283

It can be installed like this from R.

remotes::install_url(
    "https://github.com/microsoft/LightGBM/releases/download/v3.0.0rc1/lightgbm-3.0.0-1-cran.tar.gz"
)

@jameslamb
Copy link
Collaborator Author

I just added notes on installing the CRAN package from the releases page, thanks for the nudge @StrikerRUS !

@StrikerRUS
Copy link
Collaborator

@jameslamb

I also added it to the list of artifacts that should be produced by #3283

Thanks a lot!

I think after we put LightGBM on CRAN, we will have to produce only that artifact with source files and upload it to CRAN. All other artifacts with binaries should be uploaded reversely: from CRAN to Releases page (if needed) to have identical versions in both places and avoid errors like one just reported about glibc (#3188 (comment)). Please correct me if I'm wrong in my thoughts about further release pipeline.

@jameslamb
Copy link
Collaborator Author

@jameslamb

I also added it to the list of artifacts that should be produced by #3283

Thanks a lot!

I think after we put LightGBM on CRAN, we will have to produce only that artifact with source files and upload it to CRAN. All other artifacts with binaries should be uploaded reversely: from CRAN to Releases page (if needed) to have identical versions in both places and avoid errors like one just reported about glibc (#3188 (comment)). Please correct me if I'm wrong in my thoughts about further release pipeline.

Yes I agree with this. By the way, CRAN does not provide binaries for Linux (only Mac and Windows), so I think ours should be considered experimental.

@StrikerRUS
Copy link
Collaborator

By the way, CRAN does not provide binaries for Linux (only Mac and Windows), so I think ours should be considered experimental.

Hmm, then we should build them with our Docker we use for artifacts at Azure Pipelines to ensure maximum compatibility. Or even better with CentOS image.
https://github.com/pypa/manylinux/blob/master/docker/Dockerfile-x86_64

Copy link
Collaborator

@StrikerRUS StrikerRUS left a comment

Choose a reason for hiding this comment

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

Now all artifact names look consistent here and at release page.

R-package/README.md Outdated Show resolved Hide resolved
R-package/README.md Outdated Show resolved Hide resolved
@jameslamb
Copy link
Collaborator Author

thanks for keeping me consistent @StrikerRUS , sorry for all the errors.

@github-actions
Copy link

This pull request has been automatically locked since there has not been any recent activity since it was closed. To start a new related discussion, open a new issue at https://github.com/microsoft/LightGBM/issues including a reference to this.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 24, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[R-package] 32-bit library support
2 participants