Wykres commitów

1274 Commity (main)

Autor SHA1 Wiadomość Data
Min RK ad0034cb2f note why --no-install-recommends is important for r packages 2022-01-25 13:29:15 +01:00
Min RK 19acf46392 remove r-recommended package
r-recommended is a collection of common CRAN packages,
which cause conflicts when trying to install older R.

These same packages can be regular dependencies retrieved from CRAN.
2022-01-25 11:38:35 +01:00
Sylvain Corlay 65a36cc3f7 PR review comments: update micromamba, use MAMBA_EXE environment variable 2022-01-21 13:16:33 +01:00
Sylvain Corlay 374efff3dc Fix CI by calling shell init 2022-01-21 11:21:00 +01:00
Sylvain Corlay 5f82b2c8b0 Update micromamba installation 2022-01-21 11:21:00 +01:00
Wolf Vollprecht 7d4ac3b960 Use micromamba 0.17 and install conda & mamba into base env 2022-01-21 11:21:00 +01:00
Wolf Vollprecht e12ffc4a99 use mamba with fixed zstd linkage 2022-01-21 11:21:00 +01:00
Wolf Vollprecht b6091c9265 use wget better 2022-01-21 11:21:00 +01:00
Wolf Vollprecht c96a230962 try nightly 2022-01-21 11:21:00 +01:00
Wolf Vollprecht 245fc1b939 use 0.16.0 2022-01-21 11:21:00 +01:00
Sylvain Corlay 089f6a87a5 Use micromamba 0.15.2 2022-01-21 11:21:00 +01:00
Wolf Vollprecht 3c2ded30be fix rm targets 2022-01-21 11:21:00 +01:00
Wolf Vollprecht 7c4f2a5b4f fix up urls 2022-01-21 11:21:00 +01:00
Madhur Tandon 22d4781809 use strict channel priority 2022-01-21 11:21:00 +01:00
Madhur Tandon 2d27bb2af6 revert back to using install 2022-01-21 11:21:00 +01:00
Madhur Tandon d2a2c070e7 use experimental build of micromamba 2022-01-21 11:21:00 +01:00
Madhur Tandon b08c7dc3b6 use env update instead of install 2022-01-21 11:21:00 +01:00
Madhur Tandon e12c436af2 add MAMBA_EXE environment variable 2022-01-21 11:21:00 +01:00
Madhur Tandon 8926cdc968 minor fixes 2022-01-21 11:21:00 +01:00
Madhur Tandon 9c109f95b4 use latest micromamba and fix MAMBA_ROOT_PREFIX 2022-01-21 11:21:00 +01:00
Madhur Tandon 2e702f0248 rename file and add conda-forge channel to .condarc 2022-01-21 11:21:00 +01:00
Madhur Tandon 3288bca6a4 fix tests + change name of script 2022-01-21 11:21:00 +01:00
Madhur Tandon 6cc7567f2e use micromamba 0.12.2 2022-01-21 11:21:00 +01:00
Madhur Tandon f9388c3200 use latest micromamba 2022-01-21 11:21:00 +01:00
Madhur Tandon f508bf167e replace mamba & conda with micromamba 2022-01-21 11:20:58 +01:00
YuviPanda c04fff30cd Say 'apt repository' rather than PPA
PPA is a specific kind of apt repository, hosted on
launchpad.net. We use https://cran.r-project.org/bin/linux/ubuntu/,
which is just a regular apt repository. The PPA terminology
always confused me, so this just clears that up
2022-01-10 17:43:09 +05:30
Simon Li 43525352a7
Merge pull request #1107 from yuvipanda/new-r
Bump default R version to 4.1
2022-01-08 14:44:37 +00:00
Simon Li 457f718386
Merge pull request #1104 from yuvipanda/rspm
Get binary R packages from packagemanager.rstudio.com
2022-01-08 14:43:48 +00:00
YuviPanda 7fd9a3d25f Move 3.6.1 back to 3.6.1-3bionic
Was accidentally included along with the 3.6.3-1biocnic
upgrade for 3.6
2022-01-07 11:23:47 +05:30
YuviPanda 05e504a7ce Cleanup some comments 2022-01-07 11:18:02 +05:30
YuviPanda ceb4f8ac4f Hardcode rspm URL as snapshot for IRKernel 2022-01-07 11:17:46 +05:30
YuviPanda 54636c6ecf Bump default R version to 4.1
3.6 is almost 4 years old now.
2022-01-05 22:32:07 +05:30
YuviPanda dbb5ff7c7d Clarify when mran raises valueerror 2022-01-05 21:35:07 +05:30
YuviPanda 8d194b2d1a Remove unused constants 2022-01-05 18:01:15 +05:30
YuviPanda c398de3d88 Update r 3.6 package version pins
Based on output of apt-cache madison r-base-core
2022-01-05 01:00:47 +05:30
YuviPanda 0b76e9ea44 Always install IRKernel as a binary package
And add another R test for R4.0 + rspm
2022-01-05 00:12:24 +05:30
YuviPanda 5246a0e7c2 Explicitly install r-base-core
Otherwise latest version was being installed, giving us
R 4.1 even when we ask for 4.0
2022-01-04 23:51:15 +05:30
YuviPanda 3ea55e9205 Fix call to rstudio_base_scripts 2022-01-04 19:01:26 +05:30
YuviPanda 685c8a0544 Satisfy black 2022-01-04 18:34:33 +05:30
YuviPanda fd6314d07d Solidify logic for picking rspm vs mran
- MRAN doesn't seem to have R 4.1 specific snapshots, so let's
  default to RSPM for anything 4.1+.
