v0.1.54 - Emits an error when you've got an "include" of another package without specifying the version. It used to be the case that you could leave the version off, but that would only work if there was a "current" version of the depended upon package published. Which meant that you'd have to --force the publication of the "current" version. v0.1.53 - Fix bug in doing "fig -u" when the remote repository has a figrc file. v0.1.52 Notice: A lot of internal changes have been made to make future changes easier and test coverage is significantly better than it was before. We believe that we haven't broken anything (other than the purposeful changes below), but due to the scope of the changes, we may have done so. Please report any problems you run into. Backwards incompatibilities: - Now requires at least ruby v1.8.7. - You can no longer run a command without using "--". Through an accident of implementation, you previously could do fig echo foo You are now required to run this as fig -- echo foo - You can no longer specify multiple --clean or --list-configs options. - There was partial support for overridding the local location of a package via a "fig.properties" file in the current directory. A full implementation of this type of thing may come in the future, but for the time being, in the efforts of making the code clean, this is gone. - Development now requires at least rspec 2.8. New features: - "--list-dependencies" option. This will list all dependencies a given package has, recursively. For example, if you have package A which depends upon packages B and C which both depend upon package D, running fig --list-dependencies A/1.2.3 will give you B/2.3.4 C/3.4.5 D/4.5.6 If you additionally specify "--list-tree", you'll get a nested dependency tree: fig --list-dependencies --list-tree A/1.2.3 A/1.2.3 B/2.3.4 D/4.5.6 C/3.4.5 D/4.5.6 If you don't specify a package descriptor, but you've got a package.fig file in the current directory with the same dependencies as package A above, you'll get fig --list-dependencies --list-tree B/2.3.4 D/4.5.6 C/3.4.5 D/4.5.6 If there are no dependencies, you don't specify "--list-tree", and stdout is connected to a terminal: fig --list-dependencies package-with-no-dependencies/1.2.3 However, if stdout is not connected to a terminal: fig --list-dependencies package-with-no-dependencies/1.2.3 | cat [no output] Additionally, you can specify "--list-all-configs"; this will follow all the configurations in the base package. Note that this will show multiple versions of the same package if different configurations depend upon different versions. v0.1.51 - You can now set an environment variable to the empty string with "set". - Fix bug with same env variable in both APPEND and RETRIEVE statements, causing Fig to attempt to retrieve libs intended for publish. (The bug was introduced in 0.1.49, in commit aa3f3ab6c7, while fixing another bug). v0.1.50 - Trying to get releases via rake to work properly for multiple platforms. v0.1.49 - Finalizing figrc name for URL whitelist. v0.1.47-48 - Exception, regex, and test refactoring. - Fixing operator precedence in environment. - Updated copyright years. - Changed README example to use file:// URL. - Change ssh:// tests to file:// tests. - Refactored '[package]' substitution. - Implemented @ escaping in variables. v0.1.46 - Rakefile improvements. - Fixing broken reference to Fig::Logging in environment.rb. v0.1.43-0.1.45 - Rakefile improvements. - Test file refactoring/improvements. - Complains if it has nothing to do. v0.1.42 - Fig::Package refactoring. - "file:" protocol works for FIG_REMOTE_HOME. - Testing no longer requires ssh. - Implemented whitelist chceking after parse. - Simplify character classes in grammar, slight grammar refactoring. - Supports MacOS (better) in Rakefile. - No longer emits stack trace for invalid command line option(s). - Tests emits std(out|err) on failure, for ease in debugging test failures. v0.1.41 - Release cleanup v0.1.40 - Works on Mac (in conjunction with libarchive-static 1.0.1). - Supports configuration via rc files in JSON format. These can be (in ascending order of priority of values): - in the repository under "_meta/figrc" - in your home directory in ".figrc" - specified on the command-line via the "--figrc" option Note that values from all the above locations will be merged into a single, net application configuration. E.g. if /_meta/figrc contains {"a" => 5, "b" => 7"} and ~/.figrc contains {"a" => 37} then Fig will see a value for "a" of 37 and a value for "b" of 7. Processing of ~/.figrc can be suppressed via the "--no-figrc" option. - Supports logging via log4r. Configure via "log configuration" in the rc files or via the "--log-config" and "--log-level" command-line options. The configuration files must be in XML or YAML format in a way supported by log4r and contain configuration for a "fig" logger. The "--log-level" will override any value found in the configuration files. - Added additional messages about activity including file download source and destination. Try "--log-level debug". Suggestions about changes to levels that are supported, which levels messages are emitted at, and any additional desired logging are welcome. - Supports "-v/--version" to emit the Fig version. - No longer silently does nothing when no arguments are specified. - Start of support for restricting URLs in package.fig files via a URL whitelist; not complete yet and will likely change. - RSpec usage has been upgraded to v2.