Commit Graph

4815 Commits

Author SHA1 Message Date
misuzu
aedbade43e python3Packages.pip: allow setting reproducible temporary directory via NIX_PIP_INSTALL_TMPDIR 2020-07-02 17:27:13 +02:00
Frederik Rietdijk
c33ca7c5ce Merge staging-next into staging 2020-07-02 17:14:53 +02:00
Mario Rodas
55f52680f9
Merge pull request #92011 from r-ryantm/auto-update/janet
janet: 1.10.0 -> 1.10.1
2020-07-02 09:10:51 -05:00
R. RyanTM
426bf48c48 janet: 1.10.0 -> 1.10.1 2020-07-02 12:23:08 +00:00
Mario Rodas
7e623d8c44
Merge pull request #91891 from r-ryantm/auto-update/zef
zef: 0.8.4 -> 0.8.5
2020-06-30 19:19:29 -05:00
R. RyanTM
9de27d21ee zef: 0.8.4 -> 0.8.5 2020-06-30 21:02:04 +00:00
Vincent Laporte
2b8ee31b6d eff: compatibility with JSoO 3.6.0 2020-06-28 09:59:04 +02:00
DavHau
d1c1a0c656 fix indentation in mk-python-derivation.nix 2020-06-27 14:26:03 +00:00
Maximilian Bosch
af064a0e12
php7{2,3}: fix darwin build
* Backported patches from `php-7.4` which fixes the env for all
  `gettext` and `zlib` tests.
* Setting `--with-libxml-dir` is still needed for versions 7.2 and 7.3.
2020-06-25 22:29:23 +02:00
Frederik Rietdijk
fe9a096f46 Merge staging-next into staging 2020-06-25 20:36:08 +02:00
Christian Kauhaus
1d805c99bd php: 7.2.29 -> 7.2.31, 7.3.16 -> 7.3.19, 7.4.6 -> 7.4.7
Point releases contain several security updates and bugfixes.

Changelog: https://www.php.net/ChangeLog-7.php#7.4.7