- Otherwise, snapshot dates in 2022 will result in using rspm
2022-01-04 18:30:39 +05:30
Tim Head d688997aee
Merge pull request #1105 from manics/update-jupyterlab 2022-01-03 17:52:36 +01:00
Simon Li 62c0de2282 Add help message to freeze.py 2021-12-23 14:45:41 +00:00
Simon Li da20e9f421 refreeze! 2021-12-23 13:57:27 +00:00
Simon Li 006b0179bf Update jupyterlab 3.2.5 jupyter-resource-usage 0.6.1 2021-12-23 13:55:47 +00:00
YuviPanda bca7d849bd Cleanupg RStudio & Shiny server install
- Install a different version of RStudio for R < 4.1,
  as latest RStudio doesn't seem to support those. And
  newer RStudio isn't supported on these older R versions.
- Cleanup how Shiny is installed - install it with the same
  apt invocation as rstudio (saves time), and install shiny-proxy
  from PyPI instead or GitHub. The release on PyPI is the same
  as our previous GitHub pin.
- Remove outdated comment about different behavior for R 3.6 - I
  think now we get all our R versions from the same apt repo. Plus,
  the conditional was adding more scripts than just adding extra apt
  package repos
2021-12-20 18:09:24 +05:30
YuviPanda 5d173a349d Make black happy 2021-12-17 15:56:00 +05:30
YuviPanda 1ed05b59c6 Install devtools, shiny & irkernel from a pin
We were doing this from an old MRAN snapshot. I moved the pin
a little ahead, so IRKernel can also be installed from CRAN
instead of from GitHub. R <= 4.0 gets the old version, and anything
newer gets a more recent version of devtools. This gives us
fast installs for IRkernel with binary packages.

Also add a R 4.0 and R 4.1 test
2021-12-17 15:52:27 +05:30
YuviPanda 290b008ac5 Fix some code comment references to MRAN 2021-12-17 15:17:44 +05:30
YuviPanda 476a25998b Get binary R packages from packagemanager.rstudio.com
packagemanager.rstudio.com is a CRAN mirror provided
by rstudio, with *binary packages* prebuilt for many Linux
Distributions! https://www.rstudio.com/blog/announcing-public-package-manager/
has more excellent detail. It cuts down install times for R packages
by almost 90% in some cases!

