Commit graph

16 commits

Author SHA1 Message Date
Nicolas Pierron 00127bef3f Move zip & zipWithNames from misc.nix to attrsets.nix and rename them to
zipAttrs*.

Add recursiveUpdate functions based on zipAttrs.

svn path=/nixpkgs/trunk/; revision=17506
2009-09-29 14:57:00 +00:00
Marc Weber 15afc2fa04 fix mergeAttrsWithFunc (also merge in names which are only in the snd attrs)
svn path=/nixpkgs/trunk/; revision=17406
2009-09-24 18:22:33 +00:00
Eelco Dolstra 12395c36a9 * Typos.
svn path=/nixpkgs/trunk/; revision=17348
2009-09-22 09:26:18 +00:00
Marc Weber 88e66ae7f4 rename mapRecordFlatten to mapAttrsFlatten
svn path=/nixpkgs/trunk/; revision=17315
2009-09-20 21:54:20 +00:00
Nicolas Pierron 0c16b00cbd Replace the traversal of modules:
- Remove handleOptionSets which used option declarations & definitions
in the same set.
- Add a traversal of modules where "config" and "options" are traverse at
the same time.

This allow to have accruate error messages with the incriminated files
playing a role in the error.

This system add a new restriction compare to the previous system:
- A module with no structure (option definitions & option declarations
& require) should not contain any option declarations.  If such module
exists you must convert it to the following form:

{ imports = <content of the require attribute>;
  options = <set of option declarations>;
  config = <set of option definitions>;
}

svn path=/nixpkgs/trunk/; revision=17163
2009-09-15 13:36:30 +00:00
Marc Weber e7dc062579 adding xapian and xapian-bindings
svn path=/nixpkgs/trunk/; revision=16788
2009-08-20 20:18:58 +00:00
Nicolas Pierron c49dddb1ab Substitute fixOptionSetsFun by multiple functions which are:
- well named,
- capable to handle the proposal of Eelco Dolstra { imports= [..]; options = {}; config = {}; } in addition to the current { require = [..]; .. } syntax.

svn path=/nixpkgs/trunk/; revision=16192
2009-07-06 16:20:05 +00:00
Marc Weber 3157bb1098 removed all __primops from nixpkgs
svn path=/nixpkgs/trunk/; revision=15693
2009-05-24 10:57:46 +00:00
Marc Weber f7f938a1d1 big breaking change: renaming lib.getAttr to lib.attrByPath
getAttr was ambiguous. It's also a builtin function

fix

svn path=/nixpkgs/trunk/; revision=15692
2009-05-24 10:57:41 +00:00
Eelco Dolstra abf71d5352 * textClosure: don't use uniqList, and don't rely on buggy behaviour
in the Nix expression evaluator (namely that comparison of attribute
  sets works properly).
* Removed some redundant parentheses in builder-defs.

svn path=/nixpkgs/trunk/; revision=15551
2009-05-11 15:21:42 +00:00
Eelco Dolstra b53ef57554 * Moved mapAttrs to attrsets.nix.
* Added a function mapAttrsRecursive, which is like mapAttrs, but
  recursively applies itself to attribute sets.
* Commented and cleaned up some functions.

svn path=/nixpkgs/trunk/; revision=14495
2009-03-10 15:18:38 +00:00
Marc Weber 08e1c08bc7 moved debugging functions into lib module "debug"
svn path=/nixpkgs/trunk/; revision=14430
2009-03-06 23:21:35 +00:00
Marc Weber 5ddfa7ed64 moved catAttrs, attrVals into attrsets.nix, adding attrValues
svn path=/nixpkgs/trunk/; revision=14425
2009-03-06 23:21:14 +00:00
Marc Weber be3a9f2346 added overridableDelayableArgs replacing applyAndFun
svn path=/nixpkgs/trunk/; revision=14424
2009-03-06 23:21:12 +00:00
Marc Weber e917282535 added eqStrict (deep, strict test for equality)
it can replace eqList and can compare attrs as well

svn path=/nixpkgs/trunk/; revision=14423
2009-03-06 23:21:09 +00:00
Eelco Dolstra 599015e8b0 * Split lib/default.nix into several files, as it had become a big
mess.  Also cleaned up some functions:

  - foldl appeared broken (it recursively called fold).
  - Renamed logicalAND/logicalOR to and/or.
  - Removed listOfListsToAttrs, eqStrings: obsolete.
  - Removed isInList, which does the same thing as elem.
  - stringToCharacters: don't return a "" at the end of the list.
  - Renamed concatList to concat, as concatList (singular) is a
    misnomer: it takes two lists.  Likewise, renamed mergeAttr to
    mergeAttrs.

  misc.nix still contains a lot of stuff that should be refactored and
  moved to other files.

svn path=/nixpkgs/trunk/; revision=14013
2009-02-09 16:51:03 +00:00