Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d20c3011a0 
								
							 
						 
						
							
							
								
								* toFile: added an additional argument to specify the store path  
							
							... 
							
							
							
							suffix, e.g., `builtins.toFile "builder.sh" "..."'.
* toFile: handle references to other files correctly. 
							
						 
						
							2006-10-03 14:55:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ac19b333b3 
								
							 
						 
						
							
							
								
								* Finally, a real "let" syntax: `let x = ...; ... z = ...; in ...'.  
							
							
							
						 
						
							2006-10-02 15:52:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7581cfdee4 
								
							 
						 
						
							
							
								
								* Hack for Bison 2.3 compatability.  
							
							
							
						 
						
							2006-10-02 14:43:15 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e347033f71 
								
							 
						 
						
							
							
								
								* The result of a concatenation with a derivation on the left-hand  
							
							... 
							
							
							
							side should be a path, I guess.
* Handle paths that are in the store but not direct children of the
  store directory.
* Ugh, hack to prevent double context wrapping. 
							
						 
						
							2006-09-24 21:39:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0e705391db 
								
							 
						 
						
							
							
								
								* Primop `toPath' to convert a string to a path.  
							
							... 
							
							
							
							* Primop `pathExists' to check for path existence. 
							
						 
						
							2006-09-24 18:23:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e47e0c2dbe 
								
							 
						 
						
							
							
								
								* Builtin function `getEnv' for getting environment variables.  
							
							
							
						 
						
							2006-09-24 17:48:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								df8873e14a 
								
							 
						 
						
							
							
								
								* lessThan primitive for integer comparison.  
							
							
							
						 
						
							2006-09-24 15:21:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2ab4bc44c7 
								
							 
						 
						
							
							
								
								* Builtin function `add' to add integers.  
							
							... 
							
							
							
							* Put common test functions in tests/lang/lib.nix. 
							
						 
						
							2006-09-22 15:29:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d315210612 
								
							 
						 
						
							
							
								
								* Added a builtin function `isList' to test whether a value is a list.  
							
							... 
							
							
							
							With this primitive, a list-flattening function can be implemented
  (NIX-55, example is in tests/lang/eval-okay-flatten.nix). 
							
						 
						
							2006-09-22 14:55:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c02a44183f 
								
							 
						 
						
							
							
								
								* Builtin functions head' and tail' to return the head and tail of  
							
							... 
							
							
							
							list.  Useful for lots of things, such as implementing a fold
  function (see NIX-30, example is in tests/lang/eval-okay-list.nix). 
							
						 
						
							2006-09-22 14:46:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8a1ab709a4 
								
							 
						 
						
							
							
								
								* New builtin functions builtins.{hasAttr, getAttr} to check for  
							
							... 
							
							
							
							attribute existence and to return an attribute from an attribute
  set, respectively.  Example: `hasAttr "foo" {foo = 1;}'.  They
  differ from the `?' and `.' operators in that the attribute name is
  an arbitrary expression.  (NIX-61) 
							
						 
						
							2006-09-22 14:31:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4e91d8621f 
								
							 
						 
						
							
							
								
								* Fix comment.  
							
							
							
						 
						
							2006-09-21 18:52:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								1bdc152931 
								
							 
						 
						
							
							
								
								* Shut up a warning.  
							
							
							
						 
						
							2006-09-20 16:36:29 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0623359fbc 
								
							 
						 
						
							
							
								
								* Print a better error message for wrong hashes (NIX-49).  
							
							
							
						 
						
							2006-09-20 16:15:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								01d169f817 
								
							 
						 
						
							
							
								
								* Support `++'.  
							
							... 
							
							
							
							* More follow restrictions on layout. 
							
						 
						
							2006-09-11 13:05:15 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								fc195519b5 
								
							 
						 
						
							
							
								
								* Sone missing #includes.  
							
							
							
						 
						
							2006-09-05 08:54:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								bafc1690fc 
								
							 
						 
						
							
							
								
								* Move setuid stuff to libutil.  
							
							... 
							
							
							
							* Install libexpr header files. 
							
						 
						
							2006-09-04 22:55:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e5a6c09b12 
								
							 
						 
						
							
							
								
								* Install header files in /nix/include/nix.  
							
							
							
						 
						
							2006-09-04 22:41:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4be5443882 
								
							 
						 
						
							
							
								
								* Remove unnecessary inclusions of aterm2.h.  
							
							
							
						 
						
							2006-09-04 22:08:40 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e3ce954582 
								
							 
						 
						
							
							
								
								* Compile the lexer as C++ code.  Remove all the redundant C/C++  
							
							... 
							
							
							
							marshalling code. 
							
						 
						
							2006-09-04 21:36:15 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								75068e7d75 
								
							 
						 
						
							
							
								
								* Use a proper namespace.  
							
							... 
							
							
							
							* Optimise header file usage a bit.
* Compile the parser as C++. 
							
						 
						
							2006-09-04 21:06:23 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								aab8812732 
								
							 
						 
						
							
							
								
								* Store the Nix libraries in ${libdir}/nix instead of ${libdir}.  
							
							
							
						 
						
							2006-09-04 15:12:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7974aae81c 
								
							 
						 
						
							
							
								
								* New primop: builtins.toFile, which writes a string into the store  
							
							... 
							
							
							
							and returns its path.  This can be used to (for instance) write
  builders inside a Nix expression, e.g.,
  stdenv.mkDerivation {
    builder = "
      source $stdenv/setup
      ...
    ";
    ...
  } 
							
						 
						
							2006-09-01 12:07:31 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								de90fdf908 
								
							 
						 
						
							
							
								
								* Allow "$" in strings as long as they are not followed by "{".  (Too  
							
							... 
							
							
							
							bad flex doesn't have lexical restrictions, the current solution
  isn't quite right...) 
							
						 
						
							2006-09-01 12:04:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f93f7b75be 
								
							 
						 
						
							
							
								
								* Okay, that's a bit harder than expected.  
							
							
							
						 
						
							2006-08-30 13:10:04 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								3151bdea55 
								
							 
						 
						
							
							
								
								* Uninitialised variable.  
							
							
							
						 
						
							2006-08-30 12:00:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								547b119f25 
								
							 
						 
						
							
							
								
								* Support singleton values and nested lists again in `args', but print  
							
							... 
							
							
							
							a warning. 
							
						 
						
							2006-08-29 15:40:49 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2132d9ddeb 
								
							 
						 
						
							
							
								
								* Fix the ~ operator.  
							
							
							
						 
						
							2006-08-29 15:29:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								1ec9f55741 
								
							 
						 
						
							
							
								
								* In toString, deal with nested lists properly (i.e., flatten them).  
							
							
							
						 
						
							2006-08-28 21:47:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								1fca76870b 
								
							 
						 
						
							
							
								
								* Removed processBinding, instead we now apply toString to all  
							
							... 
							
							
							
							derivation attributes to flatten them into strings.  This is
  possible since string can nowadays be wrapped in contexts that
  describe the derivations/sources referenced by the evaluation of the
  string. 
							
						 
						
							2006-08-28 13:31:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8a6080eb14 
								
							 
						 
						
							
							
								
								* Refactoring.  
							
							
							
						 
						
							2006-08-26 16:48:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4b66cebe7b 
								
							 
						 
						
							
							
								
								* Remove those storePath attribute sets, we don't need 'em.  
							
							
							
						 
						
							2006-08-25 17:09:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								215ec2ddc6 
								
							 
						 
						
							
							
								
								* New primop __toXML (or builtins.toXML) to convert an expression to  
							
							... 
							
							
							
							an XML representation stored in a string.  This should be useful to
  pass structured information to builders. 
							
						 
						
							2006-08-24 14:34:29 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f793caf936 
								
							 
						 
						
							
							
								
								* Refactoring.  
							
							
							
						 
						
							2006-08-24 14:16:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								da25d80152 
								
							 
						 
						
							
							
								
								* Strict evaluation and XML printing of lists.  
							
							
							
						 
						
							2006-08-24 14:03:39 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								943ab38a0d 
								
							 
						 
						
							
							
								
								* Refactoring: move strictEval to libexpr.  
							
							
							
						 
						
							2006-08-24 13:39:22 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								9638f3f393 
								
							 
						 
						
							
							
								
								* Pass the autoArgs to findAlongAttrPath so that "nix-instantiate  
							
							... 
							
							
							
							foo.nix -A attr --arg name value" will work if (name, value) is
  needed in the evaluation leading up to "attr". 
							
						 
						
							2006-08-23 16:20:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								b19cebc513 
								
							 
						 
						
							
							
								
								* Quotes.  
							
							
							
						 
						
							2006-08-23 15:46:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								38f18aa6d4 
								
							 
						 
						
							
							
								
								* New primop: abort "error message".  
							
							
							
						 
						
							2006-08-23 15:46:00 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4a053bfdfd 
								
							 
						 
						
							
							
								
								* A new primop `builtins', which returns an attribute set containing  
							
							... 
							
							
							
							all the primops.  This allows Nix expressions to test for new
  primops and take appropriate action if they're not available.  For
  instance, rather than calling a primop `foo' directly, they could
  say `if builtins ? foo then builtins.foo ... else ...'. 
							
						 
						
							2006-08-23 14:39:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2670642733 
								
							 
						 
						
							
							
								
								* Handle carriage returns.  Fixes NIX-53.  
							
							
							
						 
						
							2006-08-16 10:28:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								a18d02e0b0 
								
							 
						 
						
							
							
								
								* Print a warning that the subpath operator (~) is deprecated.  
							
							
							
						 
						
							2006-08-09 15:08:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								1854f84e83 
								
							 
						 
						
							
							
								
								* Fix a few warnings.  
							
							
							
						 
						
							2006-08-04 17:07:13 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4661282fde 
								
							 
						 
						
							
							
								
								* `nix-instantiate ... --arg NAME VALUE': allow arguments to be passed  
							
							... 
							
							
							
							to functions from the command line.