Like MRAN (which we use now), they also provide a daily snapshot
of CRAN at that date
(https://docs.rstudio.com/rspm/news/#rstudio-package-manager-2021090).
The URL for CRAN for a particular date can be fetched via an API
call. We call that API, and if there is no snapshot for that date
(anything before Oct 2017), we fall back on to MRAN. Adds a test
to test this fallback.

One possible issue about changing existing binder repos to use binary
builds rather than source builds is that the binary builds sometimes
require you have an apt package installed, and will fail if it is
not. We had to install the zmq library apt package for example -
source installs compile zmq from source, which is where the speedup
comes from. But unlike python wheels or conda packages, these binary
builds are not self-contained - they are linked to apt packages from
the specific distros. So some repos that worked before might fail now.
We can choose a more recent cut-off date to prevent this from happening.
2021-12-17 14:50:46 +05:30
Timo Rothenpieler ad1dea14ba Use str.partition() for --label argument parsing 2021-12-16 13:38:56 +01:00
Timo Rothenpieler 9f4827132f Add command line option to pass extra build args 2021-12-16 13:35:58 +01:00
Tim Head 1146d4fbde
Merge pull request #1103 from yuvipanda/quieter-r 2021-12-16 12:14:33 +01:00
Tim Head 540001edd8
Merge pull request #1102 from yuvipanda/more-r 2021-12-16 12:09:23 +01:00
YuviPanda 2f1fc81dff Quieter R builds
We redirect stdout (not stderr) of apt-get update and install
in most other places (check out base.py) to not clutter the
output
2021-12-16 12:29:27 +05:30
YuviPanda 730e622e3f Support R 4.1 2021-12-16 12:16:52 +05:30
Timo Rothenpieler 86df151414 Add --label command line option 2021-11-24 13:22:33 +01:00
Timo Rothenpieler fa512e76bd Set labels in Dockerfile BuildPack 2021-11-24 13:22:33 +01:00
Timo Rothenpieler cf8f3b9195 Add explicit support for labels build parameter 2021-11-24 13:22:33 +01:00
Min RK 7aee21fd05 add nodejs to locked py35 env
updates a bit more than I'd like, but this is the minimum I could find to get node 14 in
2021-11-23 11:43:57 +01:00
Simon Li 3b02cc4702 Run freeze.py 2021-11-19 16:49:45 +00:00
YuviPanda 27399081ff Merge remote-tracking branch 'upstream/main' into no-node 2021-11-19 22:00:10 +05:30
YuviPanda 6db7273423 Revert "Freeze new environment.yaml files"
This just causes a lot of merge conflicts

This reverts commit 6d1dc4a77b.
2021-11-19 21:58:17 +05:30
Min RK 6d37487e0a refreeze with jupyterlab 3.1.17 2021-10-06 09:36:04 +02:00
Min RK 06c23b83a2 bump jupyterlab to 3.1.17 2021-10-06 09:35:52 +02:00
Chris Holdgraf ce898da03c Bump environment lock files 2021-09-12 05:44:08 -07:00
Chris Holdgraf d9dbd2b08a Bump JupyterLab to 3.1.11 2021-09-11 17:10:13 -07:00
Sylvain Corlay 92999d64aa Default to JupyterLab 2021-09-06 11:58:58 +02:00
Min RK 90c0e8958c
Merge pull request #1061 from manics/freeze-no-dependabot
Rename requirements.py-3.5.txt to requirements.py-3.5.pip
2021-09-06 09:19:03 +02:00
Yuvi Panda 92a00b2c18
Merge pull request #1072 from jgarte/jgarte-patch-1
Typo fix in utils docstring
2021-09-03 18:35:07 +05:30
magnush0lm 72ebf8acf1
__init__.py: r_version: fixed description 2021-08-18 23:11:04 +02:00
jgart 2c81b6059b Set default, type, and help method for engine in argparse
Fixes --engine cli option not showing up
2021-08-15 02:24:47 -04:00
jgart 13976264ee
Typo fix utils docstring 2021-08-14 11:37:02 -04:00
Simon Li db3ba82e88 refreeze! 2021-08-02 20:29:32 +01:00
Simon Li 805eddd91a jupyterlab==3.1.1 2021-08-02 20:29:03 +01:00
Simon Li 7d682f7576 refreeze! 2021-07-28 23:05:12 +01:00
Simon Li 0c1fdeb15e environment.yml: packages must support py3.6 2021-07-28 23:04:25 +01:00
Simon Li 06ecc5e9ed bump environment.yml
- jupyter-resource-usage==0.6.0
- jupyterlab==3.1.0
- jupyterhub-singleuser==1.4.2
- nbconvert==6.1.0
- notebook==6.4.0
2021-07-28 22:41:20 +01:00
Simon Li df65135795
Merge pull request #1016 from minrk/refine-test-env
Refine buffered output debugging
2021-07-09 18:38:14 +01:00
Simon Li 470443cc39 Rename requirements.py-3.5.txt to requirements.py-3.5.pip
This is an attempt to have this file ignored by dependabot since it contains frozen dependencies
2021-07-09 18:23:18 +01:00
Simon Li dc03809fa2
Merge pull request #1024 from minrk/conda-lock
Refreeze with conda-lock
2021-07-09 18:03:19 +01:00
Min RK ab1e33bc4c move docker timestamp-parsing quirk to docker itself
our Container API can be more sensible and symmetrical than docker itself
2021-07-09 10:24:09 +02:00
Min RK 6966847bf9 Expose `timestamps`, `since` args in Container.logs
Behavior is defined as what docker does

needed for avoiding duplicate log statements
2021-07-07 14:03:10 +02:00
Anton Akhmerov 8db656d1ce
always unpack a single zenodo zip 2021-07-06 15:18:42 +02:00
Min RK e9c22422f6 fix side-effect method name and add fixme note 2021-07-06 09:54:09 +02:00
Min RK 164efd31ab reduce redundant output when capturing late logs
it's unclear if late logs ever captures logs not already echoed,
but this at least eliminates the redundant output
2021-07-06 09:45:16 +02:00
YuviPanda 6d1dc4a77b Freeze new environment.yaml files 2021-07-03 16:58:26 +05:30
YuviPanda 072d706eb6 Explicitly install nodejs
Earlier, we were depending on it being a dependency
of jupyterlab - I don't think that works anymore.
2021-07-03 09:37:07 +05:30
YuviPanda df92b99cdb Move where npm config is set 2021-07-03 02:09:46 +05:30
YuviPanda ef1497dddf Explicitly specify where npm is
PATH doesn't seem to be set at this point to include
the conda environment we just installed?
2021-07-03 02:09:46 +05:30
YuviPanda cbda2eba2b Move npm config setting to the conda buildpack
Since everything is based off the conda buildpack now,
and that is where we get npm from
2021-07-03 02:09:46 +05:30
YuviPanda 1d53990f34 Remove nodesource' nodejs
We get node from the default JupyterLab install, since that
comes from conda-forge. This was not the case when we started -
we installed JupyterLab with pip. We no longer need the nodesource
node.

All the env vars, etc should still work!
2021-07-03 02:09:46 +05:30
Simon Li d47b74492f Add Container.wait() 2021-07-02 12:43:58 +01:00
Simon Li 5778ed0381 docker.py: remove workaround for old black 2021-07-02 12:43:58 +01:00
Simon Li e32c7b02df describe ContainerEngine volume and port formats 2021-07-02 12:43:58 +01:00
Simon Li 0e7e0f003e Use standard-ish image_inspect format 2021-07-02 12:43:58 +01:00
Simon Li 5c2c8f7385 Python 3.5: can't have trailing , in function arg list (again) 2021-07-02 12:43:52 +01:00
Simon Li 52b672a17a Docker: print helpful message if daemon not running 2021-07-02 12:43:18 +01:00
Simon Li 4647dd0702 Container .build .run need to support **kwargs 2021-07-02 12:43:18 +01:00
Simon Li ad5701dd3a Remove unnecessary import 2021-07-02 12:43:18 +01:00
Simon Li 00df21069e ContainerEngine .build .push default to returning strings (stream) 2021-07-02 12:43:18 +01:00
Simon Li 8215f0b065 Remove commented engine.py code 2021-07-02 12:43:18 +01:00
Simon Li 17af0c7293 BuildError only takes positional params 2021-07-02 12:43:18 +01:00
Simon Li 4a06ef19d9 ContainerEngine is now LoggingConfigurable 2021-07-02 12:43:18 +01:00
Simon Li a73595ce4c Require image info in a fixed format 2021-07-02 12:43:18 +01:00
Simon Li 787d1d3aeb Container engine is an entrypoint: repo2docker.engines 2021-07-02 12:43:15 +01:00
Simon Li b6bead74cd Python 3.5: can't have trailing , in function arg list 2021-07-02 12:42:12 +01:00
Simon Li c521c3c950 Remove constant docker args 2021-07-02 12:42:12 +01:00
Simon Li 9ac8a8314c Handle attrs["State"]["ExitCode"] 2021-07-02 12:42:10 +01:00
Simon Li 2864b692ef app: use DockerEngine 2021-07-02 12:39:42 +01:00
Simon Li 0610edfc20 Add docker implementation of abstract engine 2021-07-02 12:39:42 +01:00
Simon Li cf35f51a38 Add abstract interface for container engines 2021-07-02 12:39:42 +01:00
Mridul Seth 3edc76342c Fix regression in hydroshare introduced after moving to requests 2021-04-01 15:31:19 +02:00
Kyungdahm Yun ebbb83b665
Set default Julia version to 1.6 2021-03-25 09:22:59 -07:00
Tim Head 8731ecf096
Merge pull request #1014 from minrk/flush-buffers 2021-03-23 07:21:00 +01:00
Min RK 71eb8058c7
Merge pull request #994 from tomyun/julia-versions
[MRG] Fetch available Julia versions from hosted json
2021-03-12 13:07:58 +01:00
Min RK b36a6a75f5 simplify python entrypoint
- remove redundant monitor sibling process
- use python3-login executable instead of login shell subprocess
  (same effect, but in more natural order)
- use non-blocking binary IO in tee instead of readline
  (switch to binary mode, as text wrappers don't support non-blocking mode
   see https://bugs.python.org/issue13322)
2021-03-09 10:45:47 +01:00
Min RK 03d673b096 support separate pip requirements.txt in base env
- require base env to be a lockfile, environment.yml no longer allowed
- separate `requirements.py-x.y.txt` can be processed post-install, if present
- use this for Python 3.5 env, which has some dependencies only from pip (newer versions than the last py35 build on conda-forge)
2021-03-08 12:58:14 +01:00
Min RK 789a3a23c3 lockfiles need to be installed with `conda create` not `conda env create`
use different .lock filename extension, following conda-lock precedent

Could also follow .txt in conda docs!

conda env create -p prefix -f lock.txt *should* work,
but fails with errors about name being required,
but also fails if name is given due to conflict with `-p`
2021-03-03 16:03:52 +01:00
Min RK d7c26b7a79 use mamba create instead of mamba env create
I'm never sure what the difference is,
but mamba env create doesn't accept explicit dependency format
2021-03-03 13:17:46 +01:00
Min RK 93de3872a4 refreeze after adding pip 2021-03-03 12:09:13 +01:00
Min RK a2d0329b15 explicitly put pip in the base env
instead of depending on conda's automatic pip dependency for Python,
which is sensitive to configuation
2021-03-03 12:09:13 +01:00
Min RK 1e240efc96 refreeze with conda-lock 2021-03-03 11:18:47 +01:00
Min RK a49d260ac9 Freeze enviornment with conda-lock
approximately one million times faster than running a full install

installation time should be faster, too, as there is no solve
2021-03-03 11:18:27 +01:00
Simon Li d24d7e4645
Merge pull request #1017 from minrk/39
freeze with mamba, add 3.9
2021-03-03 10:02:55 +00:00
Min RK b73c96eecf refreeze with strict channel priority
make sure we don't get any packages from 'defaults'
2021-02-22 13:31:29 +01:00
Min RK 907c6f3ce5 freeze with strict channel priority
avoids pulling in newer releases from defaults

this is conda's default behavior, but not mamba's
2021-02-22 13:26:12 +01:00
Min RK 246d99c2a5 refreeze
adds 3.9 environment
2021-02-22 13:10:26 +01:00
Kyungdahm Yun 27a0ed870c Manually specify default compat version 1.5 2021-02-19 09:43:23 -08:00
Kyungdahm Yun 80837821ad Catch errors on fetching Julia versions 2021-02-19 09:09:53 -08:00
Kyungdahm Yun fc6ea2d53b Fetch available Julia versions from versions.json 2021-02-19 09:08:03 -08:00
Gerhard Bräunlich b66caf6f65 buildpacks.r: dont use apt-key directly to respect *_proxy env vars 2021-02-18 16:37:57 +01:00
Min RK 0f848f7855 handle $R2D_ENTRYPOINT in new entrypoint 2021-02-18 14:34:07 +01:00
Min RK 67cc5f7a75 bump notebook, nbconvert, jupyterhub
- jupyterhub-singleuser==1.3.0
- nbconvert==6.0.7
- notebook==6.2.0
2021-02-18 14:25:47 +01:00
Min RK 5a32cc4ad8 refreeze with mamba, add 3.9 to freeze list 2021-02-18 14:25:47 +01:00
Min RK f8d386a596
Merge pull request #996 from jtpio/lab-3
Update to JupyterLab 3.0
2021-02-18 10:46:55 +00:00
Min RK a06991de50 entrypoint needs to run on py35 2021-02-18 09:46:42 +01:00
Min RK ebf640cb84 implement entrypoint in Python
- make sure to set PYTHONUNBUFFERED
- implement tee with subprocess readlines
- forward all relevant signals from entrypoint to 'true' command
- add monitor process to ensure child shuts down if parent does (maybe not useful in docker?)
2021-02-17 16:13:42 +01:00
Yuvi Panda f426891014
Merge pull request #960 from minrk/r4 2021-02-17 17:53:53 +05:30
Min RK e862630ee1
Merge pull request #1008 from betatim/missing-logs
Investigating the missing logs
2021-02-17 10:23:11 +00:00
Jeremy Tuloup 4c061eebbb Update to jupyter-offlinenotebook=0.2.1 2021-02-16 15:55:27 +01:00
Jeremy Tuloup 0ca6b4388a Update to jupyterlab==3.0.7 and ipywidgets=7.6.3 2021-02-16 15:22:26 +01:00
Jeremy Tuloup 37c7f5a379 Update to jupyterlab==3.0.4 2021-02-16 14:54:38 +01:00
Jeremy Tuloup e0432d37e7 Update to jupyter-offlinenotebook==0.2.0 2021-02-16 14:54:38 +01:00
Jeremy Tuloup bd08989717 Add jupyter-offlinenotebook 2021-02-16 14:54:38 +01:00
Jeremy Tuloup bcce6e8a1e Update to JupyterLab 3.0 2021-02-16 14:54:38 +01:00
Mridul Seth 0885204a5d fix dataverse regression introduced in last release 2021-02-11 21:58:21 +01:00
Tim Head 6e372b5bc9 Extreme measures 2021-01-28 09:17:34 +01:00
Simon Li cb4621f254
Merge pull request #987 from betatim/stream-logs
[MRG] Stream jupyter server logs to a file
2021-01-27 17:08:17 +00:00
Tim Head 1140dd1919
Merge pull request #988 from douardda/swhid 2021-01-26 13:56:29 +01:00
Tim Head 45229ad613
Merge pull request #1001 from manics/fix_figshare_test 2021-01-20 11:20:13 +01:00
David Douard e54c24ce2e Add support for the SWHID content provider
This content provider allows to retrieve the content from a
Software Heritage (SWH) persistent identifier (SWHID).
Typical usage:

  repo2docker swh:1:rev:94dca98c006b80309704c717b5d83dff3c1fa3a0

It uses the SWH public vault API to retrieve the content of the given
directory.

Most of the times, this will not need an authentication
token to bypass the rate-limiting of the SWH API.
Without authentication, one should be allowed to retrieve one
directory content per minute.

If this is not enought, then the user must use authenticated calls to
the SWH API.

For this, a new `swh_token` config item has been added to the Repo2Docker
application class.

To use authentication:

  repo2docker --config cfg.json swh:1:rev:94dca98c006b80309704c717b5d83dff3c1fa3a0

with the swh_token config option being defined in the cfg.json config file.
2021-01-19 18:04:46 +01:00
David Douard 983607fed7 Fix the docker image name generation
make sure all the parts that constitute the generated docker image name
are escaped, otherwise the docker building process can fail (with a rather
hard to understand error).

Before this fix, the `provider.content_id` was not escaped.
2021-01-19 18:03:50 +01:00
Tim Head a0606f2b57
Merge pull request #993 from douardda/requests
Replace urllib by requests in contentproviders
2021-01-19 17:51:00 +01:00
David Douard 830a9c89c0 Replace urllib by requests in contentproviders
requests is globally simpler to use, and more and more people
are more familiar with this later than urllib.
2021-01-18 17:29:53 +01:00
Tim Head c75b5ab72a
Merge pull request #990 from FRidh/nix
buildpacks/nix: disable sandboxing (bugfix)
2021-01-17 10:00:20 +01:00
Simon Li ee7f7790d3 figshare article types: code and dataset 2021-01-15 16:11:27 +00:00
Tim Head b464a5e400
Merge pull request #991 from FRidh/nix-2.3.9
buildpacks/nix: 2.3 -> 2.3.9
2021-01-13 11:16:06 +01:00
Simon Li b032ad7c4b Can't just use '([^/]+)/' for the new figshare url
This may break detection of non-code URLs
2021-01-08 23:46:57 +00:00
Simon Li c33840fa16 Allow extra path in figshare URLs
Copied from 1d818e90ca
2021-01-08 23:29:37 +00:00
Frederik Rietdijk 76444c2351 buildpacks/nix: 2.3 -> 2.3.9
Update to latest version.
2020-12-19 09:31:55 +01:00
Frederik Rietdijk 5c4c2dc40e buildpacks/nix: disable sandboxing
The version bump #915 broke the Nix buildpack in case one does a build.

Nix 2.3 enables sandboxing by default. Building inside a Docker
container, while Nix is having sandboxing enabled is not possible. Thus,
sandbox = false should be set in /etc/nix/nix.conf.
2020-12-19 09:31:04 +01:00
Sylvain Corlay d8a3d7fa0a Update mamba to latest 2020-12-08 11:23:21 +01:00
Sylvain Corlay 6c1a2722b9 Use mambaforge instead of miniforge 2020-12-06 11:50:11 +01:00
Tim Head f2ed09bdfb Ensure output arrives on stderr 2020-11-26 14:53:31 +01:00
Tim Head 044e112bae Explicitly close log output 2020-11-26 13:01:07 +01:00
Tim Head 957571f739
Add StackOverflow link to comment
Co-authored-by: Simon Li <orpheus+devel@gmail.com>
2020-11-26 07:27:06 +01:00
Tim Head 3dd2b8652d Stream jupyter server logs to a file
By streaming the logs also to a file users can access them from inside
the container which helps them debug issues without having to ask an
admin.
2020-11-25 13:27:11 +01:00
Jeremy Tuloup 53a9071e5e Update to node 14 2020-11-20 09:38:44 +01:00
Min RK edfca79371 Remove support for stencila
Changes in stencila mean it doesn't work anymore and it's not feasible to update nbstencilaproxy

Instead, show only a warning about removed support for stencila
2020-11-19 18:17:23 +01:00
Kyungdahm Yun 4ca664320d
Add Julia 1.5.3 support 2020-11-10 11:16:42 -08:00
Simon Li 30ef2209cc
Merge pull request #979 from minrk/mamba-061
Mamba 0.6.1
2020-10-23 09:58:48 +01:00
Min RK e4b1779999 mamba 0.6.1 2020-10-22 15:29:16 +02:00
Tim Head 1ebb4b5d87 Add explicit error message when `master` is specified
Provide a specific error messaeg with a hint towards solution
when a user specifies `master` as ref and we can't find it.
2020-10-22 08:04:29 +02:00
Tim Head 19c698e8d3 Remove reference to `master` branch from CLI doc 2020-10-22 07:46:20 +02:00
Kyungdahm Yun 8f714b48be Ensure REPO_DIR owned by NB_USER 2020-10-18 00:39:49 -07:00
Nicholas Bollweg 778c914c8c use jinja var for COPY chown 2020-10-15 08:58:12 -04:00
Nicholas Bollweg dc559b825a add chown to COPY commands to reduce layer count 2020-10-14 23:18:18 -04:00
Tim Head ae6c2dc8b9
Merge pull request #965 from tomyun/patch-2
Add Julia 1.5.2 support
2020-09-25 14:36:25 +02:00
Simon Li 369b57c794
conda: set TIMEFORMAT for timed bash commands 2020-09-24 19:11:48 +01:00
Kyungdahm Yun 78adb93837
Add Julia 1.5.2 support 2020-09-24 00:00:59 -07:00
Sylvain Corlay 908bc0f8ff One more time (pun intended) 2020-09-21 15:06:21 +02:00
Sylvain Corlay 56fb7e8160 missing -y 2020-09-21 14:22:51 +02:00
Sylvain Corlay 3e07ba2fa5 Fix shell syntax error with time 2020-09-21 14:22:51 +02:00
Sylvain Corlay 916a03f1d5 Update mamba 2020-09-21 14:22:51 +02:00
Min RK 6f9a523b76 install conda packages with mamba
might save us some time

adds timing measurement to most of the commands that take a while,
not sure if we want to keep that
2020-09-21 14:22:51 +02:00
Tim Head 35e6e7eda6
Merge pull request #950 from paugier/mercurial-contentprovider 2020-09-21 08:47:21 +02:00
Simon Li 45eccfe7f6 Disable jupyterlab extension build minimize 2020-09-18 10:51:39 +01:00
Min RK dd3fa631dd support R 4 2020-09-14 11:55:52 +02:00
paugier 3cdde89328 By default run Mercurial tests + enable the topic extension from code (no need for config file) 2020-09-10 21:48:46 +02:00
paugier fadb3c8dc8 Bump Black version (20.8b1) and use --target-version=py36 2020-09-10 08:11:29 +02:00
paugier 5bb586931b Mercurial optional 2020-09-10 07:58:21 +02:00
paugier 96914545e1 Update Dockerfile (ALPINE_VERSION=3.12.0 & install mercurial) + remove mercurial from install_requires 2020-09-09 18:10:19 +02:00
paugier 979c4abe00 Add Mercurial in content_providers in repo2docker/app.py 2020-09-07 10:06:58 +02:00
paugier d26b3dd0df Mercurial: use the full node id (12 characters) for the content_id 2020-09-07 09:43:22 +02:00
paugier e520b900bf Add a Mercurial contentprovider
MyBinder could support Mercurial repositories

See https://github.com/jupyterhub/binderhub/issues/1148
2020-09-04 15:14:04 +02:00
Kyungdahm Yun 23dd20b341
Add Julia 1.5.1 support 2020-09-02 11:01:50 -07:00
Min RK 6b8f5cf5e8
Merge pull request #943 from betatim/better-requests-parsing
[MRG] Handle requirements.txt with `--pre` lines
2020-08-17 10:22:51 +02:00
Tim Head 10a0cdd04b Smarter splitting without try/except 2020-08-17 08:06:08 +02:00
rkevin ce17956601 add www-frame-origin=same to /etc/rstudio/rserver.conf 2020-08-14 06:27:53 -07:00
Tim Head 82eb2b1903
Merge pull request #938 from tomyun/patch-1
Add Julia 1.5.0 support
2020-08-14 11:22:56 +02:00
Tim Head a7ab636441 Add additional test cases and robuster parsing 2020-08-13 14:29:50 +02:00
Tim Head 37cee9a076
Merge pull request #924 from minrk/collections.abc
avoid deprecated import of collections.abc
2020-08-13 14:12:47 +02:00
Tim Head 6d2b129ed8 Handle requirements.txt with `--pre` lines
This is a global flag which our inspection of requirements.txt files
should ignore as it doesn't imply a local reference.
2020-08-13 14:00:16 +02:00
Min RK 60555b1d05 update repo URLs for jupyterhub/repo2docker 2020-08-10 09:33:05 +02:00
Kyungdahm Yun 64a948a03d
Add Julia 1.5.0 support 2020-08-04 10:24:06 -07:00
Tim Head 163718b277
Merge pull request #933 from manics/jupyterlab==2.2.0
Update JupyterLab to 2.2.0
2020-07-28 20:30:52 +02:00
Simon Li 72fbd65649 validate_image_name: mention lowercase, fix formatting 2020-07-27 20:32:34 +01:00
Simon Li e5ef9b3450 jupyterlab==2.2.0 2020-07-25 18:29:12 +01:00
Min RK c87f642acf avoid deprecated import of collections.abc
deprecated since 3.3, due to be removed in 3.9
2020-07-02 12:57:17 +02:00
John D. Boy 4ff6975716 Bump nix version to 2.3
- This addresses issue #911
- This is untested, but there is no documented reason why repo2docker
  should stick with the previously pinned version 2.1.1
- Upstream has switched from bz2 to xz, so `tar` now takes the `-J` flag
  instead of `-j`
2020-06-16 11:35:09 +02:00
Simon Li 1701771ad9
Python 2.7 wcwidth==0.1.9
Later versions of wcwidth require `backports.functools-lru-cache>=1.2.1; python_version < "3.2"` but the conda-forge wcwidth package was automatically bumped without this new requirement.
2020-06-03 21:38:33 +01:00
Simon Li f9862cc2c1
nbresuse==0.3.3 full freeze.py 2020-06-02 19:18:20 +01:00
David Anthoff 184bc12a1c Add Julia 1.4.2 support 2020-05-25 13:45:29 -07:00
Tim Head 8b6224999d
Merge pull request #886 from danlester/master 2020-05-15 15:43:51 +02:00
Tim Head 81e1e39b7a
Merge pull request #892 from betatim/bump-irkernel 2020-05-15 14:42:17 +02:00
Tim Head 26ce1899dc Fix RShiny proxy
The Shiny proxy was split out of the rstudio proxy package. This meant
that RStudio sessions were still being proxied but Shiny sessions not.
2020-05-11 11:41:32 +02:00
Tim Head c01bdf0130 Bump version of irkernel for R 4.0 2020-05-10 21:46:17 +02:00
Dan Lester 146db2f4f0 Only chmod u+x if not already executable, in case user is not owner but file is already g/o+x 2020-05-01 13:35:17 +01:00
Dan Lester 057c837a75 chmod start script from repo2docker-entrypoint 2020-04-29 18:48:10 +01:00
Tim Head 175b9308e8
Merge pull request #874 from hwine/GH-871_fix_env_option 2020-04-23 06:55:05 +02:00
Simon Li f1cd7c0af7
pypi jupyter-offlinenotebook==0.1.0 2020-04-20 10:20:30 +01:00
Hal Wine d9bf9d1a9b --env handling now consistent with Docker
Added a custom action handler for '-e' and '--env' so that the
'environment' variable passed to docker reflects how docker would have
processed the same args
2020-04-19 16:44:48 -07:00
Hal Wine 2c9027eb80 Change location & type of fix
The initial plan was to modify our copy of the environment variables as
set via cli argparsing at the point-of-use. However, that function's
purpose is to launch a container.  Adding argument processing doesn't
feel right.

The new plan is to modify our copy of the environment when the arguments
are parsed. `argparse` provides a hook to do such work: custom actions.
2020-04-18 10:29:10 -07:00
Tim Head 260774b9d2
Merge pull request #878 from davidanthoff/julia-1.4.1 2020-04-18 00:20:01 +02:00
David Anthoff 94adf0f3c7 Work around a Julia bug 2020-04-17 12:47:51 +02:00
David Anthoff 291e5d93e0 Add support for Julia 1.4.1 2020-04-17 12:46:13 +02:00
Hal Wine 54c44fcb23 Placeholder for work to come. 2020-04-15 20:49:56 -07:00
David Anthoff f050805bf0 Add support for Julia 1.4.0 2020-04-08 15:19:46 -07:00
Erik Sundell d366af9a51
Merge pull request #869 from betatim/update-server-proxy
[MRG] Update server proxy and rsession proxy
2020-04-05 00:22:46 +02:00
Erik Sundell 1900878302
Update repo2docker/buildpacks/_r_base.py 2020-04-04 21:36:46 +02:00
Tim Head 8b5b55732a Update server proxy and rsession proxy
Both haven't been updated in a long time (~1yr) so we should refresh
them. This brings both to the latest commit in their repos.
2020-04-04 15:05:00 +02:00
Tim Head 110d34d041 Improve handling of pip arguments when detecting local dependencies 2020-03-27 15:28:19 +01:00
Yuvi Panda 03ec3fe803
Make defaults channel be lower priority than conda-forge
Co-Authored-By: Isuru Fernando <isuruf@gmail.com>
2020-03-05 05:44:02 +00:00
YuviPanda 59684d0cbe Add defaults channel back 2020-03-05 11:02:52 +05:30
YuviPanda cc54383160 Don't explicitly try to upgrade conda
Unlike miniconda, miniforge is likely to be updated more
often (one hopes), so we don't have to install then upgrade
conda specifically
2020-03-04 22:13:30 +05:30
YuviPanda cbab4eaf43 Replace reference to md5 with reference to sha256 2020-03-04 15:02:34 +05:30
YuviPanda 0d0a2f8eb9 Use miniforge instead of miniconda to get conda
[miniforge](https://github.com/conda-forge/miniforge) is a new
community-led installer that uses conda-forge as the default
channel, rather than defaults. This gives us a few advantages:

- No mixing of defaults & conda-forge channel by default. My
  intuition is that this will reduce image size & build times,
  but I don't know enough about conda to say if this is real
- It provides installers for architectures unsupported by miniconda.
  This is particularly useful important for ARM & PowerPC, when we
  want to support those better.
- I like conda-forge, and we should do what we can to support them!
  This is a fairly easy, drop-in way to do so
- It is more likely to have newer versions of conda by default
  than miniconda
- It provides sha256 hashes for installers rather than just md5. This
  makes me personally happy

There should be no user-facing changes here as far as I can tell.

Fixes #858
2020-03-04 14:52:34 +05:30
Tim Head 26542dfc85
Merge pull request #851 from manics/mran-latest
[MRG] If looking for latest MRAN URL try earlier snapshots too
2020-02-24 10:19:09 +01:00
Simon Li 6a07a48b2d Test R latest MRAN date handling 2020-02-22 11:29:59 +00:00
Simon Li 5f3fcfcf08 If looking for latest MRAN URL try earlier snapshots too 2020-02-15 16:07:48 +00:00
Simon Li 57593936f0 utils.execute_cmd flush buffer if no EOL 2020-02-14 23:19:46 +00:00
Tim Head e405d9678f Make it optional to install the extension for lab
Some versions of lab used by repo2docker are not compatible with the
offlinenotebook extension. We try to install the extension and if it
fails we move on without raising an error.
2020-02-06 07:46:43 +01:00
Tim Head c340f4a44e Install jupyter-offlinenotebook extension
This adds the offlinenotebook extension to the base install. With this
users can download their notebook even after the server has gone away.
2020-02-05 23:16:57 +01:00
Chris Holdgraf 900d280561
[MRG] add Hydroshare as a content provider (#800)
[MRG] add Hydroshare as a content provider
2020-02-03 10:52:48 -07:00
Tim Head 356ea10868
Merge pull request #840 from minrk/py38
Python 3.8 support
2020-01-30 16:10:37 +01:00
Min RK ef9daa26e5 refreeze 2020-01-30 11:58:45 +01:00
Min RK eb80fff779 add py3.8 environment 2020-01-30 11:53:17 +01:00
Min RK acd582951b make python 3.7 the default explicitly
rather than implicit on the last entry
2020-01-30 11:53:16 +01:00
Min RK 4f1dcd8421 add py3.8 to freeze list
and remove 3.5 which is no longer being refrozen
2020-01-30 11:53:16 +01:00
Min RK fb995027de make conda install conda quick with -S
if the version is already satisfied
2020-01-30 11:53:16 +01:00