Fixes #88381
2020-06-25 15:41:31 +02:00
Frederik Rietdijk
6f72f0b0df Merge staging-next into staging 2020-06-24 19:04:26 +02:00
Stig Palmquist
880695f4c5
rakudo: 2020.05.1 -> 2020.06
dependencies:
nqp: 2020.05 -> 2020.06
moarvm: 2020.05 -> 2020.06
2020-06-23 14:16:23 +02:00
Frederik Rietdijk
9c3a585731
Merge pull request #91178 from FRidh/ldshared
python3: improve cross-compilation of extension modules, fixes #91171
2020-06-22 08:47:40 +02:00
Matthew Bauer
74c8e34ece
Merge pull request #91114 from danieldk/clojure-man-pages
clojure: install man pages
2020-06-21 21:33:20 -04:00
Frederik Rietdijk
f03734efa0 python3: improve cross-compilation of extension modules, fixes #91171 2020-06-21 16:29:57 +02:00
Eric Dallo
3d093cbbea
alda: init at 1.4.2 2020-06-20 12:25:02 -03:00
Matthew Bauer
ae423cfeab
Merge pull request #90028 from ggreif/wasmtime
wasmtime: 0.16.0 -> 0.17.0
2020-06-19 16:54:02 -04:00
Daniël de Kok
a6f7a8b010 clojure: install man pages
Also move `makeWrapper` to `nativeBuildInputs`.
2020-06-19 20:24:05 +02:00
Daniël de Kok
ad6c43fb33
Merge pull request #90720 from jlesquembre/clj-547
clojure: 1.10.1.507 -> 1.10.1.547
2020-06-19 20:16:59 +02:00
Mitsuhiro Nakamura
a7d1e40044
gauche: fix path to cert file (#90708) 2020-06-19 11:33:06 -04:00
José Luis Lafuente
64b2789c4e
clojure: 1.10.1.507 -> 1.10.1.547
Patch no longer need, added upstream:
https://clojure.atlassian.net/browse/TDEPS-150
2020-06-18 11:32:39 +02:00
Frederik Rietdijk
79f9ef8752 Merge master into staging-next 2020-06-18 09:01:39 +02:00
Gabriel Gonzalez
459cf94991 Nixpkgs support for dhall-to-nixpkgs
The motivation for this change is to enable a new Dhall command-line
utility called `dhall-to-nixpkgs` which converts Dhall packages to
buildable Nix packages.  You can think of `dhall-to-nixpkgs` as the
Dhall analog of `cabal2nix`.

You can find the matching pull request for `dhall-to-nixpkgs` here:

https://github.com/dhall-lang/dhall-haskell/pull/1826

The two main changes required to support `dhall-to-nixpkgs` are:

* Two new `buildDhall{Directory,GitHub}Package` utilities are added

  `dhall-to-nixpkgs` uses these in the generated output

* `pkgs.dhallPackages` now selects a default version for each package
  using the `prefer` utility

  All other versions are still buildable via a `passthru` attribute
2020-06-17 15:57:21 +02:00
Frederik Rietdijk
b7aec77a7b buildPythonPackage: don't recompile bytecode
There are too many regressions. Instead of reverting all the work that has been
done on this so far, let's just disable it Python-wide. That way we can
investigate and fix it easier.
2020-06-17 14:54:03 +02:00
Frederik Rietdijk
8850815577 Merge master into staging-next 2020-06-17 08:40:33 +02:00
Maximilian Bosch
385eeb4c35
Merge pull request #99377 from etu/php73-update
php73: 7.3.20 -> 7.3.23
2020-10-03 17:44:13 +02:00
Maximilian Bosch
73cf983321
Merge pull request #99376 from etu/php74-update
php74: 7.4.8 -> 7.4.11
2020-10-03 17:22:50 +02:00
Patrick Hilhorst
b133532434 treewide: remove some trailing whitespace to please ofborg 2020-10-02 09:01:35 -07:00
Patrick Hilhorst
f7e390e6d4 treewide: fix redirected urls (run 3)
Related:
 - 9fc5e7e473
 - 593e11fd94
 - 508ae42a0f

Since the last time I ran this script, the Repology API changed, so I had to
adapt the script used in the previous PR. The new API should be more robust, so
overall this is a positive (no more grepping the error messages for our relevant
data but just a nice json structure).

Here's the new script I used:

```sh
curl https://repology.org/api/v1/repository/nix_unstable/problems \
   | jq -r '.[] | select(.type == "homepage_permanent_https_redirect") | .data | "s@\(.url)@\(.target)@"' \
   | sort | uniq | tee script.sed
find -name '*.nix' | xargs -P4 -- sed -f script.sed -i
```

I will also add this script to `maintainers/scripts`.
2020-10-02 09:01:35 -07:00
Elis Hirwing
e04af50179
php73: 7.3.20 -> 7.3.23
- https://www.php.net/ChangeLog-7.php#7.3.21
 - https://www.php.net/ChangeLog-7.php#7.3.22
 - https://www.php.net/ChangeLog-7.php#7.3.23
2020-10-02 13:07:25 +02:00
Elis Hirwing
a792db658f
php74: 7.4.8 -> 7.4.11
https://www.php.net/ChangeLog-7.php#7.4.9
https://www.php.net/ChangeLog-7.php#7.4.10
https://www.php.net/ChangeLog-7.php#7.4.11
2020-10-02 12:58:58 +02:00
Chris Wögi
0253c131e5
erlangR23: 23.0.3 -> 23.1 (#98646)
Co-authored-by: cw <789@webuhu.at>
2020-10-01 18:09:47 +02:00
Maciej Krüger
5ad43894f2
spidermonkey_38: mark as insecure 2020-10-01 10:00:24 +02:00
Jonathan Ringer
b6654d9d6c python2Packages: default to dontUsePythonRecompileBytecode = true; 2020-06-16 13:02:50 -07:00
R. RyanTM
af65170aa0 janet: 1.9.1 -> 1.10.0 2020-06-16 03:35:17 +00:00
Frederik Rietdijk
59dda0a42a Merge master into staging-next 2020-06-15 08:07:00 +02:00
John Ericson
fd4dcae884 Merge remote-tracking branch 'upstream/nixpkgs-unstable' into staging 2020-06-14 21:46:35 +00:00
Timo Kaufmann
20e62aa580
Merge pull request #90249 from Ericson2314/fix-old-php
php < 7.4: Fix validation of PKG_CONFIG var
2020-06-14 12:30:36 +02:00
John Ericson
c1b9f86cdd php < 7.4: Fix validation of PKG_CONFIG var
They were assuming it is an absolute path, but it (conventionally) can
be something to look up on the PATH too.

Fixes #90202
2020-06-13 19:06:33 +00:00
Frederik Rietdijk
2e4b4e3300 Merge staging-next into staging 2020-06-13 11:03:26 +02:00
Frederik Rietdijk
1523382160 Merge master into staging-next 2020-06-13 11:02:21 +02:00
Frederik Rietdijk
818cf7827b buildPythonPackage: recompile bytecode for reproducibility
Due to a change in pip the unpacked wheels are no longer reproducible.
We recompile the bytecode to cleanup this error.
https://github.com/NixOS/nixpkgs/issues/81441
2020-06-13 10:36:28 +02:00
Frederik Rietdijk
a7ea828f09 pythonRemoveBinBytecodeHook: fix explanation 2020-06-13 10:20:14 +02:00
Doron Behar
01d4e2fe33 treewide: use ffmpeg_3 explicitly if not wanted otherwise
After making `ffmpeg` point to the latest `ffmpeg_4`, all packages that
used `ffmpeg` without requiring a specific version now use ffmpeg_3
explicitly so they shouldn't change.
2020-06-12 11:55:31 -07:00
Frederik Rietdijk
4087d3fe41 python: don't use optimizations on Darwin
Also, don't use autoreconfHook on Darwin with Python 3.
Darwin builds are still impure and fail with

    ld: warning: directory not found for option '-L/nix/store/6yhj9djska835wb6ylg46d2yw9dl0sjb-configd-osx-10.8.5/lib'
    ld: warning: directory not found for option '-L/nix/store/6yhj9djska835wb6ylg46d2yw9dl0sjb-configd-osx-10.8.5/lib'
    ld: warning: object file (/nix/store/0lsij4jl35bnhqhdzla8md6xiswgig5q-Libsystem-osx-10.12.6/lib/crt1.10.6.o) was built for newer OSX version (10.12) than being linked (10.6)
    DYLD_LIBRARY_PATH=/private/tmp/nix-build-python3-3.8.3.drv-0/Python-3.8.3 ./python.exe -E -S -m sysconfig --generate-posix-vars ;\
    if test $? -ne 0 ; then \
            echo "generate-posix-vars failed" ; \
            rm -f ./pybuilddir.txt ; \
            exit 1 ; \
    fi
    /nix/store/dsb7d4dwxk6bzlm845z2zx6wp9a8bqc1-bash-4.4-p23/bin/bash: line 5: 72015 Killed: 9               DYLD_LIBRARY_PATH=/private/tmp/nix-build-python3-3.8.3.drv-0/Python-3.8.3 ./python.exe -E -S -m sysconfig --generate-posix-vars
    generate-posix-vars failed
    make: *** [Makefile:592: pybuilddir.txt] Error 1
2020-06-12 18:29:08 +02:00
Matthew Bauer
0daaed8730 Revert "Merge pull request #89726 from doronbehar/ruby-gcc-ref"
This reverts commit 6590c33850, reversing
changes made to d659f968ba.
2020-06-11 12:05:14 -05:00
Matthew Bauer
6590c33850
Merge pull request #89726 from doronbehar/ruby-gcc-ref
rubyMinimal: don't reference stdenv.cc
2020-06-11 11:01:39 -05:00
Gabor Greif
557d075d7b wasmtime: 0.16.0 -> 0.17.0
https://github.com/bytecodealliance/wasmtime/releases/tag/v0.17.0
2020-06-10 22:45:49 +02:00
cw
0a5a19f464 erlangR23: init at 23.0.2
Enable parallel builds for recent Erlang/OTP version R22 and R23

Co-authored-by: Tino Breddin <t@tolbrino.com>
2020-06-10 20:06:12 +02:00
Vladimír Čunát
13add13388
Merge branch 'master' into staging-next
... to resolve a trivial conflict in libpcap.
2020-06-10 20:00:44 +02:00
Vladimír Čunát
a5f5d020c6
Merge branch 'staging-next' 2020-06-10 16:13:48 +02:00
R. RyanTM
81c9cc0b60 joker: 0.15.3 -> 0.15.4 2020-06-10 01:51:27 +00:00
Doron Behar
bb8ea13840 rubyMinimal: Disable JIT support and remove cc refs
To make rubyMinimal truely minimal, it shouldn't reference stdenv.cc
2020-06-07 10:32:11 +03:00
Doron Behar
0ab3c6b7d0 ruby: make removeReferencesToCC remove all cc refs
`lib/ruby/${version}/<platform>/rbconfig.rb` records the compiler used
for JIT.
2020-06-07 10:22:22 +03:00
Doron Behar
2da5872b72 ruby: Enable to disable JIT support 2020-06-07 10:18:16 +03:00
Daniël de Kok
1e2b6695cf pythonPackages.setuptoolsBuildHook: do not build in an isolated environment
When a PEP 517 project file is present, pip will not install
prerequisites in `site-packages`:

https://pip.pypa.io/en/stable/reference/pip/#pep-517-and-518-support

For the shell hook, this has the consequence that the generated
temporary directory that is added to PYTHONPATH does not contain
`site.py`. As a result, Python does not discover the Python
module. Thus when a user executes nix-shell in a project, they cannot
import the project's Python module.

This change adds the `--no-build-isolation` option to pip when
creating the editable environment, to correctly generate `site.py`,
even when a `pyproject.toml` is present.
2020-06-06 10:05:26 +02:00
Daniël de Kok
e2309df85e pythonPackages.pipBuildHook: do not build in an isolated environment
When a PEP 517 project file is present, pip will not install
prerequisites in `site-packages`:

https://pip.pypa.io/en/stable/reference/pip/#pep-517-and-518-support

For the shell hook, this has the consequence that the generated
temporary directory that is added to PYTHONPATH does not contain
`site.py`. As a result, Python does not discover the Python
module. Thus when a user executes nix-shell in a project, they cannot
import the project's Python module.

This change adds the `--no-build-isolation` option to pip when
creating the editable environment, to correctly generate `site.py`,
even when a `pyproject.toml` is present.
2020-06-06 10:05:26 +02:00
Frederik Rietdijk
1c68570ab2 Merge staging-next into staging 2020-06-05 19:42:16 +02:00
Frederik Rietdijk
43f71029cc Merge master into staging-next 2020-06-05 19:40:53 +02:00
Frederik Rietdijk
913bee36ed python3Minimal: override python38, not python3
This avoids an infinite recursion, accidentally introduced in b7ff746540.
2020-06-05 16:46:40 +02:00
Frederik Rietdijk
a337c44db6 python3Minimal: disable optimizations
No point for the bootstrapping.
2020-06-04 20:53:31 +02:00
Frederik Rietdijk
bcf03e8cd2 Revert "cpython: Optimize dynamic symbol tables, for a 6% speedup."
ofborg does not like fetching patches when the derivation is used during bootstrapping.

This reverts commit 480c8d1991.
2020-06-04 20:36:31 +02:00
Frederik Rietdijk
a2be64bf13
Merge pull request #84072 from gnprice/python-build
cpython: Use optimizations, for a 25% speedup.
2020-06-04 18:31:07 +02:00
volth
d89c58a012 perl: 5.30.2 -> 5.30.3 2020-06-04 18:14:24 +02:00
Frederik Rietdijk
b7ff746540 python3: now points to python38
Note this also means python3Minimal is now also Python 3.8.

This reverts commit eb1369670b and adds more.
2020-06-04 18:08:29 +02:00
Luflosi
2379e36124 python39: fix build on macOS
Basically the same changes as in 81d15948cc but for python3.9 instead of python3.8.
2020-06-04 17:11:29 +02:00
Ben Sima
976d2e5c0d shen-sources: set platforms to all
See https://github.com/NixOS/nixpkgs/pull/88915#issuecomment-636138041
2020-05-29 12:08:29 -07:00
Ben Sima
eaa851c41f shen-sbcl: set platforms to same as sbcl
See https://github.com/NixOS/nixpkgs/pull/88915#issuecomment-636138041
2020-05-29 12:07:53 -07:00
Frederik Rietdijk
36d9eeb9c7 Merge staging-next into staging 2020-05-29 17:06:01 +02:00
Frederik Rietdijk
c7d25a5db6 Merge master into staging-next 2020-05-29 17:05:38 +02:00
talyz
bfdc832aef
php.buildEnv: Let enabled extensions to pass through by default
If only extraConfig is specified in buildEnv, keep the currently
enabled extensions active. Brought up in #89011.
2020-05-29 00:32:12 +02:00
Frederik Rietdijk
362d88c2b1 Merge staging-next into staging 2020-05-27 15:27:28 +02:00
Frederik Rietdijk
1b7204ab3c Merge master into staging-next 2020-05-27 15:26:50 +02:00
Frederik Rietdijk
0367fa630d python38: 3.8.2 -> 3.8.3 2020-05-27 12:10:25 +02:00
Ben Sima
12ce76d7a5 shen-sbcl: init at 3.0.3 2020-05-26 15:28:28 -07:00
Ben Sima
5303493efc shen-sources: init at 22.3 2020-05-26 15:28:09 -07:00
Ryan Mulligan
f1d9510c99
Merge pull request #88761 from r-ryantm/auto-update/rakudo
rakudo: 2020.05 -> 2020.05.1
2020-05-25 07:50:52 -07:00
Jan Tojnar
f8ac6112b5
Merge pull request #84994 from r-ryantm/auto-update/spidermonkey 2020-05-25 15:22:42 +02:00
R. RyanTM
926e43c1c4 rakudo: 2020.05 -> 2020.05.1 2020-05-24 09:02:40 +00:00
Frederik Rietdijk
f17001afd8 Python: fix virtualenv with Python 2 2020-05-24 10:43:24 +02:00
Frederik Rietdijk
98bcf5d8da Python tests: fix use of is_virtualenv
Too many tests set it.
2020-05-24 10:43:24 +02:00
Frederik Rietdijk
c778596f56 Merge master into staging-next 2020-05-24 10:03:22 +02:00
Frederik Rietdijk
2de446e0b8 python.tests: also test virtualenv
Test whether creating a virtualenv functions.
2020-05-23 18:15:45 +02:00
adisbladis
203f382a4a
pypy: Remove bootstrap python from closure 2020-05-23 11:47:11 +01:00
Frederik Rietdijk
b34551384a Merge master into staging-next 2020-05-23 10:24:52 +02:00
Benjamin Andresen
47d4a68bb1 babashka: 0.0.94 -> 0.0.97 2020-05-21 00:10:29 +02:00
R. RyanTM
754562f855 janet: 1.8.1 -> 1.9.1 2020-05-19 08:05:24 +00:00
Jan Tojnar
7f40cfd97b
Merge branch 'master' into staging-next 2020-05-18 21:09:27 +02:00
Mario Rodas
033267eb93
Merge pull request #87921 from ggreif/wasmtime
wasmtime: 0.15.0 -> 0.16.0
2020-05-16 17:33:30 -05:00
Elis Hirwing
726cbe0d40
Merge pull request #87907 from etu/php74-update
php74: 7.4.4 -> 7.4.6
2020-05-16 14:27:44 +02:00
Elis Hirwing
a779efcaa0
php74: 7.4.5 -> 7.4.6
Changelog: https://www.php.net/ChangeLog-7.php#7.4.6
2020-05-16 13:23:23 +02:00
Jon
15b3d9d277
python3Packages.venvShellHook: add postVenvCreation (#87850)
* python3Packages.venvShellHook: add postVenvCreation

* python: docs: add postVenvCreation explaination
2020-05-16 09:34:11 +02:00
Gabor Greif
d89ae377d4 wasmtime-0.16.0: re-enable tests on Darwin
The issue https://github.com/bytecodealliance/wasmtime/issues/1556
appears to be fixed.
2020-05-16 04:56:26 +02:00
Gabor Greif
b39717abff wasmtime: 0.15.0 -> 0.16.0 2020-05-16 04:42:02 +02:00
Elis Hirwing
52d2e99182
php74: 7.4.4 -> 7.4.5
Changelog: https://www.php.net/ChangeLog-7.php#7.4.5
2020-05-15 22:10:03 +02:00
Frederik Rietdijk
92a26320e7 Merge master into staging-next 2020-05-14 09:25:25 +02:00
Colin L Rice
d6162dab50
go-modules: Update files to use vendorSha256 2020-05-14 07:22:21 +01:00
Greg Price
480c8d1991 cpython: Optimize dynamic symbol tables, for a 6% speedup.
I took a close look at how Debian builds the Python interpreter,
because I noticed it ran substantially faster than the one in nixpkgs
and I was curious why.

One thing that I found made a material difference in performance was
this pair of linker flags (passed to the compiler):

    -Wl,-O1 -Wl,-Bsymbolic-functions

In other words, effectively the linker gets passed the flags:

    -O1 -Bsymbolic-functions

Doing the same thing in nixpkgs turns out to make the interpreter
run about 6% faster, which is quite a big win for such an easy
change.  So, let's apply it.

---

I had not known there was a `-O1` flag for the *linker*!
But indeed there is.

These flags are unrelated to "link-time optimization" (LTO), despite
the latter's name.  LTO means doing classic compiler optimizations
on the actual code, at the linking step when it becomes possible to
do them with cross-object-file information.  These two flags, by
contrast, cause the linker to make certain optimizations within the
scope of its job as the linker.

Documentation is here, though sparse:
  https://sourceware.org/binutils/docs-2.31/ld/Options.html

The meaning of -O1 was explained in more detail in this LWN article:
  https://lwn.net/Articles/192624/
Apparently it makes the resulting symbol table use a bigger hash
table, so the load factor is smaller and lookups are faster.  Cool.

As for -Bsymbolic-functions, the documentation indicates that it's a
way of saving lookups through the symbol table entirely.  There can
apparently be situations where it changes the behavior of a program,
specifically if the program relies on linker tricks to provide
customization features:
  https://bugs.launchpad.net/ubuntu/+source/xfe/+bug/644645
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=637184#35
But I'm pretty sure CPython doesn't permit that kind of trick: you
don't load a shared object that tries to redefine some symbol found
in the interpreter core.

The stronger reason I'm confident using -Bsymbolic-functions is
safe, though, is empirical.  Both Debian and Ubuntu have been
shipping a Python built this way since forever -- it was introduced
for the Python 2.4 and 2.5 in Ubuntu "hardy", and Debian "lenny",
released in 2008 and 2009.  In those 12 years they haven't seen a
need to drop this flag; and I've been unable to locate any reports
of trouble related to it, either on the Web in general or on the
Debian bug tracker.  (There are reports of a handful of other
programs breaking with it, but not Python/CPython.)  So that seems
like about as thorough testing as one could hope for.

---

As for the performance impact: I ran CPython upstream's preferred
benchmark suite, "pyperformance", in the same way as described in
the previous commit.  On top of that commit's change, the results
across the 60 benchmarks in the suite are:

The median is 6% faster.

The middle half (aka interquartile range) is from 4% to 8% faster.

Out of 60 benchmarks, 3 come out slower, by 1-4%.  At the other end,
5 are at least 10% faster, and one is 17% faster.

So, that's quite a material speedup!  I don't know how big the
effect of these flags is for other software; but certainly CPython
tends to do plenty of dynamic linking, as that's how it loads
extension modules, which are ubiquitous in the stdlib as well as
popular third-party libraries.  So perhaps that helps explain why
optimizing the dynamic linker has such an impact.
2020-05-13 21:24:30 -07:00
Greg Price
52c04b0347 cpython: Use autoreconfHook to rebuild configure script.
In particular this will let us use patches that apply to configure.ac.
2020-05-13 21:23:48 -07:00
Michael Raskin
b2f83be34d
Merge pull request #87546 from FireyFly/pkgs/j/avx-flag
j: add avxSupport option
2020-05-13 23:31:25 +00:00
Jonas Höglund
20235a89f8 j: add avxSupport option 2020-05-14 00:51:13 +02:00
Mario Rodas
6a16787d26
Merge pull request #87649 from filalex77/wasmer-0.17.0
wasmer: 0.16.2 -> 0.17.0
2020-05-13 00:58:59 -05:00
Oleksii Filonenko
e2a5709d9c wasmer: 0.16.2 -> 0.17.0 2020-05-12 08:01:43 +00:00
Greg Price
f8a8243bd3 cpython: Use --enable-optimizations, for a 16% speedup.
Without this flag, the configure script prints a warning at the end,
like this (reformatted):

  If you want a release build with all stable optimizations active
  (PGO, etc), please run ./configure --enable-optimizations

We're doing a build to distribute to people for day-to-day use,
doing things other than developing the Python interpreter.  So
that's certainly a release build -- we're the target audience for
this recommendation.

---

And, trying it out, upstream isn't kidding!  I ran the standard
benchmark suite that the CPython developers use for performance
work, "pyperformance".  Following its usage instructions:
  https://pyperformance.readthedocs.io/usage.html
I ran the whole suite, like so:

  $ nix-shell -p ./result."$variant" --run '
      cd $(mktemp -d); python -m venv venv; . venv/bin/activate
      pip install pyperformance
      pyperformance run -o ~/tmp/result.'"$variant"'.json
    '

and then examined the results with commands like:

  $ python -m pyperf compare_to --table -G \
      ~/tmp/result.{$before,$after}.json

Across all the benchmarks in the suite, the median speedup was 16%.
(Meaning 1.16x faster; 14% less time).

The middle half of them ranged from a 13% to a 22% speedup.

Each of the 60 benchmarks in the suite got faster, by speedups
ranging from 3% to 53%.

---

One reason this isn't just the default to begin with is that, until
recently, it made the build a lot slower.  What it does is turn on
profile-guided optimization, which means first build for profiling,
then run some task to get a profile, then build again using the
profile.  And, short of further customization, the task it would use
would be nearly the full test suite, which includes a lot of
expensive and slow tests, and can easily take half an hour to run.

Happily, in 2019 an upstream developer did the work to carefully
select a more appropriate set of tests to use for the profile:
  https://github.com/python/cpython/commit/4e16a4a31
  https://bugs.python.org/issue36044
This suite takes just 2 minutes to run.  And the resulting final
build is actually slightly faster than with the much longer suite,
at least as measured by those standard "pyperformance" benchmarks.
That work went into the 3.8 release, but the same list works great
if used on older releases too.

So, start passing that --enable-optimizations flag; and backport
that good-for-PGO set of tests, so that we use it on all releases.
2020-05-11 23:37:04 -07:00
Jörg Thalheim
fa44d3ad71
Merge pull request #86593 from bandresen/babashka_versionbump
babashka: 0.0.89 -> 0.0.94
2020-05-12 00:00:39 +01:00
Benjamin Andresen
cb9b1167e3 babashka: 0.0.89 -> 0.0.94 2020-05-11 22:57:49 +02:00
Jonathan Ringer
884436b254 pythonPackages.pytestCheckHook: disable setuptoolsCheckPhase 2020-05-11 22:12:08 +02:00
Frederik Rietdijk
a0b4e664c0 Merge staging-next into staging 2020-05-11 22:09:27 +02:00
Frederik Rietdijk
4ddd080d19 Merge staging-next into staging 2020-05-10 09:45:44 +02:00
talyz
9f09253e52
php.buildPecl: Allow PECLs to depend on other PECLs
Some PECLs depend on other PECLs and, like internal PHP extension
dependencies, need to be loaded in the correct order. This makes this
possible by adding the argument "peclDeps" to buildPecl, which adds
the extension to buildInputs and is treated the same way as
internalDeps when the extension config is generated.
2020-05-09 23:38:21 +02:00
adisbladis
2e69f8977d
Merge pull request #87138 from lukegb/fix-php
php: correctly set outputsToInstall after withExtensions.
2020-05-09 15:40:35 +02:00
Jörg Thalheim
887295fd2d
treewide: remove the-kenny from maintainers
@the-kenny did a good job in the past and is set as maintainer in many package,
however since 2017-2018 he stopped contributing. To create less confusion
in pull requests when people try to request his feedback, I removed him as
maintainer from all packages.
2020-05-09 10:28:57 +01:00
Josef Kemetmüller
3818cd9049 python: Fix creating RPMs from Python packages
This should enable (manual) building of RPMs from python projects using
the `python setup.py bdist_rpm` command on systems where `rpmbuild` is
not located in `/usr/bin/`. (e.g. NixOS)
The discovery of the rpmbuild command was fixed upstream in Python 3.8,
so this commit backports the relevant patch to our currently supported
Python 3 versions.

Fixes: #85204
2020-05-09 11:15:28 +02:00
Izorkin
4b93708b31 ruby: fix soname tag 2020-05-08 09:36:01 +03:00
R. RyanTM
9be92a964a mujs: 1.0.6 -> 1.0.7 2020-05-06 23:22:01 -07:00
Luke Granger-Brown
c13df548a3 php: override outputsToInstall when using withExtensions
At the moment, using .withExtensions on a PHP derivation will
produce something which can't be used inside an
environment.systemPackages array, because outputsToInstall refers
to an output which doesn't exist on the final derivation.

Instead, override it back to just containing the single output
"out".
2020-05-06 21:44:27 +01:00
Stig Palmquist
cc1a17145e
rakudo: 2020.02.1 -> 2020.05
dependencies:
moarvm: 2020.02.1 -> 2020.05
nqp: 2020.02.1 -> 2020.05
2020-05-06 15:20:57 +02:00
Jörg Thalheim
f1eef414d1
Merge pull request #80655 from hlolli/release/fix-lumo 2020-05-06 07:42:32 +01:00
cw
e506284193 elixir_1_10: 1.10.2 -> 1.10.3 2020-05-05 20:13:31 +02:00
Mario Rodas
746d4d184a
Merge pull request #86932 from r-ryantm/auto-update/joker
joker: 0.15.0 -> 0.15.3
2020-05-05 08:02:04 -05:00
R. RyanTM
28bea11385 joker: 0.15.0 -> 0.15.3 2020-05-05 12:18:09 +00:00
R. RyanTM
e337e01dde groovy: 3.0.2 -> 3.0.3 2020-05-05 11:27:26 +00:00
hlolli
a8a2337c15
lumo 1.10.1: fix missing npm dependency 2020-05-04 22:17:10 +02:00
tckmn
7493a7eb91
jelly: init at 0.1.31 (#82178) 2020-05-04 18:31:03 +05:30
Ryan Mulligan
64c0e5f7c3
Merge pull request #86762 from r-ryantm/auto-update/zef
zef: 0.8.3 -> 0.8.4
2020-05-04 05:54:49 -07:00
R. RyanTM
5f96bbf67b zef: 0.8.3 -> 0.8.4 2020-05-04 11:31:05 +00:00
Jörg Thalheim
0f52291a51
Merge pull request #85602 from nomeata/joachim/bumpwasmtime 2020-05-04 11:19:55 +01:00
Joachim Breitner
11894914e4 Disable test suite on darwin
no regression over `master` where the test suite didn’t run at all
2020-05-04 10:19:25 +02:00
Pavol Rusnak
7b0167204d treewide: use https for nixos.org and hydra.nixos.org
tarballs.nixos.org is omitted from the change because urls from there
are always hashed and checked
2020-05-03 22:14:21 -07:00
Mario Rodas
eafd5b4d1b
racket: 7.6 -> 7.7 2020-05-03 04:20:00 -05:00
Pavol Rusnak
420124adf8 python: remove isPy33, isPy34 2020-05-04 18:49:45 -07:00
Joachim Breitner
566cd87dee wasmtime : 0.12.0 -> 0.15.0
and enable tests again, now that upstream fixed stuff.
2020-05-02 19:40:23 +02:00
Daiderd Jordan
727d9317fb
bats: fixup readlink reference
Using `readlink -f` requires coreutils, on platforms like darwin where
this isn't the GNU variant by default it would fail outide of a
nix-shell.
2020-05-02 11:46:37 +02:00
R. RyanTM
a0aae69936 bats: 1.1.0 -> 1.2.0 2020-05-02 02:31:25 +00:00
Nathan van Doorn
229cdf3d99 metamath: 0.181 -> 0.182
Also includes a fix to the makefile that lets the autoconf stuff Just Work(tm)
2020-05-01 09:22:33 +02:00
Vladimír Čunát
b9f359b167
Merge #85483: luajit*: bump to 2020-03-20, GC64 mode switch 2020-05-01 08:27:38 +02:00
Jesse Wattenbarger
5f26d13f37
hy: 0.17.0 -> 0.18.0 (#84661)
Co-Authored-By: Jon <jonringer@users.noreply.github.com>
2020-04-29 22:19:15 +01:00
Elis Hirwing
6d5b0b13f3
php: Set maintainer team as maintainers
Also passthrough the meta of the package to have description,
homepage, license, maintainers and other metadata passed through to
the commonly used attribute.
2020-04-29 20:11:40 +02:00
Elis Hirwing
27b9b7b3af
Merge pull request #85026 from talyz/php_buildenv_override
php.buildEnv: Make the exported php package overridable, improve handling of currently enabled extensions, etc
2020-04-29 19:57:37 +02:00
Elis Hirwing
410c38f317
Revert "PHP maintainer team" 2020-04-29 19:56:37 +02:00
Elis Hirwing
3b21abb3d3
Merge pull request #85575 from etu/php-maintainer-team
PHP maintainer team
2020-04-29 19:56:03 +02:00
talyz
2535cdfe91
php: Unify the usage of the php package in php-packages.nix
Instead of using two different php packages in php-packages.nix, one
wrapper and one unwrapped, simply use the wrapper and use its
"unwrapped" attribute when necessary. Also, get rid of the packages
and extensions attributes from the base package, since they're no
longer needed.
2020-04-29 13:59:29 +02:00
talyz
5cad1b4aff
php: Get rid of the phpXXbase attributes, update docs
Since the introduction of php.unwrapped there's no real need for the
phpXXbase attributes, so let's remove them to lessen potential
confusion and clutter. Also update the docs to make it clear how to
get hold of an unwrapped PHP if needed.
2020-04-29 13:45:48 +02:00
talyz
3bfd4e864f
php: Add passthru.tests 2020-04-29 13:45:07 +02:00
talyz
ef990961bc
php.buildEnv: Provide the unwrapped php package in php.unwrapped
This is useful if you need to access the dev output of the unwrapped
derivation.
2020-04-29 13:44:20 +02:00
talyz
c3d5d92f4a
php.buildEnv: Add phpIni attribute for easy access to the php.ini 2020-04-29 12:12:59 +02:00
Eric Dallo
5e4fe400c0
dart: 2.7.1 -> 2.7.2 (stable) + 2.8.0-dev.10.0 -> 2.9.0-4.0.dev (dev) 2020-04-28 09:56:30 -03:00
Jörg Thalheim
bd282ba93d
Merge pull request #84350 from bandresen/babashka_0.0.78->0.0.79
babashka: 0.0.78 -> 0.0.89
2020-04-27 16:15:32 +01:00
Luka Blaskovic
b67cbe5a2d luajit_2_0, luajit_2_1: bump to 2020-03-20, GC64 mode switch 2020-04-27 07:42:21 +00:00
talyz
d61040716e
php.buildEnv: Automatically include extension dependencies
Some extensions depend on other extensions. Previously, these had to
be added manually to the list of included extensions, or we got a
cryptic error message pointing to strings-with-deps.nix, which wasn't
very helpful. This makes sure all required extensions are included in
the set from which textClosureList chooses its snippets.
2020-04-26 16:43:29 +02:00
talyz
72636bc2f6
php: Get rid of all config.php parameters
Since all options controlled by the config.php parameters can now be
overridden directly, there's no reason to keep them around.
2020-04-26 16:43:23 +02:00
talyz
2ba7926959
php.buildEnv: Provide a list of currently enabled extensions
Rework withExtensions / buildEnv to handle currently enabled
extensions better and make them compatible with override. They now
accept a function with the named arguments enabled and all, where
enabled is a list of currently enabled extensions and all is the set
of all extensions. This gives us several nice properties:

 - You always get the right version of the list of currently enabled
   extensions

 - Invocations chain

 - It works well with overridden PHP packages - you always get the
   correct versions of extensions

As a contrived example of what's possible, you can add ImageMagick,
then override the version and disable fpm, then disable cgi, and
lastly remove the zip extension like this:

{ pkgs ? (import <nixpkgs>) {} }:
with pkgs;

let
  phpWithImagick = php74.withExtensions ({ all, enabled }: enabled ++ [ all.imagick ]);

  phpWithImagickWithoutFpm743 = phpWithImagick.override {
    version = "7.4.3";
    sha256 = "wVF7pJV4+y3MZMc6Ptx21PxQfEp6xjmYFYTMfTtMbRQ=";
    fpmSupport = false;
  };

  phpWithImagickWithoutFpmZip743 = phpWithImagickWithoutFpm743.withExtensions (
    { enabled, all }:
      lib.filter (e: e != all.zip) enabled);

  phpWithImagickWithoutFpmZipCgi743 = phpWithImagickWithoutFpmZip743.override {
    cgiSupport = false;
  };
in
  phpWithImagickWithoutFpmZipCgi743
2020-04-26 16:43:05 +02:00
Benjamin Andresen
f6ee88f41e babashka: increase java heap space max to 4500
3g has very long build times and also doesn't build 100% of the time
it's also the new default since:
7fc33dcb21
2020-04-26 13:17:52 +02:00
Frederik Rietdijk
6f873e98f4 Python integration tests: disable for older python 3 versions
because the package that is used as part of the test does not support
older versions.
2020-04-25 07:59:37 +02:00
Frederik Rietdijk
71171b3225 Python tests: test venv from a nix env with Python 3.8
This test was disabled because it did not function yet, however,
apparently it does with 3.8.
2020-04-25 07:59:37 +02:00
Benjamin Andresen
a7f59a5946 babashka: utf8 + nativeBuildinputs fix
utf8: see borkdude/babashka/issues/359
nativeBuildinputs: this PR's review
2020-04-24 19:47:49 +02:00
Benjamin Andresen
07f69d4e37 babashka: 0.0.78 -> 0.0.89 2020-04-24 19:47:33 +02:00
talyz
abedfadd73
php.buildEnv: Respect override
Make buildEnv take earlier overridden values into account by
forwarding all arguments (a merge of generic's arguments, all previous
arguments and the current arguments) to the next invocation of
buildEnv.
2020-04-24 18:48:29 +02:00
talyz
dde5f5f899
php: Make all arguments to a PHP build overridable
Make all arguments to a PHP build overridable; i.e, both configuration
flags, such as valgrindSupport, and packages, such as valgrind:

php.override { valgrindSupport = false; valgrind = valgrind-light; }

This applies to packages built by generic and buildEnv/withExtensions;
i.e, it works with both phpXX and phpXXBase packages.

The following changes were also made to facilitate this:

 - generic and generic' are merged into one function

 - generic now takes all required arguments for a complete build and
   is meant to be called by callPackage

 - The main function called from all-packages.nix no longer takes all
   required arguments for a complete build - all arguments passed to it
   are however forwarded to the individual builds, thus default
   arguments can still be overridden from all-packages.nix
2020-04-24 18:41:53 +02:00
talyz
a463261415
php.buildEnv: Make the exported php package overridable
This implements the override pattern for builds done with buildEnv, so
that we can, for example, write

php.override { fpmSupport = false; }

and get a PHP package with the default extensions enabled, but PHP
compiled without fpm support.
2020-04-24 13:05:37 +02:00
Keshav Kini
7fb25b93a4 acl2: 8.2 -> 8.3 2020-04-23 17:15:41 -07:00
Elis Hirwing
d3605d66ed
php: Set maintainer team as maintainers
Also passthrough the meta of the package to have description,
homepage, license, maintainers and other metadata passed through to
the commonly used attribute.
2020-04-22 06:47:58 +02:00
Frederik Rietdijk
23be4a8b4d Merge master into staging-next 2020-04-21 19:59:56 +02:00
Frederik Rietdijk
cf1a68360e python2: 2.7.17 -> 2.7.18 2020-04-21 11:21:39 +02:00
Matthew Bauer
ff2f2644f8 blas,lapack: use isILP64 instead of is64bit
This is a better name since we have multiple 64-bit things that could
be referred to.

LP64  : integer=32, long=64, pointer=64
ILP64 : integer=64, long=64, pointer=64
2020-04-20 16:02:43 -05:00
Michael Raskin
916aa568a2
Merge pull request #85547 from AshyIsMe/j901
j: 807 -> 901
2020-04-20 00:57:34 +00:00
Aaron Ash
0c454c46f4 j: 807 -> 901
Upgrade j to 901.
Uses the newer build scripts in the make2 directory in the jsource repo.
2020-04-20 06:27:20 +10:00
Matthew Bauer
a2d9f58433
Merge pull request #85512 from ggreif/wasmtime
wasmtime-0.12.0: fix cargoSha256
2020-04-18 22:03:24 -05:00
Gabor Greif
94d88d3b70 wasmtime-0.12.0: fix cargoSha256 2020-04-18 21:30:29 +02:00
Vladimír Čunát
d96487b9ca
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1582510
2020-04-18 07:42:26 +02:00
Matthew Bauer
1c8aba8334 treewide: use blas and lapack
This makes packages use lapack and blas, which can wrap different
BLAS/LAPACK implementations.

treewide: cleanup from blas/lapack changes

A few issues in the original treewide:

- can’t assume blas64 is a bool
- unused commented code
2020-04-17 16:24:09 -05:00
Florian Klink
357be5c66c
Merge pull request #85385 from takikawa/racket-enable-useprefix
racket: use --enable-useprefix configure flag.
2020-04-17 13:17:00 +02:00
Maximilian Bosch
cd5bc89cca
evcxr: 0.5.0 -> 0.5.1
582ce09f21/RELEASE_NOTES.md (version-051)
2020-04-17 00:28:12 +02:00
Asumu Takikawa
b271255ede racket: use --enable-useprefix configure flag.
This is to fix a regression in upstream Racket packaging, the upstream
bug tracking this is here:

  https://github.com/racket/racket/issues/3046

When the bug is fixed this workaround will be unnecessary.
2020-04-16 09:49:21 -07:00
Jan Tojnar
3d8e436917
Merge branch 'master' into staging-next 2020-04-16 10:09:43 +02:00
Joachim Breitner
acc5a9c55f wasmtime: Do not prefix version with v
it seems that this breaks the use of `nix-env -i wasmtime`
2020-04-14 20:23:48 +02:00
Jan Tojnar
a04625379a
Merge branch 'master' into staging-next 2020-04-13 18:50:35 +02:00
R. RyanTM
d744f0f3d7 supercollider: 3.10.4 -> 3.11.0 2020-04-13 00:42:34 -07:00
Gabriel Gonzalez
9f2dd99705 Upate buildDhallPackage to use default version of Dhall
Now that the default version is sufficiently new we don't need to
pin the Dhall version any longer in `buildDhallPackage`
2020-04-11 09:07:58 -07:00
R. RyanTM
7b6ebea667 spidermonkey_68: 68.4.2 -> 68.7.0 2020-04-11 13:01:38 +00:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Jan Tojnar
1ab03c3a76
Merge branch 'master' into staging-next 2020-04-10 12:12:56 +02:00
talyz
472d5c187b
php.buildEnv: Don't inherit dev from the original php
mkDerivation uses the dev output in buildInputs if it exits, hence the
php-with-extensions package was never built or put into the path of
packages dependent on it during build. With this fix, the php packages
built with buildEnv or withExtensions don't have any dev outputs;
packages which need the dev output can refer to the phpXXbase packages
instead.
2020-04-08 15:13:07 +02:00
R. RyanTM
d6d2007e7c groovy: 3.0.0 -> 3.0.2 2020-04-07 12:24:19 -07:00
Maximilian Bosch
de083945f2
Merge pull request #84389 from etu/php-updates
php: 7.2.28 -> 7.2.29, 7.3.15 -> 7.3.16, 7.4.3 -> 7.4.4
2020-04-06 17:48:18 +02:00
Frederik Rietdijk
2420184727 Merge staging into staging-next 2020-04-06 08:54:28 +02:00
Mario Rodas
1c7b7c8fee
Merge pull request #84404 from r-ryantm/auto-update/jruby
jruby: 9.2.11.0 -> 9.2.11.1
2020-04-05 19:56:56 -05:00
Mario Rodas
6fca9ab047
Merge pull request #84403 from r-ryantm/auto-update/joker
joker: 0.14.2 -> 0.15.0
2020-04-05 19:55:55 -05:00
R. RyanTM
84c2b8324d jruby: 9.2.11.0 -> 9.2.11.1 2020-04-05 22:06:39 +00:00
R. RyanTM
89840eb7ae joker: 0.14.2 -> 0.15.0 2020-04-05 22:01:56 +00:00
Elis Hirwing
8272ebe961
php72: 7.2.28 -> 7.2.29
Changelog: https://www.php.net/ChangeLog-7.php#7.2.29
2020-04-05 22:22:40 +02:00
Elis Hirwing
1118080dc0
php73: 7.3.15 -> 7.3.16
Changelog: https://www.php.net/ChangeLog-7.php#7.3.16
2020-04-05 22:22:26 +02:00
Elis Hirwing
faf79b6384
php74: 7.4.3 -> 7.4.4
Changelog: https://www.php.net/ChangeLog-7.php#7.4.4
2020-04-05 22:05:16 +02:00
Elis Hirwing
3b6539896b
Merge pull request #83896 from etu/slim-down-default-php-v3
PHP: Make the default package more sane [v3]
2020-04-05 20:00:03 +02:00
Benjamin Hipple
0454fae7ca
Merge pull request #84130 from OmnipotentEntity/rfc45-part2
treewide: quoted urls for RFC45, only the rebuilds
2020-04-05 11:15:20 -04:00
talyz
ca8b8a26e9
php: Add enabledExtensions attribute to PHP derivations
This provides a means to build a PHP package based on a list of
extensions from another.

For example, to generate a package with all default extensions
enabled, except opcache, but with ImageMagick:

php.withExtensions (e:
  (lib.filter (e: e != php.extensions.opcache) php.enabledExtensions)
  ++ [ e.imagick ])
2020-04-05 16:46:38 +02:00
talyz
b4d289a7ae
php: Add missing hash extension to php < 7.4 2020-04-05 16:45:53 +02:00
talyz
1345e5b763
php: Add withExtensions as a simpler alternative to buildEnv 2020-04-05 16:45:47 +02:00
talyz
4ff523f691
php: Simplify php-packages import, rename exts -> extensions 2020-04-05 16:45:41 +02:00
Elis Hirwing
1b69056e46
php: passthru .dev output as well 2020-04-05 16:45:23 +02:00
Elis Hirwing
a2099156ec
php: split php.packages to php.packages and php.extensions
So now we have only packages for human interaction in php.packages and
only extensions in php.extensions. With this php.packages.exts have
been merged into the same attribute set as all the other extensions to
make it flat and nice.

The nextcloud module have been updated to reflect this change as well
as the documentation.
2020-04-05 16:45:17 +02:00
Elis Hirwing
0dc95728ba
nixos/php: Move the pcre tests to the php test attribute 2020-04-05 16:44:59 +02:00
talyz
716fd0e2f5
php.buildEnv: Put the extraConfig snippet after extensions
Make sure all the extensions are loaded first, then read the custom
config where possible.
2020-04-05 16:44:31 +02:00
Elis Hirwing
82cd2fbbf4
php: Wrap the programs and provide an environment variable instead of a flag 2020-04-05 16:44:25 +02:00
talyz
90dcab948c
php.packages: Use derivations for internalDeps in mkExtension
Make mkExtension put headers in the dev output and use them, instead of
a different part of the current source tree, when referring to another
extension by using internalDeps.

This means external extensions can be built against the internal ones.
2020-04-05 16:44:01 +02:00
talyz
b1106a1851
phpPackages: Move phpPackages to php.packages
This means php packages can now refer to other php packages by looking
them up in the php.packages attribute and gets rid of the internal
recursive set previously defined in php-packages.nix. This also means
that in applications where previously both the php package and the
corresponding version of the phpPackages package set had to be
specified, the php package will now suffice.

This also adds the phpWithExtensions parameter to the
php-packages.nix, which can be used by extensions that need a fully
featured PHP executable.
2020-04-05 16:43:50 +02:00
Michael Reilly
e20f308b8e treewide: quoted urls for RFC45, only the rebuilds 2020-04-05 10:17:15 -04:00
volth
5bea90df81 perl: 5.30.1 -> 5.30.2 2020-04-05 13:17:42 +02:00
Frederik Rietdijk
866c5aa090 Merge master into staging-next 2020-04-05 08:33:39 +02:00
AndersonTorres
78cd46512c babashka: 0.0.71 -> 0.0.78 2020-04-04 18:34:09 -03:00
Frederik Rietdijk
92124ed660 Merge master into staging-next 2020-04-03 21:54:40 +02:00
talyz
8924a7de3d
php: Make buildEnv recursive + take extension deps into account
A slight rewrite of buildEnv which:

1. Makes buildEnv recursively add itself to its output, so that it can
   be accessed from any php derivation.

2. Orders the extension text strings according to their internalDeps
   attribute - dependencies have to be put before dependants in the
   php.ini or they will fail to load due to missing symbols.
2020-04-03 10:11:15 +02:00
talyz
282337799b
php: Build an even slimmer base
This moves yet more extensions from the base build to
phpPackages.ext. Some of the extensions are a bit quirky and need
patching for this to work, most notably mysqlnd and opcache.

Two new parameters are introduced for mkExtension - internalDeps and
postPhpize. internalDeps is used to specify which other internal
extensions the current extension depends on, in order to provide them
at build time. postPhpize is for when patches and quirks need to be
applied after running phpize.

Patch notes:

- For opcache, older versions of PHP have a bug where header files are
  included in the wrong order.

- For mysqlnd, the config.h is never included, so we include it in the
  main header file, mysqlnd.h. Also, the configure script doesn't add
  the necessary library link flags, so we add them to the variable
  configure should have added them to.
2020-04-03 10:11:13 +02:00
Ryan Mulligan
b0a65d5953
Merge pull request #83981 from r-ryantm/auto-update/janet
janet: 1.7.0 -> 1.8.1
2020-04-01 15:25:53 -07:00
R. RyanTM
86aa3630a7 janet: 1.7.0 -> 1.8.1 2020-04-01 13:24:36 +00:00
Mario Rodas
3ab49aac64 ruby: remove ruby_2_4 patchset 2020-04-01 12:22:14 +00:00
Mario Rodas
a7f1e9f1ef ruby_2_7: 2.7.0 -> 2.7.1
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-7-1-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
b312ecf34e ruby_2_6: 2.6.5 -> 2.6.6
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-6-6-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
99b09d6b8f ruby_2_5: 2.5.7 -> 2.5.8
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-5-8-released/
2020-04-01 12:22:14 +00:00
Mario Rodas
dd24a2f2a0 ruby: update RVM patchsets 2020-04-01 12:22:14 +00:00
Elis Hirwing
96a5e0c928
php: init phpXYbase packages and make the default php extended by default
Also, add opcache to default extensions since it significantly
increases PHP's performance and is by default enabled on Debian based
distributions. Not having it enabled by default results in a puzzling
performance loss for anyone attempting to migrate from Debian/Ubuntu
to NixOS who is unaware of this. Therefore, enable it by default. /talyz
2020-03-31 22:06:45 +02:00
Jan Tojnar
3e0f4e202f
Merge branch 'master' into staging-next 2020-03-31 21:32:15 +02:00
Greg Price
9d8831c8fe cpython: Drop unrecognized --with-threads configure flag.
The ./configure script prints a warning when passed this flag,
starting with 3.7:

  configure: WARNING: unrecognized options: --with-threads

The reason is that there's no longer such a thing as a build
without threads.

Eliminate the warning, by only passing the flag on the older releases
that accept it.

Upstream change and discussion:
  https://github.com/python/cpython/commit/a6a4dc816
  https://bugs.python.org/issue31370
2020-03-30 22:56:48 -07:00
Frederik Rietdijk
c392d70518 pkgsStatic.python3: fix build 2020-03-30 17:06:38 +02:00
Elis Hirwing
9404daf91c
php: Make a slimmer php as default 2020-03-29 11:06:58 +02:00
Vladimír Čunát
804477b875
Merge #75430: erlangR22: 22.1.7 -> 22.3 2020-03-29 08:41:36 +02:00
Frederik Rietdijk
a36be028f5 Merge staging-next into staging 2020-03-28 21:15:15 +01:00
Jörg Thalheim
774ddebd87
Merge pull request #83472 from Mic92/propragate-darwin-go
Propragate darwin go
2020-03-28 06:57:59 +00:00
Stig Palmquist
62831e1023 rakudo: 2020.02 -> 2020.02.1
dependencies:
moarvm: 2020.02 -> 2020.02.1
nqp: 2020.02 -> 2020.02.1
2020-03-27 02:00:17 -07:00
Jonathan Ringer
279438e7f8 python: add use-pkgs-prefix option to update script 2020-03-27 01:47:30 -07:00
Jörg Thalheim
066db11215
Revert "Merge pull request #83099 from marsam/fix-buildGoModule-packages-darwin"
This reverts commit 4e6bf03504, reversing
changes made to afd997aab6.

Instead we propagate those frameworks from the compiler again
2020-03-27 07:33:21 +00:00
Vladimír Čunát
a533068c3e
Merge #82728: racket: enable building on aarch64 2020-03-24 11:59:03 +01:00
Tor Hedin Brønner
4ee2aac075
spidermonkey_68: init at 68.4.2
mostly copied over

- now uses python3

https://mail.gnome.org/archives/distributor-list/2020-February/msg00000.html
2020-03-24 07:06:55 +01:00
Jan Tojnar
986fbf4799
Merge branch 'staging-next' into staging 2020-03-24 01:51:55 +01:00
Michael Raskin
db4ccddb35
Merge pull request #83185 from idontgetoutmuch/octave-for-macos
Build octave on macos
2020-03-23 08:17:27 +00:00
Dominic Steinitz
6d196e8c92 Build octave on macos 2020-03-23 06:31:11 +00:00
Orivej Desh
1b89aa3f7a Merge branch 'master' into staging 2020-03-23 00:53:16 +00:00
Mario Rodas
618075428b joker: fix build on darwin 2020-03-21 05:29:00 -05:00
Jonathan Ringer
a9c994ad0b python: add pythonNamespacesHook 2020-03-18 12:20:51 -07:00
Mario Rodas
ef35625322
Merge pull request #79920 from r-ryantm/auto-update/groovy
groovy: 2.5.9 -> 3.0.0
2020-03-17 08:28:38 -05:00
cw
98f6a60460 erlangR22: 22.1.7 -> 22.3 2020-03-17 06:54:06 +01:00
Benno Fünfstück
ef3175bcfa racket: enable building on aarch64 2020-03-16 15:23:31 +01:00
Elis Hirwing
f1dfb6e0f5
php: get rid of with lib; used on entire file 2020-03-15 18:04:57 +01:00
Elis Hirwing
6100ac4ab2
php: remove unsupported options
- mcrypt was removed in 7.2
 - mhash was integrated into hash in 7.0
2020-03-15 18:04:25 +01:00
Elis Hirwing
da3384a25d
php: Re-indent main derivation 2020-03-15 10:27:37 +01:00
Frederik Rietdijk
7447fff95a
Fix sys.prefix in case of a Nix env
The prefix will now be correct in case of Nix env.

Note, however, that creating a venv from a Nix env still does not function. This does not seem to be possible
with the current approach either, because venv will copy or symlink our Python wrapper. In case it symlinks
(the default) it won't see a pyvenv.cfg. If it is copied I think it should function but it does not...
2020-03-14 21:39:32 +00:00
adisbladis
753122388d
Python: Add integration test verifying NIX_PYTHONPATH with Mypy 2020-03-14 21:39:32 +00:00
adisbladis
05571d3059
Python Add test for NIX_PYTHONPREFIX 2020-03-14 21:39:31 +00:00
adisbladis
d88a7735d2
Python: introduce NIX_PYTHONPREFIX in order to set site.PREFIXES
This is needed in case of `python.buildEnv` to make sure site.PREFIXES
does not only point to the unwrapped executable prefix.

--------------------------------------------------------------------------------

This PR is a story where your valiant hero sets out on a very simple adventure but ends up having to slay dragons, starts questioning his own sanity and finally manages to gain enough knowledge to slay the evil dragon and finally win the proverbial price.

It all started out on sunny spring day with trying to tackle the Nixops plugin infrastructure and make that nice enough to work with.

Our story begins in the shanty town of [NixOps-AWS](https://github.com/nixos/nixops-aws) where [mypy](http://mypy-lang.org/) type checking has not yet been seen.

As our deuteragonist (@grahamc) has made great strides in the capital city of [NixOps](https://github.com/nixos/nixops) our hero wanted to bring this out into the land and let the people rejoice in reliability and a wonderful development experience.

The plugin work itself was straight forward and our hero quickly slayed the first small dragon, at this point things felt good and our hero thought he was going to reach the town of NixOps-AWS very quickly.

But alas! Mypy did not want to go, it said:
`Cannot find implementation or library stub for module named 'nixops'`

Our hero felt a small sliver of life escape from his body. Things were not going to be so easy.

After some frustration our hero discovered there was a [rule of the land of Python](https://www.python.org/dev/peps/pep-0561/) that governed the import of types into the kingdom, more specificaly a very special document (file) called `py.typed`.
Things were looking good.

But no, what the law said did not seem to match reality. How could things be so?

After some frustrating debugging our valiant hero thought to himself "Hmm, I wonder if this is simply a Nix idiosyncrasy", and it turns out indeed it was.
Things that were working in the blessed way of the land of Python (inside a `virtualenv`) were not working the way they were from his home town of Nix (`nix-shell` + `python.withPackages`).

After even more frustrating attempts at reading the mypy documentation and trying to understand how things were supposed to work our hero started questioning his sanity.
This is where things started to get truly interesting.

Our hero started to use a number of powerful weapons, both forged in the land of Python (pdb) & by the mages of UNIX (printf-style-debugging & strace).

After first trying to slay the dragon simply by `strace` and a keen eye our hero did not spot any weak points.
Time to break out a more powerful sword (`pdb`) which also did not divulge any secrets about what was wrong.

Our hero went back to the `strace` output and after a fair bit of thought and analysis a pattern started to emerge. Mypy was looking in the wrong place (i.e. not in in the environment created by `python.withPackages` but in the interpreter store path) and our princess was in another castle!

Our hero went to the pub full of old grumpy men giving out the inner workings of the open source universe (Github) and acquired a copy of Mypy.
He littered the code with print statements & break points.
After a fierce battle full of blood, sweat & tears he ended up in 20f7f2dd71/mypy/sitepkgs.py and realised that everything came down to the Python `site` module and more specifically https://docs.python.org/3.7/library/site.html#site.getsitepackages which in turn relies on https://docs.python.org/3.7/library/site.html#site.PREFIXES .

Our hero created a copy of the environment created by `python.withPackages` and manually modified it to confirm his findings, and it turned out it was indeed the case.
Our hero had damaged the dragon and it was time for a celebration.

He went out and acquired some mead which he ingested while he typed up his story and waited for the dragon to finally die (the commit caused a mass-rebuild, I had to wait for my repro).

In the end all was good in [NixOps-AWS](https://github.com/nixos/nixops-aws)-town and type checks could run. (PR for that incoming tomorrow).
2020-03-14 21:39:31 +00:00
Frederik Rietdijk
13e7a3e112 Python: introduce tests for interpreters
This adds tests to the passthru of all Python interpreters.
2020-03-14 15:05:37 +01:00
Frederik Rietdijk
dbf125d286 Python: introduce tests for interpreters
This adds tests to the passthru of all Python interpreters.
2020-03-14 15:01:30 +01:00
Graham Christensen
39aac70d74 pythonMinimal: don't include site-customise
Experimenting with patching the site-customize file causes mass
rebuilds for no reason.
2020-03-14 15:02:51 +01:00
Frederik Rietdijk
0c13b0d7d3 Merge staging-next into staging 2020-03-14 14:34:59 +01:00
Nathan van Doorn
dd938aa157 metamath: 0.180 -> 0.181 2020-03-14 03:24:44 +00:00
John Ericson
84497cabd1 Merge remote-tracking branch 'upstream/master' into staging 2020-03-13 17:39:11 -04:00
Maximilian Bosch
37b590dc45
wasmer: 0.13.0 -> 0.16.2 2020-03-12 19:06:47 +01:00
Frederik Rietdijk
21f47e641b Merge staging-next into staging 2020-03-12 12:00:40 +01:00
Frederik Rietdijk
31855d74a3 python3: 3.7.6 -> 3.7.7 2020-03-12 12:00:26 +01:00
Lancelot SIX
605640b294 guile: 2.2.6 -> 2.2.7
See https://lists.gnu.org/archive/html/info-gnu/2020-03/msg00004.html
for release information
2020-03-11 23:56:38 +00:00
Elis Hirwing
5bf47ab9bb
php72: 7.2.27 -> 7.2.28
Changelog: https://www.php.net/ChangeLog-7.php#7.2.28
2020-03-11 20:13:56 +01:00
Elis Hirwing
8f4cb37116
php73: 7.3.14 -> 7.3.15
Changelog: https://www.php.net/ChangeLog-7.php#7.3.15
2020-03-11 20:12:34 +01:00
Maximilian Bosch
0bf5619fe0
php: add buildEnv function for additional config on the CLI SAPI
Initially discussed in #55460.

This patch adds a `buildEnv` function to `php` that has the
following features:

* `php.buildEnv { extraConfig = /* ... */; }` to specify custom
  `php.ini` args for the CLI.

* `php.buildEnv { exts = phpPackages: [phpPackages.apcu] }` to
  create a PHP interpreter for the CLI with the `apcu` extension.
2020-03-09 20:41:28 +01:00
Frederik Rietdijk
188c3a4d03 Merge staging-next into staging 2020-03-06 07:09:30 +01:00
Mario Rodas
a9368dfb1a
Merge pull request #81792 from r-ryantm/auto-update/jruby
jruby: 9.2.10.0 -> 9.2.11.0
2020-03-05 07:05:50 -05:00
Mario Rodas
1193f8e7ed
Merge pull request #81790 from r-ryantm/auto-update/joker
joker: 0.14.1 -> 0.14.2
2020-03-05 07:05:04 -05:00
R. RyanTM
d08fb3b922 jruby: 9.2.10.0 -> 9.2.11.0 2020-03-05 02:42:20 +00:00
R. RyanTM
94c7f25f69 joker: 0.14.1 -> 0.14.2 2020-03-05 02:36:00 +00:00
Jan Tojnar
1a44e325d2
Merge branch 'staging-next' into staging 2020-03-04 21:24:05 +01:00
Jan Tojnar
88b22b6890
php74: 7.4.2 → 7.4.3
https://github.com/php/php-src/blob/php-7.4.3/NEWS#L3-L90
2020-03-04 20:22:15 +01:00
Jonathan Ringer
3973a3c79c python: add pythonRemoveTestsDirHook
This will automatically remove a top-level "tests"
directory from being installed.
2020-03-03 20:01:00 +01:00
Jonathan Ringer
fe4580359e python39: 3.9.0.a3 -> 3.9.0.a4 2020-03-03 07:33:39 +01:00
Jonathan Ringer
2a019cc48c python38: 3.8.1 -> 3.8.2 2020-03-03 07:33:39 +01:00
Vladimír Čunát
4d954e528d
Merge #80714: icon-lang: fix build 2020-03-02 16:15:53 +01:00
Mario Rodas
8a863c2973
Merge pull request #81364 from ggreif/wasmtime-0.12
wasmtime: 0.8.0 -> 0.12.0
2020-03-02 08:08:14 -05:00
Gabor Greif
aaf997511b wasmtime: bump to v0.12.0 (from v0.8.0)
- moved to modern cargo fetcher
- removed patch (not needed)
- disabled test (due to bytecodealliance/wasmtime#1197)
2020-03-01 02:34:43 +01:00
Frederik Rietdijk
79217339d2 Merge master into staging-next 2020-02-29 15:29:11 +01:00
Emily
6d3fc35620 pypy{,3}: use openssl_1_1
"We now support building PyPy with OpenSSL 1.1 in our built-in _ssl
module, as well as maintaining support for previous versions."
-- https://pypy.readthedocs.io/en/latest/release-pypy2.7-v5.6.0.html
2020-02-28 16:06:20 +00:00
Jan Tojnar
bb701376cf
Merge branch 'master' into staging-next 2020-02-28 11:30:44 +01:00
Stig Palmquist
ccb142916c rakudo: 2020.01.1 -> 2020.02
dependencies:
moarvm: 2020.01.1 -> 2020.02
nqp: 2020.01 -> 2020.01

recommended:
zef: 0.8.2 -> 0.8.3
2020-02-27 22:00:27 -06:00
worldofpeace
14474ff8b5
Merge pull request #78475 from GRBurst/dart
dart: 2.0.0 -> 2.7.1 (stable) + 2.0.0 -> 2.8.0-dev.10.0 (dev)
2020-02-27 13:43:28 +00:00
GRBurst
1204e44cad
dart: 2.0.0 -> 2.7.1 (stable) + 2.0.0 -> 2.8.0-dev.10.0 (dev)
- dart stable: make it default
- add aarch64 (arm64) packages
- set myself as maintainer
2020-02-27 14:23:27 +01:00
Matthieu Coudron
7f821b3efc
Merge pull request #81067 from teto/lua_fix
- introduce a default checkPhase for lua (disabled by default)
- dont apply patchShebangs on the whole lua package; hopefulyl it doesnt break stuff
2020-02-27 11:01:30 +01:00
Frederik Rietdijk
ef156f7a8b Merge staging-next into staging 2020-02-27 10:15:34 +01:00
Daiderd Jordan
cc05b65a99
Merge pull request #81114 from cw789/elixir_update
elixir_1_10: 1.10.1 -> 1.10.2
2020-02-27 08:34:05 +01:00
Michael Raskin
b41a7eeb18
Merge pull request #79864 from doronbehar/improve-octave
octave: Use qt5 and other improvements
2020-02-27 06:32:54 +00:00
cw
da473475d5 elixir_1_10: 1.10.1 -> 1.10.2 2020-02-26 13:12:21 +01:00
Doron Behar
3fa64cd5de octave: make optional features declarative in default.nix
Instead of in all-packages.nix .
2020-02-26 10:09:09 +02:00
Matthieu Coudron
006aeb5704 buidLuarocksPackage: add a checkPhase 2020-02-26 01:14:30 +01:00
Matthieu Coudron
6eeb434b33 buildLuarocksPackage: extraVariables is now an attrset 2020-02-26 01:14:29 +01:00
Jörg Thalheim
21baef32d5
Merge pull request #75451 from Izorkin/php-build
Update php build configuration
2020-02-25 18:50:38 +00:00
Matthieu Coudron
7aee5b838b build-lua-package: dont patchShebangs folder
It can be source of trouble for some read-only folders (libluv for
instance) and slow down install.
2020-02-25 17:34:29 +01:00
Profpatsch
8246c35875
Merge pull request #79900 from Gabriel439/gabriel/dhall_packages_2
Add Nixpkgs support for Dhall
2020-02-25 14:16:28 +01:00
R. RyanTM
b5788ccdf3 jruby: 9.2.9.0 -> 9.2.10.0 2020-02-23 13:56:45 -08:00
R. RyanTM
6082646aff jython: 2.7.2b2 -> 2.7.2b3 2020-02-23 13:41:27 -08:00
Konrad Borowski
0302cbf42b icon-lang: fix build 2020-02-23 17:22:13 +01:00
Doron Behar
62d7ad9309 octave: Use sundials_2 in package's signature instead of callPackage 2020-02-22 12:35:06 +02:00
Doron Behar
b631f620d4 octave: Revert "remove old fix for build issue"
This reverts commit 3beeacfd58239bb6e95aa716dedddae17716b6eb.
2020-02-22 12:33:58 +02:00
Doron Behar
d4861e2b18 octave: clean up all build inputs - use qt5 2020-02-22 12:33:58 +02:00
Doron Behar
2b18e72064 octave: mark package as broken if JIT is enabled 2020-02-22 12:33:58 +02:00
Doron Behar
b3a20c4feb octave: remove old fix for build issue 2020-02-22 12:33:58 +02:00
Doron Behar
acf2ad3876 octave: clean up configure flags - remove --enable-dl 2020-02-22 12:33:58 +02:00
Doron Behar
40c2fb8b1e octave: Makeinfo is no longer needed at runtime 2020-02-22 12:33:58 +02:00
Doron Behar
b74fe1a248 octave: order arguments at top and import qt5 libs 2020-02-22 12:33:58 +02:00
Izorkin
ffe90532f7 php: update build configuration 2020-02-22 11:22:05 +03:00
Izorkin
0ee5d55d3b php: use external GD library 2020-02-22 11:22:05 +03:00
Izorkin
ac3c11a980 php: add option pearSupport 2020-02-22 11:22:05 +03:00
Izorkin
a74fb5a1af php: add option ipv6Support 2020-02-22 11:22:05 +03:00
Izorkin
5dae87ec2d php: remove unused configureFlags 2020-02-22 11:22:05 +03:00
Izorkin
82b5cef58d php: drop support libmysqlclient 2020-02-22 11:22:04 +03:00
Nikola Knezevic
6d8539c1d8 perl: Enable threading on darwin
Perl on darwin (and any other sane platform) has a pretty good threading
support, enable it.

As it turns out, we were building non-multithreaded perl on all systems,
since glibc was not part of the stdenv anymore:

    nix-repl> pkgs = import <nixpkgs> {}

    nix-repl> pkgs.stdenv ? glibc
    false

meaning that the comments were incorrect. Thus, clear up the confusion
and remove the misleading comments, while enabling multithreading by
default. The builds will fail on unsupported platforms, and in this case
the only place is the bootstrap, where we already force
non-multithreaded perl.

As a consequence of the above, this change will cause the full rebuild
of stdenv on all platforms, including linux.
2020-02-20 08:35:45 +01:00
Jonathan Ringer
cd97c055a0 python: execute pythonImportsCheckPhase in subshell
Execute in subshell so that the cwd returns back
to the original directory. This is important as
it enables pythonImportsCheck to work with checkPhase
2020-02-19 22:30:50 -08:00
hlolli
ad56672196
cleanup 2020-02-19 23:40:14 +01:00
hlolli
ef712ff2f5
lumo 1.9.0 -> 1.10.1 plus darwin support 2020-02-19 23:16:40 +01:00
Franz Pletz
ade3e99a1d
php74: 7.4.1 -> 7.4.2
https://www.php.net/ChangeLog-7.php#7.4.2
2020-02-19 16:42:40 +01:00
Franz Pletz
b55ded5d8b
php73: 7.3.13 -> 7.3.14
https://www.php.net/ChangeLog-7.php#7.3.14
2020-02-19 16:42:39 +01:00
Franz Pletz
ed8df1d98e
php72: 7.2.26 -> 7.2.27
https://www.php.net/ChangeLog-7.php#7.2.27
2020-02-19 16:42:23 +01:00
Mario Rodas
d539707242
Merge pull request #80115 from marsam/update-racket
racket: 7.5 -> 7.6
2020-02-16 14:26:33 -05:00
Léo Gaspard
9ad73df74b
Merge pull request #80237 from bhipple/remove/wasm-gc
wasm-gc: remove package
2020-02-16 16:20:39 +01:00
Benjamin Hipple
e90602b8f2 wasmer: upgrade cargo fetcher and cargoSha256
Infra upgrade as part of #79975; no functional change expected.
2020-02-15 22:13:19 -08:00
Benjamin Hipple
ecdff9225b evcxr: upgrade cargo fetcher and cargoSha256
Infra upgrade as part of #79975; no functional change expected.
2020-02-15 22:09:05 -08:00
Benjamin Hipple
31971254d7 wasm-gc: remove package
The upstream repository has been archived, with a note that this should never be needed:
https://github.com/alexcrichton/wasm-gc

It also happens to have custom patch logic that will fail the newer cargo
verification in #79975
2020-02-15 23:09:32 -05:00
Alexei Robyn
e34db5a568 luajit: Expose build options, enable JIT debug module 2020-02-15 18:40:02 +01:00
Mario Rodas
dd95c8149a
racket: 7.5 -> 7.6
Changelog: https://download.racket-lang.org/v7.6.html
2020-02-14 04:20:00 -05:00
Benjamin Hipple
eb11feaa0b treewide: change fetchCargoTarball default to opt-out
Changes the default fetcher in the Rust Platform to be the newer
`fetchCargoTarball`, and changes every application using the current default to
instead opt out.

This commit does not change any hashes or cause any rebuilds. Once integrated,
we will start deleting the opt-outs and recomputing hashes.

See #79975 for details.
2020-02-13 22:41:37 -08:00
Nathan van Doorn
35853d8a1e metamath: 0.178 -> 0.180 2020-02-12 10:36:05 -08:00
R. RyanTM
146e91470b groovy: 2.5.9 -> 3.0.0 2020-02-12 12:34:24 +00:00
Hlöðver Sigurðsson
91801c0b45
clojure 1.10.1.492 -> 1.10.1.507 plus bugfix (#79868) 2020-02-12 11:50:50 +00:00
Gabriel Gonzalez
38f1d70c01 Add Nixpkgs support for Dhall
One of the motivations for this change is the following Discourse
discussion:

https://discourse.dhall-lang.org/t/offline-use-of-prelude/137

Many users have requested Dhall support for "offline" packages
that can be fetched/built/installed using ordinary package
management tools (like Nix) instead of using Dhall's HTTP import system.
I will continue to use the term "offline" to mean Dhall package
builds that do not use Dhall's language support for HTTP imports (and
instead use the package manager's support for HTTP requests, such
as `pkgs.fetchFromGitHub`)

The goal of this change is to document what is the idiomatic way to
implement "offline" Dhall builds by implementing Nixpkgs support
for such builds.  That way when other package management tools ask
me how to package Dhall with their tools I can refer them to how it
is done in Nixpkgs.

This change contains a fully "offline" build for the largest Dhall
package in existence, known as "dhall-packages" (not to be confused
with `dhallPackages`, which is our Nix attribute set containing
Dhall packages).

The trick to implementing offline builds in Dhall is to take
advantage of Dhall's support for semantic integrity checks.  If an
HTTP import is protected by an integrity check and a cached build
product matches the integrity check then the HTTP import is never
resolved and the expression is instead fetched from cache.

By "installing" dependencies in a pre-seeded and isolated cache
we can replace remote HTTP imports with dependencies that have
been built and supplied by Nix instead.

The offline nature of the builds are enforced by compiling the
Haskell interpreter with the `-f-with-http` flag, which disables
the interpreter's support for HTTP imports.  If a user forgets
to supply a necessary dependency as a Nix build product then the
build fails informing them that HTTP imports are disabled.

By default, built packages are "binary distributions", containing
just a cache product and a Dhall expression which can be used to
resolve the corresponding cache product.

Users can also optionally enable a "source distribution" of a package
which already includes the equivalent fully-evaluated Dhall code (for
convenience), but this is disabled by default to keep `/nix/store`
utilization as compact as possible.
2020-02-11 22:02:53 -08:00
Frederik Rietdijk
1a6c3cb06b Merge staging into staging-next 2020-02-11 07:59:53 +01:00
Stig Palmquist
e66cbc5f65 rakudo: 2017.01 -> 2020.01
dependencies:
- moarvm: init at 2020.01.1
- nqp: init at 2020.01
- zef: init 0.8.2

Replaced the rakudo-star distribution with packages for raku, moarvm, nqp and
zef.
2020-02-10 20:34:04 +01:00
Eric Bailey
d723b91223 lfe: 1.2.1 -> 1.3
Add patches to the builder expression, and add those necessary for 1.3.
2020-02-10 20:03:47 +01:00
Eric Bailey
49fe429990 lfe: add message to OTP version assertion 2020-02-10 20:03:47 +01:00
worldofpeace
a41b9c64af
Merge pull request #79717 from filalex77/elixir-1.10.1
elixir_1_10: 1.10.0 -> 1.10.1
2020-02-10 13:30:29 -05:00
zimbatm
bcdc90a3a7 ruby_2_4: remove
According to https://endoflife.software/programming-languages/server-side-scripting/ruby
ruby 2.4 will go end-of-life in march, where the new release of nixpkgs
will be cut. We won't be able to support it for security updates.

Remove all references to ruby_2_4 and add ruby_2_7 instead where
missing.

Mark packages that depend on ruby 2.4 as broken:
* chefdk
* sonic-pi
2020-02-10 13:23:35 -05:00
Oleksii Filonenko
60631eab82 elixir: add filalex77 to maintainers 2020-02-10 16:07:07 +02:00
Oleksii Filonenko
611019c619 elixir_1_10: 1.10.0 -> 1.10.1 2020-02-10 16:05:03 +02:00
Lancelot SIX
d969e70230 octaveHg: drop
This package is broken and unmaintained (no updates since 2017) and lags
behind octave.
2020-02-09 19:24:18 +01:00
Frederik Rietdijk
3846896084 Merge pull request #79293 from NixOS/staging-next
Staging next (with glibc 2.30)
2020-02-09 16:40:16 +01:00
Frederik Rietdijk
03755ed59a Merge master into staging-next 2020-02-09 09:17:51 +01:00
Lancelot SIX
bf059959fa
octave: 5.1.0 -> 5.2.0
See https://lists.gnu.org/archive/html/info-gnu/2020-02/msg00007.html
for release information.
2020-02-08 23:04:07 +01:00
R. RyanTM
3ba4b3f4e0
joker: 0.14.0 -> 0.14.1 2020-02-08 10:07:45 +00:00
Frederik Rietdijk
30f0909e3a Merge master into staging-next 2020-02-07 19:27:52 +01:00
R. RyanTM
50194367cf janet: 1.6.0 -> 1.7.0 2020-02-07 10:54:34 +00:00
Frederik Rietdijk
38cf6eac19 Merge master into staging-next 2020-02-06 19:43:36 +01:00
Frederik Rietdijk
9827e4994b python39: 3.9.0a2 -> 3.9.0a3 2020-02-06 10:25:18 +01:00
Vladimír Čunát
48a997cd76
Merge #66528: glibc: 2.27 -> 2.30 (into staging)
Includes update of stdenv bootstap tools (for three main platforms)
and many package fixes with new glibc.
2020-02-05 13:41:09 +01:00
Maximilian Bosch
ea8ae88f04
Merge branch 'staging' into glibc230 2020-02-01 17:42:03 +01:00
Mario Rodas
8aa3473514
Merge pull request #78842 from r-ryantm/auto-update/supercollider
supercollider: 3.10.3 -> 3.10.4
2020-02-01 04:09:11 -05:00
Vladimír Čunát
31ab6fdec5
Merge #78978: lua5: Fix src URLs
The rebuilds happen because changing the end-part of URL
changes the name of the resulting file as placed into nix store
(those names were wrong/confusing before this change)
2020-02-01 09:52:56 +01:00
Chuck
d13360bfb7 lua5: Fix src URLs
The 672c3c1d2a refactor accidentally
dropped the last version component from the source URLs.  This change
puts its back.

$ for lua in lua5_{1,2,3};do nix-instantiate --json --eval . -A $lua.src.urls | jq -r '.[]' | xargs nix-prefetch-url; done

Before this change:

lua-5.1.tar.gz 1hbjhh211p82vhwqhx4mmhmvhv56060acnka80gbmfdk3q3bjnvz (wrong hash because this is lua 5.1.0.  We want 5.1.5 )
lua-5.2.tar.gz HTTP error 404
lua-5.3.tar.gz HTTP error 404

After this change:

lua-5.1.5.tar.gz 0cskd4w0g6rdm2q8q3i4n1h3j8kylhs3rq8mxwl9vwlmlxbgqh16
lua-5.2.4.tar.gz 0jwznq0l8qg9wh5grwg07b5cy3lzngvl5m2nl1ikp6vqssmf9qmr <-- Desired hash
lua-5.3.5.tar.gz 1b2qn2rv96nmbm6zab4l877bd4zq7wpwm8drwjiy2ih4jqzysbhc

Converted to base16 with `nix-hash --type sha256 --to-base16`:

lua-5.1.5.tar.gz 2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333 <-- Desired hash
lua-5.2.4.tar.gz b9e2e4aad6789b3b63a056d442f7b39f0ecfca3ae0f1fc0ae4e9614401b69f4b
lua-5.3.5.tar.gz 0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac <-- Desired hash
2020-01-31 18:00:45 -08:00
Peter Simons
05620d62dc maude: update from version 2.7.1 to 3.0 (including full-maude) 2020-01-31 16:25:40 +01:00
Luka Blaskovic
ae2a5a91dd pure: mark as broken 2020-01-30 18:35:30 -05:00
R. RyanTM
cef09ab0bb supercollider: 3.10.3 -> 3.10.4 2020-01-30 11:03:45 +00:00
Graham Christensen
6fea9e5902
guile: disable parallel building for reproducibility 2020-01-29 11:59:03 -05:00
worldofpeace
e22b99bb90
Merge pull request #78599 from cw789/elixir_update
elixir_1_10: init at 1.10.0
2020-01-28 18:45:01 -05:00
Maximilian Bosch
6b0cd9ad47
Merge branch 'staging' into glibc230
Conflicts:
	pkgs/applications/misc/vit/default.nix
2020-01-28 14:54:51 +01:00
Frederik Rietdijk
dce0ca29d9 Merge master into staging-next 2020-01-28 10:46:13 +01:00
Silvan Mosberger
80a2740991
Merge pull request #78265 from Synthetica9/https-homepages
treewide: fix redirected urls
2020-01-27 15:00:53 +01:00
cw
e3863ab269 elixir_1_10: init at 1.10.0
Set elixir_1_10 as default elixir version.
Removed elixir_1_5 as support has faded out now.
2020-01-27 11:58:02 +01:00
Marek Mahut
ecade10760
Merge pull request #78186 from r-ryantm/auto-update/jython
jython: 2.7.1 -> 2.7.2b2
2020-01-26 13:22:51 +01:00
Mario Rodas
0100a600ff
Merge pull request #78174 from r-ryantm/auto-update/groovy
groovy: 2.5.8 -> 2.5.9
2020-01-24 18:33:02 -05:00
Maximilian Bosch
a605fcabae
evcxr: 0.4.6 -> 0.5.0
https://crates.io/crates/evcxr/0.5.0
2020-01-23 13:16:58 +01:00
Maximilian Bosch
eddfcc32b4
Merge branch 'staging' into glibc230 2020-01-23 11:31:13 +01:00
Mario Rodas
8a726f8516
Merge pull request #77991 from marsam/fix-pypy-darwin
pypy: fix build on darwin
2020-01-22 19:46:49 -05:00
Patrick Hilhorst
593e11fd94
treewide: fix redirected urls
According to https://repology.org/repository/nix_unstable/problems, we have a
lot of packages that have http links that redirect to https as their homepage.
This commit updates all these packages to use the https links as their
homepage.

The following script was used to make these updates:

```

curl https://repology.org/api/v1/repository/nix_unstable/problems \
    | jq '.[] | .problem' -r \
    | rg 'Homepage link "(.+)" is a permanent redirect to "(.+)" and should be updated' --replace 's@$1@$2@' \
    | sort | uniq > script.sed

find -name '*.nix' | xargs -P4 -- sed -f script.sed -i
```
2020-01-22 11:26:22 +01:00
R. RyanTM
8f8c833bc1 jython: 2.7.1 -> 2.7.2b2 2020-01-21 17:04:55 +00:00
R. RyanTM
48ba125302 groovy: 2.5.8 -> 2.5.9 2020-01-21 15:34:14 +00:00
volth
5540b2e7b4
perl.withPackages: respect $PERL5LIB
perl.withPackages did not allow to add more packages using $PERL5LIB
2020-01-20 18:11:00 +00:00
Ivan Kozik
76ab11518d treewide: Remove myself from maintainers on some packages (#78027) 2020-01-19 12:18:34 -05:00
Frederik Rietdijk
bcd8c6b8dc Merge master into staging-next 2020-01-17 17:08:16 +01:00
Oleksii Filonenko
cd99b82d8a wasmer: init at 0.13.0 2020-01-16 12:29:04 -08:00
Anders Kaseorg
3cd8ce3bce treewide: Fix unsafe concatenation of $LD_LIBRARY_PATH
Naive concatenation of $LD_LIBRARY_PATH can result in an empty
colon-delimited segment; this tells glibc to load libraries from the
current directory, which is definitely wrong, and may be a security
vulnerability if the current directory is untrusted.  (See #67234, for
example.)  Fix this throughout the tree.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2020-01-15 09:47:03 +01:00
Frederik Rietdijk
bc18cc72dd
Merge pull request #77610 from LnL7/darwin-stdenv-python3
darwin-stdenv: bootstrap with python3
2020-01-15 09:24:57 +01:00
Frederik Rietdijk
eba1f79418 pythonPackages.venvShellHook: init
This is a hook that loads a virtualenv from the specified `venvDir`
location. If the virtualenv does not exist, it is created.
2020-01-14 22:36:21 +01:00
Luka Blaskovic
76d90cf1f5 cpython: fetch darwin-libutil.patch to nixpkgs
python3 is now required buildInput for glibc>=2.29.
Remove fetchpatch to solve infinite recursion in
glibc bootstrap process.
2020-01-14 08:26:58 +00:00
Daiderd Jordan
6328518e98
stdenv: bootstrap darwin with python3
- Replaced python override from the final stdenv, instead we
  propagate our bootstrap python to stage4 and override both
  CF and xnu to use it.

- Removed CF argument from python interpreters, this is redundant
  since it's not overidden anymore.

- Inherit CF from stage4, making it the same as the stdenv.
2020-01-13 11:34:36 +01:00
Jörg Thalheim
7aa6616d00
perl: fix configure phase for Aarch32 (#76922)
In "perl: fuse configureFlags" [1] the effects of the preConfigure
phase were merged into configureFlags. After this change values with
spaces do not reach the configure script intact.

The only flag this affects is `ldflags` for Aarch32 and Mips, and perl
builds without it on armv7l-linux so it's probably no longer required
on any platform.

Fixes:

    configuring
    configure flags: -de -Dcc=cc <...> -Dldflags=\"-lm -lrt\"
    ./Configure: eval: line 1677: unexpected EOF while looking for matching `"'
    ./Configure: eval: line 1678: syntax error: unexpected end of file
    Configure: unknown option -lrt"

[1] 3b50d0462a
2020-01-13 10:06:45 +00:00
R. RyanTM
174190dae1
joker: 0.12.9 -> 0.14.0 2020-01-10 19:39:34 -05:00
Alyssa Ross
163618988f
ruby: remove references to CC by default
This makes RbConfig["CC"] return an invalid path, but I hope nothing
is depending on that anyway...
2020-01-09 15:54:59 +00:00
adisbladis
2d6f1ff4dd
python: Add support for installing Python eggs 2020-01-08 13:59:04 +00:00
Michael Raskin
a280d83949
Merge pull request #77181 from r-ryantm/auto-update/picoLisp
picolisp: 19.6 -> 19.12
2020-01-08 10:01:23 +00:00
Joachim Breitner
246ba7bb0d wasmtime: 20191111 -> v0.8.0 2020-01-07 17:36:29 +01:00
R. RyanTM
1edb9dc658 picolisp: 19.6 -> 19.12 2020-01-06 22:25:42 -08:00
R. RyanTM
7e9851475a janet: 1.5.1 -> 1.6.0 2020-01-06 09:50:36 -08:00
Andrew Childs
68317c736e perl: fix configure phase for Aarch32
In "perl: fuse configureFlags" [1] the effects of the preConfigure
phase were merged into configureFlags. After this change values with
spaces do not reach the configure script intact.

The only flag this affects is `ldflags` for Aarch32 and Mips, and perl
builds without it on armv7l-linux so it's probably no longer required
on any platform.

Fixes:

    configuring
    configure flags: -de -Dcc=cc <...> -Dldflags=\"-lm -lrt\"
    ./Configure: eval: line 1677: unexpected EOF while looking for matching `"'
    ./Configure: eval: line 1678: syntax error: unexpected end of file
    Configure: unknown option -lrt"

[1] 3b50d0462a
2020-01-04 09:51:10 +09:00
Stig Palmquist
76bd004a4b micropython: init at 1.12 2020-01-03 10:57:55 +01:00
Frederik Rietdijk
f08e3e38d4 Merge master into staging-next 2020-01-02 21:41:13 +01:00
Austin Seipp
091ddf2650
quickjs: 2019-10-27 -> 2019-12-21
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2020-01-01 19:31:18 -06:00
Maximilian Bosch
5065378316
evcxr: 0.4.5 -> 0.4.6
https://github.com/google/evcxr/releases/tag/v0.4.6
2020-01-01 21:13:45 +01:00
Frederik Rietdijk
555037a667 Merge master into staging-next 2019-12-31 16:35:53 +01:00
John Ericson
cfd013813e
Merge pull request #74090 from obsidiansystems/ghcjs-cross-without-cc
stdenv, haskell: bonafied GHCJS cross compilation without stdenv.cc
2019-12-30 16:40:43 -08:00
Robin Gloster
760e23136a
treewide: *inputs are lists 2019-12-31 01:09:25 +01:00
Robin Gloster
9126911ba5
ruby: installFlags is a list 2019-12-31 00:50:40 +01:00
Robin Gloster
755db0b689
treewide: installTargets is a list 2019-12-31 00:25:26 +01:00
Robin Gloster
313da176d3
treewide: NIX_*_FLAGS -> string 2019-12-31 00:16:46 +01:00
Robin Gloster
f9f46dc327
treewide: NIX_*_FLAGS -> string 2019-12-31 00:15:46 +01:00
Robin Gloster
981ae25113
treewide: NIX_*_COMPILE -> string 2019-12-31 00:07:21 +01:00
Jan Tojnar
f4e74edd8c python.pkgs.wrapPython: get rid of warning
When `makeWrapperArgs` variable is not set, `declare -p makeWrapperArgs`
will return with 1 and print an error message to stderr.

I did not handle the non-existence case in b0633406cb
because I thought `mk-python-derivation` will always define `makeWrapperArgs`
but `wrapProgram` can be called independently. And even with `mk-python-derivation`,
`makeWrappers` will not be set unless explicitly declared in the derivation
because of https://github.com/NixOS/nix/issues/1461.

I was lead to believe that because the builds were succeeding and I confirmed
that the mechanism fails when the variable is not defined and `-o nounset` is enabled.
It appears that `wrapPython` setup hook is not running under `-o nounset`, though,
invaldating the assumption.

Now we are checking that the variable exists before checking its type, which
will get rid of the warning and also prevent future error when `-o nounset`
is enabled in the setup hook.

For more information, see the discussion at
https://github.com/NixOS/nixpkgs/commit/a6bb2ede232940a96150da7207a3ecd15eb6328
2019-12-30 16:46:55 +01:00
Alyssa Ross
a08e5665fa rubygems: fix for Ruby with no openssl
This fixes the rubyMinimal package.
2019-12-30 16:11:23 +01:00
Robin Gloster
65395a7105
treewide: installTargets is a list 2019-12-30 13:29:27 +01:00
Merijn Broeren
133103d709
treewide: replace make/build/configure/patchFlags with nix lists 2019-12-30 12:58:11 +01:00
Robin Gloster
3b50d0462a
perl: fuse configureFlags 2019-12-30 11:13:36 +01:00
Jan Tojnar
a69e309794
Merge branch 'staging-next' into staging 2019-12-30 05:24:03 +01:00
Jan Tojnar
480fc1856a
Merge branch 'master' into staging-next 2019-12-30 05:22:23 +01:00
Robin Gloster
ac8eaa8507
treewide: fix *Flags 2019-12-30 04:50:37 +01:00
Frederik Rietdijk
5aed91512d Merge staging-next into staging 2019-12-29 10:20:05 +01:00
Frederik Rietdijk
fb66525297 Merge master into staging-next 2019-12-29 10:19:39 +01:00
Jan Tojnar
a6bb2ede23
python.pkgs.wrapPython: fix string makeWrapperArgs
Bash takes an assignment of a string to an array variable:

local -a user_args
user_args="(foo bar)"

to mean appending the string to the array, not parsing the string into
an array as is the case when on the same line as the declaration:

local -a user_args="(foo bar)"

b0633406cb extracted the declaration before
the newly branched code block, causing string makeWrapperArgs being added
to the array verbatim.

Since local is function scoped, it does not matter if we move it inside
each of the branches so we fix it this way.
2019-12-28 22:23:36 +01:00
worldofpeace
4a2621da53
Merge pull request #76283 from jtojnar/python-mwa
python.pkgs.wrapPython: fix makeWrapperArgs
2019-12-26 19:21:37 -05:00
Mario Rodas
76200c4284 ruby_2_7: init at 2.7.0
Release notes: https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/
2019-12-25 14:24:03 +00:00
Mario Rodas
298010982b ruby: rubygems 3.0.6 -> 3.1.2
Changelog: https://blog.rubygems.org/2019/12/20/3.1.2-released.html
2019-12-25 14:24:03 +00:00
Profpatsch
7d4c1ae7f1 rubyMinimal: ruby with all options disabled by default
Similar to `gitMinimal` or `pythonMinimal`, this is useful for scripts
which don’t use anything but the standard library and want a small
footprint.
2019-12-25 13:59:42 +01:00
Profpatsch
80c07f8aaf ruby: add removeReferenceToCC package option
Reduces the runtime closure by ~200MB if enabled.
2019-12-25 13:59:42 +01:00
Jan Tojnar
4bbc6cc66f
Merge branch 'staging-next' into staging 2019-12-25 05:18:52 +01:00
Jan Tojnar
ca39dd3a8a
Merge branch 'master' into staging-next 2019-12-25 05:15:06 +01:00
Jan Tojnar
b0633406cb
python.pkgs.wrapPython: fix makeWrapperArgs
When `makeWrapperArgs` is a Bash array, we only passed the first
item to `wrapProgram`. We need to use `"${makeWrapperArgs[@]}"`
to extract all the items. But that breaks the common string case so
we need to handle that case separately.
2019-12-23 18:02:44 +01:00
worldofpeace
9ce10d7d22 erlang: build on aarch64-linux
I've built several versions without issue.
2019-12-22 21:27:52 -05:00
Markus Kowalewski
7d44826298
php: 7.2.25 -> 7.2.26 2019-12-21 16:49:28 +01:00
Markus Kowalewski
9e4716b1f5
php: 7.4.0 -> 7.4.1 2019-12-21 14:05:13 +01:00
Markus Kowalewski
10060abfc0
php: 7.3.12 -> 7.3.13 2019-12-21 14:04:58 +01:00
Mario Rodas
039a5bd71b
Merge pull request #75947 from eraserhd/staging-tcl-symlink-fix
tcl: fix dangling symlink
2019-12-20 18:39:03 -05:00
Frederik Rietdijk
ad733b5505 python37: 3.7.5 -> 3.7.6 2019-12-19 17:37:02 +01:00
Frederik Rietdijk
c0c65fe83c python39: 3.9.0a1 -> 3.9.0a2 2019-12-19 17:36:21 +01:00
Frederik Rietdijk
2012dd5734 python38: 3.8.0 -> 3.8.1 2019-12-19 17:36:21 +01:00
Frederik Rietdijk
5796029c5d python36: 3.6.9 -> 3.6.10 2019-12-19 17:36:20 +01:00
Jason Felice
41a48b5895 tcl: fix dangling symlink 2019-12-19 09:46:36 -05:00
Frederik Rietdijk
39037a3431 Merge staging-next into staging 2019-12-19 09:21:24 +01:00
Mario Rodas
56a206efe9
gauche: 0.9.8 -> 0.9.9
Release notes: https://practical-scheme.net/gauche/gmemo/?Release%200.9.9
2019-12-16 20:20:20 -05:00
Andreas Rammhold
8185415b55
Merge pull request #75763 from gilligan/manylinux-interp
python: remove _manylinux.py
2019-12-17 00:01:58 +01:00
Andreas Rammhold
e9f522eee1
python: remove _manylinux.py
This will turn manylinux support back on by default.

PIP will now do runtime checks against the compatible glibc version to
determine if the current interpreter is compatible with a given
manylinux specification. However it will not check if any of the
required libraries are present.

The motivation here is that we want to support building python packages
with wheels that require manylinux support. There is no real change for
users of source builds as they are still buildings packages from source.

The real noticeable(?) change is that impure usages (e.g. running `pip
install package`) will install manylinux packages that previously
refused to install.
Previously we did claim that we were not compatible with manylinux and
thus they wouldn't be installed at all.

Now impure users will have basically the same situation as before: If
you require some wheel only package it didn't work before and will not
properly work now. Now the program will fail during runtime vs during
installation time.

I think it is a reasonable trade-off since it allows us to install
manylinux packages with nix expressions and enables tools like
poetry2nix.

This should be a net win for users as it allows wheels, that we
previously couldn't really support, to be used.
2019-12-16 16:37:16 +01:00
Jonathan Ringer
4b1c34cac6 gtk-server: 2.3.1 -> 2.4.5
Also bumped gtk version from gtk2 to gtk3
2019-12-15 13:31:53 -08:00
Jan Tojnar
429561978b
Merge branch 'master' into staging-next 2019-12-14 23:09:06 +01:00
Michael Raskin
dd3ddb3e6d
Merge pull request #70772 from tmplt/octave-gl2ps
octave: build with gl2ps
2019-12-13 21:24:23 +00:00
Frederik Rietdijk
dfdf1597a7 Merge master into staging-next 2019-12-13 11:43:39 +01:00
Tobias Pflug
418ad571c3 Fix manylinux packages
Make sure lib outputs are used where applicable.
2019-12-13 11:40:44 +01:00
José Luis Lafuente
44fe29a624 clojure: 1.10.1.489 -> 1.10.1.492
Install again default deps.edn. deps.edn was embedded in clojure jar,
but that change was reverted, see
a34969513f

Update derivation to produce only one output. Multiple outputs was
introduced by #35140, but I don't think is necessary anymore.
2019-12-11 13:33:35 +01:00
Frederik Rietdijk
f3618342ec Merge staging-next into staging 2019-12-10 19:01:27 +01:00
Elis Hirwing
9d71e7f1fb
php74: Enable zip support
This fixes #75427
2019-12-10 17:49:19 +01:00
R. RyanTM
ce8de3bc05 duktape: 2.4.0 -> 2.5.0 2019-12-08 21:47:09 +01:00
Michael Raskin
06346a12a0
Merge branch 'master' into octave-gl2ps 2019-12-08 18:09:08 +00:00
Izorkin
1b903aa70e php73: 7.3.11 -> 7.3.12 2019-12-07 12:28:19 +03:00
Izorkin
c56f044aa4 php72: 7.2.24 -> 7.2.25 2019-12-07 12:28:19 +03:00
Mario Rodas
f00e169aed
Merge pull request #74968 from marsam/update-racket
racket: 7.4 -> 7.5
2019-12-05 05:46:25 -05:00
Frederik Rietdijk
6530535b20
manylinux packages for Python
This adds three lists with manylinux dependencies as well as three
packages that include all the manylinux dependencies.
2019-12-05 09:56:20 +00:00
Frederik Rietdijk
353ec3f3a8
Merge pull request #73491 from Izorkin/unit
unit: 1.12.0 -> 1.13.0
2019-12-05 10:25:54 +01:00
Frederik Rietdijk
51ef7c3e49 Merge master into staging-next 2019-12-05 09:14:08 +01:00
Aaron Andersen
4b995ddfe7
Merge pull request #73883 from etu/init-php74
php74: init at 7.4.0
2019-12-04 18:18:32 -05:00
Mario Rodas
afcf6d212b
racket: 7.4 -> 7.5
Release Announcement: https://download.racket-lang.org/v7.5.html
2019-12-04 04:20:00 -05:00
Mario Rodas
49c63e498c
treewide: remove empty inherits
These empty inherits were accidentally introduced by https://github.com/NixOS/nixpkgs/pull/66585
2019-12-04 04:20:00 -05:00
Jan Tojnar
30fae2883e
Merge branch 'master' into staging-next 2019-12-03 16:51:48 +01:00
Frederik Rietdijk
92d2153e6c pythonInterpreters: remove unnecessary rec 2019-12-02 20:10:51 +01:00
Elis Hirwing
a4cf20c68f
php74: Go through configuration options 2019-12-01 09:50:51 +01:00
Jan Tojnar
a4bbc84e16
Merge branch 'staging-next' into staging 2019-12-01 01:44:03 +01:00
R. RyanTM
eac9b43a82 jimtcl: 0.78 -> 0.79
* jimtcl: 0.78 -> 0.79 (#74408)

* jimtcl: enable new json extension and run tests
+ build shared to reduce closure size
2019-12-01 00:13:37 +01:00
Frederik Rietdijk
9f84415541 Merge staging-next into staging 2019-11-30 08:58:01 +01:00
Frederik Rietdijk
d14baf7747 Merge master into staging-next 2019-11-30 08:57:28 +01:00
Ryan Mulligan
b3b7a482bc
Merge pull request #74413 from r-ryantm/auto-update/janet
janet: 1.4.0 -> 1.5.1
2019-11-28 06:20:17 -08:00
Jonathan Ringer
0c1c18ca44
Merge branch 'master' into staging-next 2019-11-27 22:57:50 -08:00
R. RyanTM
5df841fce3 janet: 1.4.0 -> 1.5.1 2019-11-27 18:51:25 -08:00
Elis Hirwing
80b12a60df
php74: 7.4.0RC6 -> 7.4.0
Changelog: https://www.php.net/ChangeLog-7.php#7.4.0
2019-11-27 11:13:14 +01:00
John Ericson
f191360ad0 Merge remote-tracking branch 'upstream/staging-next' into staging 2019-11-25 15:59:05 -05:00
Frederik Rietdijk
06a054e6eb Merge master into staging-next 2019-11-25 21:51:57 +01:00
Joachim Breitner
9ca11c90f3 The github repo has moved 2019-11-25 12:04:40 +01:00
Joachim Breitner
3ce8c48ad7 wasmtime: 20191018 -> 20191111
With this bump, we pull in support for building on darwin, i.e.
https://github.com/bytecodealliance/wasmtime/issues/516
2019-11-25 10:53:56 +01:00
Herwig Hochleitner
727740b56e clojure: 1.10.1.469 -> 1.10.1.489 2019-11-25 04:32:45 +01:00
John Ericson
6bc456c91c Merge remote-tracking branch 'upstream/master' into ghcjs-cross-without-cc 2019-11-25 00:23:07 +00:00
John Ericson
63bd851e95 stdenv: Introduce hasCC attribute
Before, we'd always use `cc = null`, and check for that. The problem is
this breaks for cross compilation to platforms that don't support a C
compiler.

It's a very subtle issue. One might think there is no problem because we
have `stdenvNoCC`, and presumably one would only build derivations that
use that. The problem is that one still wants to use tools at build-time
that are themselves built with a C compiler, and those are gotten via
"splicing". The runtime version of those deps will explode, but the
build time / `buildPackages` versions of those deps will be fine, and
splicing attempts to work this by using `builtins.tryEval` to filter out
any broken "higher priority" packages (runtime is the default and
highest priority) so that both `foo` and `foo.nativeDrv` works.

However, `tryEval` only catches certain evaluation failures (e.g.
exceptions), and not arbitrary failures (such as `cc.attr` when `cc` is
null). This means `tryEval` fails to let us use our build time deps, and
everything comes apart.

The right solution is, as usually, to get rid of splicing. Or, baring
that, to make it so `foo` never works and one has to explicitly do
`foo.*`. But that is a much larger change, and certaily one unsuitable
to be backported to stable.

Given that, we instead make an exception-throwing `cc` attribute, and
create a `hasCC` attribute for those derivations which wish to
condtionally use a C compiler: instead of doing `stdenv.cc or null ==
null` or something similar, one does `stdenv.hasCC`. This allows quering
without "tripping" the exception, while also allowing `tryEval` to work.

No platform without a C compiler is yet wired up by default. That will
be done in a following commit.
2019-11-25 00:12:38 +00:00
John Ericson
4f1261134e Merge remote-tracking branch 'upstream/master' into staging 2019-11-24 18:33:54 +00:00
John Ericson
d0d5136cce Merge remote-tracking branch 'upstream/master' into wrapper-pname-support 2019-11-24 17:25:07 +00:00
John Ericson
9b090ccbca treewide: Get rid of most parseDrvName without breaking compat
That is because this commit should be merged to both master and
release-19.09.
2019-11-24 17:22:28 +00:00
Frederik Rietdijk
da8e001b12
Merge pull request #73954 from volth/cpan2nix-2019-11-23
perl: 5.30.0 -> 5.30.1
2019-11-24 11:11:56 +01:00
Izorkin
7d0fcb8acc ruby: build with soname tag 2019-11-24 12:55:23 +03:00
Frederik Rietdijk
1d18c5a0fe Merge staging-next into staging 2019-11-24 10:13:31 +01:00
John Ericson
505dcb3b73
Merge pull request #73946 from Ericson2314/fix-lua-env
lua wrapper: Fix bash error
2019-11-23 12:38:44 -05:00
volth
83bacb1ca7 perl: 5.30.0 -> 5.30.1 2019-11-23 12:39:54 +00:00
John Ericson
a610a38cb5 lua wrapper: Fix bash error
Recently, we made it harder for external code to use some stdenv-only bash
variables by unsetting them in [1] But Lua's `withPackages` was sourcing some
setup hooks in [2], which required those bash variables.

I say great! We caught something bad: Lua should use normal dependencies, even
though that is harder with `buildEnv`. Now it works that way, and everything is
fine.

[1]: 9d3911f806/pkgs/stdenv/generic/setup.sh (L574-L578)

[2]: 9d3911f806/pkgs/development/interpreters/lua-5/wrapper.nix (L23-L27)

CC @matthewbauer
2019-11-22 19:47:27 -05:00
Frederik Rietdijk
182571cdc3 update-python-libraries: ignore pyproject 2019-11-22 08:37:03 +01:00
c0bw3b
0afae5c14b Treewide: fix more URL permanent redirects
Related issue: #60004
Previous PR: #73478
2019-11-21 15:37:34 -08:00
Elis Hirwing
fdc094f69e
php74: init at 7.4.0RC6 2019-11-21 23:22:54 +01:00
Frederik Rietdijk
1939a97811 python3: add pythonForBuild as parameter, fixes python3Minimal
`pythonForBuild` exists for cross-compilation. When one overrides
python, one needs to ensure pythonForBuild matches.
2019-11-21 22:00:23 +01:00
Frederik Rietdijk
ad3ef645b0 python3Minimal: 3.7.4 -> 3.7.5
Base it on python37 so we ensure the package remains up to date.
2019-11-21 15:34:37 +01:00
Christian Kauhaus
9a1e9258f6 lua-5.3: add patch for CVE-2019-6706
Taken from
http://launchpadlibrarian.net/417853567/lua5.3_5.3.3-1_5.3.3-1ubuntu0.18.10.1.diff.gz
and adapted to our needs.

Re #54799
2019-11-21 11:10:45 +01:00
Frederik Rietdijk
10d0c68a9b Merge staging-next into staging 2019-11-20 10:02:21 +01:00
Frederik Rietdijk
65edeb8633 Merge master into staging-next 2019-11-20 10:01:49 +01:00
Frederik Rietdijk
648152fdbb python39: init at 3.9.0a1
It's a year until the final release but this will give a chance to test
out certain features and how it integrates with other packages.
https://www.python.org/dev/peps/pep-0596/
2019-11-20 09:42:27 +01:00
Jan Tojnar
2a85ee83b2
guile: fix unbound variable in setup-hook
For compat with set -u
2019-11-20 05:12:13 +01:00
Jan Tojnar
ae465621ff
pythonPackages.pipBuildHook: fix unbound variable
for compatibility with set -u
2019-11-20 05:06:51 +01:00
Frederik Rietdijk
5f8b0d7d99 Merge staging-next into staging 2019-11-19 14:53:29 +01:00
Frederik Rietdijk
f6b39f852e Merge master into staging-next 2019-11-19 10:53:44 +01:00
Daiderd Jordan
f89fff0154
Merge pull request #73457 from cw789/erlang_update
erlangR22: 22.0.4 -> 22.1.7
2019-11-18 23:17:44 +01:00
Timo Kaufmann
d17a25d190
Merge pull request #73448 from cw789/elixir_update
elixir_1_9: 1.9.2 -> 1.9.4
2019-11-18 21:30:10 +01:00
adisbladis
c9d8624ccd
treewide: Get rid of libGLU_combined 2019-11-18 20:10:43 +00:00
Ivan Kozik
106d4049cd quickjs: init at 2019-10-27 (#73515) 2019-11-17 13:35:29 -08:00
cw
1cb60e4dab erlangR22: 22.0.4 -> 22.1.7 2019-11-15 13:35:55 +01:00
cw
110bf03058 elixir_1_9: 1.9.2 -> 1.9.4 2019-11-15 09:34:59 +01:00
Frederik Rietdijk
c6e31d0767 Merge master into staging-next 2019-11-14 13:31:39 +01:00
Frederik Rietdijk
7e7cec1562 hy: use python2, build fails with 3 2019-11-13 16:27:38 +01:00
Frederik Rietdijk
5004cc90f6 renpy: explicitly use python2 2019-11-13 16:27:37 +01:00
Frederik Rietdijk
73b88e17dd Merge staging-next into staging 2019-11-11 12:09:26 +01:00