* nix-build: started removing backticks. 
							
						 
						
							2006-07-28 16:03:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c11839d7b2 
								
							 
						 
						
							
							
								
								* `nix-instantiate --print-args': print out the valid values for  
							
							... 
							
							
							
							functions arguments that have a domain. 
							
						 
						
							2006-07-28 14:01:29 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ca2238cf81 
								
							 
						 
						
							
							
								
								* Refactoring: get the selection path stuff out of getDerivations()  
							
							... 
							
							
							
							and put it into a separate function findAlongAttrPath(). 
							
						 
						
							2006-07-26 15:05:15 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2317d8f671 
								
							 
						 
						
							
							
								
								* `nix-instantiate --print-args' prints out the arguments of a  
							
							... 
							
							
							
							top-level function. 
							
						 
						
							2006-07-25 21:21:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0e6dc72a7a 
								
							 
						 
						
							
							
								
								* Applied rbroek's patch from the branch at  
							
							... 
							
							
							
							https://svn.cs.uu.nl:12443/repos/trace/buildfarm-control/trunk/ext/nix/ ,
  with some modifications.  This allows `nix-env -qa' to show the
  attribute path that can be used to unambiguously install a package
  using `nix-env -i -A'.  Example:
    $ nix-env -f top-level/all-packages.nix -qaA subversion xorg-server
    subversionWithJava  subversion-1.2.3
    subversion          subversion-1.3.2
    subversion14        subversion-1.4.0pre-rc1
    xorg.xorgserver     xorg-server-1.1.0 
						
							2006-07-25 16:40:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7a3a5d1608 
								
							 
						 
						
							
							
								
								* When there is a domain check, we have to evaluate the argument.  
							
							... 
							
							
							
							Can't be lazy! 
							
						 
						
							2006-07-24 16:49:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f4c5531d92 
								
							 
						 
						
							
							
								
								* New language feature: domain checks, which check whether a function  
							
							... 
							
							
							
							argument has a valid value, i.e., is in a certain domain.  E.g.,
    { foo : [true false]
    , bar : ["a" "b" "c"]
    }: ...
  This previously could be done using assertions, but domain checks
  will allow the buildfarm to automatically extract the configuration
  space from functions. 
							
						 
						
							2006-07-24 16:35:34 +00:00