Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2be6118f4c 
								
							 
						 
						
							
							
								
								* Don't need the test program anymore.  
							
							
							
						 
						
							2010-04-23 09:09:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0bc468f195 
								
							 
						 
						
							
							
								
								* Simplify the implementation of `with'.  This gives a 7% speedup in  
							
							... 
							
							
							
							evaluating the NixOS system configuration. 
							
						 
						
							2010-04-22 15:08:09 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ee0384fb96 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-04-22 11:34:15 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ebade9ff8b 
								
							 
						 
						
							
							
								
								* Check for duplicate attribute names / function arguments.  `make  
							
							... 
							
							
							
							check' now succeeds :-)
* An attribute set such as `{ foo = { enable = true; };
  foo.port = 23; }' now parses.  It was previously rejected, but I'm
  too lazy to implement the check.  (The only reason to reject it is
  that the reverse, `{ foo.port = 23; foo = { enable = true; }; }', is
  rejected, which is kind of ugly.) 
							
						 
						
							2010-04-22 11:02:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								2d7636529f 
								
							 
						 
						
							
							
								
								* String equality tests should take the context into account.  All the  
							
							... 
							
							
							
							evaluation test cases now succeed. 
							
						 
						
							2010-04-22 09:54:11 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								6bbfe95e30 
								
							 
						 
						
							
							
								
								* Don't use an ostringstream in unparseDerivation(), because it's  
							
							... 
							
							
							
							slow.  A `nix-env -qa --drv-path \*' on Nixpkgs was spending 40% of
  its time in unparseDerivation() because of this (now 11%). 
							
						 
						
							2010-04-21 19:25:50 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7148df7971 
								
							 
						 
						
							
							
								
								* Update the expected test output (no longer an ATerm).  
							
							
							
						 
						
							2010-04-21 16:22:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								6f0f16497a 
								
							 
						 
						
							
							
								
								* Fix the interpretation of ''\<character> in indented strings.  
							
							
							
						 
						
							2010-04-21 16:18:27 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								cae4efdca3 
								
							 
						 
						
							
							
								
								* Because --parse-only no longer produces an ATerm, don't check the  
							
							... 
							
							
							
							output.  Whether it parses at all should be enough. 
							
						 
						
							2010-04-21 16:02:12 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0777448ca6 
								
							 
						 
						
							
							
								
								* Fixed builtins.genericClosure.  
							
							
							
						 
						
							2010-04-21 15:57:11 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								fe2d869e04 
								
							 
						 
						
							
							
								
								* Store user environment manifests as a Nix expression in  
							
							... 
							
							
							
							$out/manifest.nix rather than as an ATerm.
  (Hm, I thought I committed this two days ago...) 
							
						 
						
							2010-04-21 15:08:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d66ea83a76 
								
							 
						 
						
							
							
								
								* Sync with the trunk.  
							
							
							
						 
						
							2010-04-20 09:20:29 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f3b8833a48 
								
							 
						 
						
							
							
								
								* Drop the dependency on the ATerm library.  
							
							
							
						 
						
							2010-04-19 14:51:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								efc7a579e8 
								
							 
						 
						
							
							
								
								* Don't use the ATerm library for parsing/printing .drv files.  
							
							
							
						 
						
							2010-04-19 13:46:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								55b5ddd3ca 
								
							 
						 
						
							
							
								
								* Added parsing of manifests in ATerm format.  
							
							
							
						 
						
							2010-04-19 12:10:04 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								b7ff69eb7c 
								
							 
						 
						
							
							
								
								* Refactoring: move the user environment stuff into its own module.  
							
							
							
						 
						
							2010-04-19 10:47:56 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								5c31995bb8 
								
							 
						 
						
							
							
								
								* Updated some more primops.  
							
							
							
						 
						
							2010-04-16 15:13:47 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8bb0210fea 
								
							 
						 
						
							
							
								
								* _combineChannels shouldn't be an integer.  
							
							
							
						 
						
							2010-04-16 14:07:52 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8ca4a001cb 
								
							 
						 
						
							
							
								
								* Improve sharing a bit.  
							
							
							
						 
						
							2010-04-16 14:03:26 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								497e4ad126 
								
							 
						 
						
							
							
								
								* Remove some redundant tests.  
							
							
							
						 
						
							2010-04-16 13:51:01 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								02c1dac909 
								
							 
						 
						
							
							
								
								* In an nested with' where the inner with is a variable (with ...;  
							
							... 
							
							
							
							with someVar; ...'), the contents of the variable would be
  clobbered.  (The attributes in the outer `with' were added to the
  variable.) 
							
						 
						
							2010-04-16 13:44:02 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								04c4bd3624 
								
							 
						 
						
							
							
								
								* Store lists as lists of pointers to values rather than as lists of  
							
							... 
							
							
							
							values.  This improves sharing and gives another speed up.
  Evaluation of the NixOS system attribute is now almost 7 times
  faster than the old evaluator. 
							
						 
						
							2010-04-15 00:37:36 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e41b5828db 
								
							 
						 
						
							
							
								
								* Better stats.  
							
							
							
						 
						
							2010-04-14 23:48:46 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d39d3c6264 
								
							 
						 
						
							
							
								
								* Implemented inherit.  
							
							
							
						 
						
							2010-04-14 23:25:05 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								267dc693d2 
								
							 
						 
						
							
							
								
								* Fix builtins.  
							
							
							
						 
						
							2010-04-14 22:59:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								81de12bc8f 
								
							 
						 
						
							
							
								
								* Refactoring: move variable uses to a separate class.  
							
							
							
						 
						
							2010-04-14 15:14:23 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								110d155778 
								
							 
						 
						
							
							
								
								* Implemented withs.  
							
							
							
						 
						
							2010-04-14 15:01:04 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								9985230c00 
								
							 
						 
						
							
							
								
								* After parsing, compute level/displacement pairs for each variable  
							
							... 
							
							
							
							use site, allowing environments to be stores as vectors of values
  rather than maps.  This should speed up evaluation and reduce the
  number of allocations. 
							
						 
						
							2010-04-14 14:42:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								816dd3f061 
								
							 
						 
						
							
							
								
								* Remove more obsolete code.  
							
							
							
						 
						
							2010-04-14 12:49:05 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								011b5da0f4 
								
							 
						 
						
							
							
								
								* Get nix-env to compile again.  
							
							
							
						 
						
							2010-04-14 09:39:06 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								85d13c8f93 
								
							 
						 
						
							
							
								
								* Change the semantics of "with" so that inner "withs" take  
							
							... 
							
							
							
							precedence, i.e. `with {x=1;}; with {x=2;}; x' evaluates to 2'.
  This has a simpler implementation and seems more natural.  There
  doesn't seem to be any code in Nixpkgs or NixOS that relies on the
  old behaviour. 
							
						 
						
							2010-04-14 08:37:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								816f9c0f6f 
								
							 
						 
						
							
							
								
								* Use std::tr1::unordered_set instead of std::set for the symbol  
							
							... 
							
							
							
							table.  This gives a 10% speed increase on `nix-instantiate
  /etc/nixos/nixos -A system --readonly-mode'. 
							
						 
						
							2010-04-13 14:34:11 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7d47498b5e 
								
							 
						 
						
							
							
								
								* Evaluate lets directly (i.e. without desugaring to `rec { attrs...;  
							
							... 
							
							
							
							<let-body> = e; }.<let-body>).  This prevents the unnecessary
  allocation of an attribute set. 
							
						 
						
							2010-04-13 13:42:25 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ac1e8f40d4 
								
							 
						 
						
							
							
								
								* Use a symbol table to represent identifiers and attribute names  
							
							... 
							
							
							
							efficiently.  The symbol table ensures that there is only one copy
  of each symbol, thus allowing symbols to be compared efficiently
  using a pointer equality test. 
							
						 
						
							2010-04-13 12:25:42 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								10e8b1fd15 
								
							 
						 
						
							
							
								
								* Finished the ATerm-less parser.  
							
							
							
						 
						
							2010-04-12 23:33:23 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0d272fca79 
								
							 
						 
						
							
							
								
								* Remove some obsolete functions.  
							
							
							
						 
						
							2010-04-12 23:31:47 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d4f0b0fc6c 
								
							 
						 
						
							
							
								
								* Indented strings.  
							
							
							
						 
						
							2010-04-12 22:03:27 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								a60317f20f 
								
							 
						 
						
							
							
								
								* More missing constructs.  
							
							
							
						 
						
							2010-04-12 21:21:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4d6ad5be17 
								
							 
						 
						
							
							
								
								* Don't use ATerms for the abstract syntax trees anymore.  Not  
							
							... 
							
							
							
							finished yet. 
							
						 
						
							2010-04-12 18:30:11 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ed711f73bc 
								
							 
						 
						
							
							
								
								* Don't use ATerms to represent integers in the lexer.  
							
							
							
						 
						
							2010-04-12 10:38:18 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								db90b88e65 
								
							 
						 
						
							
							
								
								* Hack to support builderDefs expressions.  
							
							
							
						 
						
							2010-04-12 09:50:20 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4e49002576 
								
							 
						 
						
							
							
								
								* Doh.  
							
							
							
						 
						
							2010-04-12 09:45:00 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c3f228f296 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-04-12 09:14:27 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ludovic Courtès 
								
							 
						 
						
							
							
							
							
								
							
							
								aac5fcfbb5 
								
							 
						 
						
							
							
								
								Re-add drvPath' and outPath' attributes to <derivation> XML nodes.  
							
							... 
							
							
							
							This fixes a regression introduced in r20882 ("Add source location
information to the XML output.").
* src/libexpr/expr-to-xml.cc (nix::printTermAsXML): Dereference the
  attribute RHS from "drvPath" and "outPath". 
							
						 
						
							2010-04-09 21:30:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f3dc7ab877 
								
							 
						 
						
							
							
								
								* Keep more statistics about stack space usage.  
							
							... 
							
							
							
							* Reduce stack space usage. 
							
						 
						
							2010-04-09 12:00:49 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								b7b3dd55f9 
								
							 
						 
						
							
							
								
								* Remove a lot of dead code.  
							
							
							
						 
						
							2010-04-08 11:41:19 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7e048eddf5 
								
							 
						 
						
							
							
								
								* Fix blackholing.  If evaluation fails due to an assertion failure,  
							
							... 
							
							
							
							then the blackhole has to be removed to ensure that repeated
  evaluation of the same value gives an assertion failure again rather
  than an "infinite recursion" error. 
							
						 
						
							2010-04-08 11:25:14 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								af2a372bb0 
								
							 
						 
						
							
							
								
								* Update autoCallFunction() and findAlongAttrPath().  
							
							
							
						 
						
							2010-04-07 15:47:06 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								9a64454faa 
								
							 
						 
						
							
							
								
								* expr-to-xml -> value-to-xml.  
							
							
							
						 
						
							2010-04-07 13:59:45 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								fc92244ba8 
								
							 
						 
						
							
							
								
								* Implemented the primops necessary for generating the NixOS manual.  
							
							
							
						 
						
							2010-04-07 13:55:46 +00:00