fig 1.27.0 → 1.27.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/BUGS.md +1 -0
 - data/Changes +42 -6
 - data/README.md +8 -13
 - data/lib/fig.rb +1 -1
 - data/lib/fig/command/action/source_package.rb +16 -2
 - data/lib/fig/operating_system.rb +1 -1
 - data/lib/fig/package.rb +2 -0
 - data/lib/fig/repository_package_publisher.rb +19 -0
 - data/lib/fig/runtime_environment.rb +1 -1
 - data/lib/fig/working_directory_maintainer.rb +33 -16
 - metadata +4 -4
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: c2340ed4733d60d36f09564178f935b9055a2bd4
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 026e1aa63920ab41ea4a88875ce5650b28c81569
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 3eacf1f335d744178e6a9ca9ef36c02d291a5f1d53392c5d56340c857c4c61513e6ef6c1807022f17fc216ff0aae5e6283ff8982f6feb62138fafe3f56f94d19
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 1268b9a35c94ca0d337ef019a6f07d670587e12db4f1a95c03c94fff68588a537bc7ee28864632df817d8f77b0314db6036db08507e34bd73d1c01f9a8c02b97
         
     | 
    
        data/BUGS.md
    CHANGED
    
    | 
         @@ -5,4 +5,5 @@ 
     | 
|
| 
       5 
5 
     | 
    
         
             
              value of `FIG_REMOTE_URL` into account, meaning that, if you switch
         
     | 
| 
       6 
6 
     | 
    
         
             
              `FIG_REMOTE_URL` without also switching `FIG_HOME`, "fun" things can happen.
         
     | 
| 
       7 
7 
     | 
    
         
             
            - URLs with query parameters or involve redirects are untested.
         
     | 
| 
      
 8 
     | 
    
         
            +
            - NetRC is looked for as ".netrc" and not "\_netrc".
         
     | 
| 
       8 
9 
     | 
    
         
             
            - Repository locking doesn't happen on Windows.
         
     | 
    
        data/Changes
    CHANGED
    
    | 
         @@ -1,3 +1,37 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            v1.27.3 - 2018/5/16
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
              Bug fixes:
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
              - Fix crash when attempting to use --source-package without also specifying
         
     | 
| 
      
 6 
     | 
    
         
            +
                --update or --update-if-missing.  Thanks to Matt Godbolt for the report.
         
     | 
| 
      
 7 
     | 
    
         
            +
              - Fix for publishing from Windows; _stat() chokes on directories when the
         
     | 
| 
      
 8 
     | 
    
         
            +
                path contains a trailing slash.  Patch by Andrey Zdanovich.
         
     | 
| 
      
 9 
     | 
    
         
            +
              - Fix for warning message emitted when a retrieve path gets changed.  Patch
         
     | 
| 
      
 10 
     | 
    
         
            +
                by Gabriel Burca.
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              Miscellaneous:
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
              - Line number is included in error messages when parsing local metadata.
         
     | 
| 
      
 15 
     | 
    
         
            +
              - Home of all things Fig moved to https://github.com/fig-package-manager/fig.
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            v1.27.2 - 2016/10/20
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              Miscellaneous:
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
              - Log when a retrieval is removing a symlink or overwriting a file.
         
     | 
| 
      
 22 
     | 
    
         
            +
              - Include publishing operating system in package metadata.
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            v1.27.1 - 2016/7/19
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
              Bug fixes:
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
              - Fixed comparison of packages due to changes in Ruby v2.3.x.
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
              Miscellaneous:
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
              - JSON and RDoc version requirements bumped to values compatible with Ruby
         
     | 
| 
      
 33 
     | 
    
         
            +
                v2.3.1.
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
       1 
35 
     | 
    
         
             
            v1.27.0 - 2015/7/9
         
     | 
| 
       2 
36 
     | 
    
         | 
| 
       3 
37 
     | 
    
         
             
              Bug fixes:
         
     | 
| 
         @@ -110,8 +144,9 @@ v1.23.0 - 2015/1/2 
     | 
|
| 
       110 
144 
     | 
    
         
             
              - Upgraded dependencies.
         
     | 
| 
       111 
145 
     | 
    
         
             
              - A rudimentary Vim plugin has been added to the repository with syntax
         
     | 
| 
       112 
146 
     | 
    
         
             
                highlighting of comments and keywords.  See
         
     | 
| 
       113 
     | 
    
         
            -
                https://github.com/ 
     | 
| 
       114 
     | 
    
         
            -
                Those with better VimL knowledge encouraged to submit 
     | 
| 
      
 147 
     | 
    
         
            +
                https://github.com/fig-package-manager/fig/blob/master/support/vim/README.md
         
     | 
| 
      
 148 
     | 
    
         
            +
                for more.  Those with better VimL knowledge encouraged to submit
         
     | 
| 
      
 149 
     | 
    
         
            +
                improvements.
         
     | 
| 
       115 
150 
     | 
    
         | 
| 
       116 
151 
     | 
    
         
             
            v1.22.1.beta.1 - 2014/12/17
         
     | 
| 
       117 
152 
     | 
    
         | 
| 
         @@ -764,9 +799,9 @@ v0.2.1 - 2012/11/5 
     | 
|
| 
       764 
799 
     | 
    
         
             
                  Grammar v1 is required because the set statement (--set option) contains a comment ("#") character.
         
     | 
| 
       765 
800 
     | 
    
         | 
| 
       766 
801 
     | 
    
         
             
                Documentation for the new grammar is available at
         
     | 
| 
       767 
     | 
    
         
            -
                https://github.com/ 
     | 
| 
       768 
     | 
    
         
            -
                a look at the old one, as well:
         
     | 
| 
       769 
     | 
    
         
            -
                https://github.com/ 
     | 
| 
      
 802 
     | 
    
         
            +
                https://github.com/fig-package-manager/fig/wiki/v1-grammar.  It may be
         
     | 
| 
      
 803 
     | 
    
         
            +
                helpful to have a look at the old one, as well:
         
     | 
| 
      
 804 
     | 
    
         
            +
                https://github.com/fig-package-manager/fig/wiki/v0-grammar
         
     | 
| 
       770 
805 
     | 
    
         | 
| 
       771 
806 
     | 
    
         
             
              Miscellaneous:
         
     | 
| 
       772 
807 
     | 
    
         | 
| 
         @@ -1270,7 +1305,8 @@ v0.1.64 - 2012/5/21 
     | 
|
| 
       1270 
1305 
     | 
    
         
             
                messages and fewer stack traces.
         
     | 
| 
       1271 
1306 
     | 
    
         | 
| 
       1272 
1307 
     | 
    
         
             
              - README.md has had most of its content ripped out.  Documentation has been
         
     | 
| 
       1273 
     | 
    
         
            -
                greatly expanded and is available at 
     | 
| 
      
 1308 
     | 
    
         
            +
                greatly expanded and is available at
         
     | 
| 
      
 1309 
     | 
    
         
            +
                https://github.com/fig-package-manager/fig/wiki.
         
     | 
| 
       1274 
1310 
     | 
    
         | 
| 
       1275 
1311 
     | 
    
         
             
              - Includes the Fig version in the comments in published .fig files.
         
     | 
| 
       1276 
1312 
     | 
    
         | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -1,10 +1,9 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            Description
         
     | 
| 
       2 
     | 
    
         
            -
            ===========
         
     | 
| 
      
 1 
     | 
    
         
            +
            # Description
         
     | 
| 
       3 
2 
     | 
    
         | 
| 
       4 
3 
     | 
    
         
             
            Fig is a utility for configuring environments and managing dependencies across
         
     | 
| 
       5 
4 
     | 
    
         
             
            a team of developers.
         
     | 
| 
       6 
5 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
            An "environment" in  
     | 
| 
      
 6 
     | 
    
         
            +
            An "environment" in Fig is a set of environment variables.  A "package" is a
         
     | 
| 
       8 
7 
     | 
    
         
             
            collection of files, along with some metadata describing which environment
         
     | 
| 
       9 
8 
     | 
    
         
             
            variables should be modified when the package is included.  For instance, each
         
     | 
| 
       10 
9 
     | 
    
         
             
            dependency may prepend its corresponding jar to CLASSPATH.  The metadata may
         
     | 
| 
         @@ -27,25 +26,21 @@ install them in the fig-home as needed.  Fig does not contact the remote 
     | 
|
| 
       27 
26 
     | 
    
         
             
            repository unless it needs to.  The default fig-home is `$HOME/.fighome`, but
         
     | 
| 
       28 
27 
     | 
    
         
             
            may be changed by setting the `$FIG_HOME` environment variable.
         
     | 
| 
       29 
28 
     | 
    
         | 
| 
       30 
     | 
    
         
            -
            Full documentation
         
     | 
| 
       31 
     | 
    
         
            -
            ==================
         
     | 
| 
      
 29 
     | 
    
         
            +
            # Full documentation
         
     | 
| 
       32 
30 
     | 
    
         | 
| 
       33 
     | 
    
         
            -
            https://github.com/ 
     | 
| 
      
 31 
     | 
    
         
            +
            https://github.com/fig-package-manager/fig/wiki
         
     | 
| 
       34 
32 
     | 
    
         | 
| 
       35 
     | 
    
         
            -
            Community
         
     | 
| 
       36 
     | 
    
         
            -
            =========
         
     | 
| 
      
 33 
     | 
    
         
            +
            # Community
         
     | 
| 
       37 
34 
     | 
    
         | 
| 
       38 
35 
     | 
    
         
             
            \#fig on irc.freenode.net
         
     | 
| 
       39 
36 
     | 
    
         | 
| 
       40 
37 
     | 
    
         
             
            [Fig Mailing List](http://groups.google.com/group/fig-user)
         
     | 
| 
       41 
38 
     | 
    
         | 
| 
       42 
     | 
    
         
            -
            Extensions for other tools
         
     | 
| 
       43 
     | 
    
         
            -
            ==========================
         
     | 
| 
      
 39 
     | 
    
         
            +
            # Extensions for other tools
         
     | 
| 
       44 
40 
     | 
    
         | 
| 
       45 
41 
     | 
    
         
             
            These live in the `support` directory within the repository.  For example,
         
     | 
| 
       46 
42 
     | 
    
         
             
            there's a Vim plugin in `support/vim`.
         
     | 
| 
       47 
43 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
            Copyright
         
     | 
| 
       49 
     | 
    
         
            -
            =========
         
     | 
| 
      
 44 
     | 
    
         
            +
            # Copyright
         
     | 
| 
       50 
45 
     | 
    
         | 
| 
       51 
     | 
    
         
            -
            Copyright  
     | 
| 
      
 46 
     | 
    
         
            +
            Copyright ©2009-2018 Matthew Foemmel. See LICENSE for details.
         
     | 
    
        data/lib/fig.rb
    CHANGED
    
    
| 
         @@ -49,14 +49,28 @@ class Fig::Command::Action::SourcePackage 
     | 
|
| 
       49 
49 
     | 
    
         
             
                  return EXIT_FAILURE
         
     | 
| 
       50 
50 
     | 
    
         
             
                end
         
     | 
| 
       51 
51 
     | 
    
         
             
                if File.directory? @file
         
     | 
| 
       52 
     | 
    
         
            -
                  $stderr.puts 
     | 
| 
      
 52 
     | 
    
         
            +
                  $stderr.puts(
         
     | 
| 
      
 53 
     | 
    
         
            +
                    %Q<"#{@file}" is a directory. Fig does not keep track of directories.>
         
     | 
| 
      
 54 
     | 
    
         
            +
                  )
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
       53 
56 
     | 
    
         
             
                  return EXIT_FAILURE
         
     | 
| 
       54 
57 
     | 
    
         
             
                end
         
     | 
| 
       55 
58 
     | 
    
         | 
| 
       56 
59 
     | 
    
         
             
                maintainer = @execution_context.working_directory_maintainer
         
     | 
| 
      
 60 
     | 
    
         
            +
                if not maintainer
         
     | 
| 
      
 61 
     | 
    
         
            +
                  $stderr.puts(
         
     | 
| 
      
 62 
     | 
    
         
            +
                    %Q<Cannot answer what source packages are because retrieves are not active. Try again, but additionally specify --update or --update-if-missing.>
         
     | 
| 
      
 63 
     | 
    
         
            +
                  )
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
                  return EXIT_FAILURE
         
     | 
| 
      
 66 
     | 
    
         
            +
                end
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
       57 
68 
     | 
    
         
             
                package_version = maintainer.find_package_version_for_file @file
         
     | 
| 
       58 
69 
     | 
    
         
             
                if ! package_version
         
     | 
| 
       59 
     | 
    
         
            -
                  $stderr.puts 
     | 
| 
      
 70 
     | 
    
         
            +
                  $stderr.puts(
         
     | 
| 
      
 71 
     | 
    
         
            +
                    %Q<Don't know anything about "#{@file}". It is not in the list of files that resulted from a "retrieve".>
         
     | 
| 
      
 72 
     | 
    
         
            +
                  )
         
     | 
| 
      
 73 
     | 
    
         
            +
             
     | 
| 
       60 
74 
     | 
    
         
             
                  return EXIT_FAILURE
         
     | 
| 
       61 
75 
     | 
    
         
             
                end
         
     | 
| 
       62 
76 
     | 
    
         | 
    
        data/lib/fig/operating_system.rb
    CHANGED
    
    | 
         @@ -279,7 +279,7 @@ class Fig::OperatingSystem 
     | 
|
| 
       279 
279 
     | 
    
         
             
              def add_path_to_archive(path, archive_writer)
         
     | 
| 
       280 
280 
     | 
    
         
             
                children = []
         
     | 
| 
       281 
281 
     | 
    
         
             
                archive_writer.new_entry do |entry|
         
     | 
| 
       282 
     | 
    
         
            -
                  entry.copy_lstat(path)
         
     | 
| 
      
 282 
     | 
    
         
            +
                  entry.copy_lstat(path.chomp '/') # chomp required on Windows
         
     | 
| 
       283 
283 
     | 
    
         
             
                  entry.pathname = path
         
     | 
| 
       284 
284 
     | 
    
         
             
                  if entry.symbolic_link?
         
     | 
| 
       285 
285 
     | 
    
         
             
                    linked = File.readlink(path)
         
     | 
    
        data/lib/fig/package.rb
    CHANGED
    
    
| 
         @@ -152,6 +152,7 @@ class Fig::RepositoryPackagePublisher 
     | 
|
| 
       152 
152 
     | 
    
         | 
| 
       153 
153 
     | 
    
         
             
                @text_assembler.add_header %Q<#     User: #{@publish_login}>
         
     | 
| 
       154 
154 
     | 
    
         
             
                @text_assembler.add_header %Q<#     Host: #{@publish_host}>
         
     | 
| 
      
 155 
     | 
    
         
            +
                @text_assembler.add_header %Q<#     O/S:  #{derive_platform_description}>
         
     | 
| 
       155 
156 
     | 
    
         | 
| 
       156 
157 
     | 
    
         
             
                sanitized_argv = ARGV.map {|arg| arg.gsub "\n", '\\n'}
         
     | 
| 
       157 
158 
     | 
    
         
             
                @text_assembler.add_header %Q<#     Args: "#{sanitized_argv.join %q[", "]}">
         
     | 
| 
         @@ -203,6 +204,24 @@ class Fig::RepositoryPackagePublisher 
     | 
|
| 
       203 
204 
     | 
    
         
             
                return
         
     | 
| 
       204 
205 
     | 
    
         
             
              end
         
     | 
| 
       205 
206 
     | 
    
         | 
| 
      
 207 
     | 
    
         
            +
              def derive_platform_description
         
     | 
| 
      
 208 
     | 
    
         
            +
                host_os = RbConfig::CONFIG['host_os']
         
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
      
 210 
     | 
    
         
            +
                return host_os if host_os !~ /linux|darwin/i
         
     | 
| 
      
 211 
     | 
    
         
            +
             
     | 
| 
      
 212 
     | 
    
         
            +
                if host_os =~ /darwin/i
         
     | 
| 
      
 213 
     | 
    
         
            +
                  product_name = %x/sw_vers -productName/
         
     | 
| 
      
 214 
     | 
    
         
            +
                  product_version = %x/sw_vers -productVersion/
         
     | 
| 
      
 215 
     | 
    
         
            +
                  return product_name.strip + ' ' + product_version.strip
         
     | 
| 
      
 216 
     | 
    
         
            +
                end
         
     | 
| 
      
 217 
     | 
    
         
            +
             
     | 
| 
      
 218 
     | 
    
         
            +
                linux_distribution = %x/lsb_release --description --short/
         
     | 
| 
      
 219 
     | 
    
         
            +
                linux_distribution.chomp!
         
     | 
| 
      
 220 
     | 
    
         
            +
                linux_distribution.gsub!(/\A " (.*) " \z/x, '\1')
         
     | 
| 
      
 221 
     | 
    
         
            +
             
     | 
| 
      
 222 
     | 
    
         
            +
                return linux_distribution
         
     | 
| 
      
 223 
     | 
    
         
            +
              end
         
     | 
| 
      
 224 
     | 
    
         
            +
             
     | 
| 
       206 
225 
     | 
    
         
             
              def add_environment_variables_to_package_metadata()
         
     | 
| 
       207 
226 
     | 
    
         
             
                variables = @application_configuration[
         
     | 
| 
       208 
227 
     | 
    
         
             
                  'environment variables to include in comments in published packages'
         
     | 
| 
         @@ -58,7 +58,7 @@ class Fig::RuntimeEnvironment 
     | 
|
| 
       58 
58 
     | 
    
         
             
                name = retrieve_statement.variable
         
     | 
| 
       59 
59 
     | 
    
         
             
                if @retrieves.has_key?(name)
         
     | 
| 
       60 
60 
     | 
    
         
             
                  Fig::Logging.warn \
         
     | 
| 
       61 
     | 
    
         
            -
                    % 
     | 
| 
      
 61 
     | 
    
         
            +
                    %Q<About to overwrite "#{name}" retrieve path of "#{@retrieves[name].path}" with "#{retrieve_statement.path}".>
         
     | 
| 
       62 
62 
     | 
    
         
             
                end
         
     | 
| 
       63 
63 
     | 
    
         | 
| 
       64 
64 
     | 
    
         
             
                @retrieves[name] = retrieve_statement
         
     | 
| 
         @@ -107,25 +107,36 @@ class Fig::WorkingDirectoryMaintainer 
     | 
|
| 
       107 
107 
     | 
    
         
             
              private
         
     | 
| 
       108 
108 
     | 
    
         | 
| 
       109 
109 
     | 
    
         
             
              def load_metadata()
         
     | 
| 
       110 
     | 
    
         
            -
                 
     | 
| 
       111 
     | 
    
         
            -
             
     | 
| 
       112 
     | 
    
         
            -
             
     | 
| 
       113 
     | 
    
         
            -
             
     | 
| 
       114 
     | 
    
         
            -
             
     | 
| 
       115 
     | 
    
         
            -
                     
     | 
| 
       116 
     | 
    
         
            -
             
     | 
| 
       117 
     | 
    
         
            -
                     
     | 
| 
       118 
     | 
    
         
            -
                    if  
     | 
| 
       119 
     | 
    
         
            -
                       
     | 
| 
       120 
     | 
    
         
            -
             
     | 
| 
      
 110 
     | 
    
         
            +
                file = nil
         
     | 
| 
      
 111 
     | 
    
         
            +
             
     | 
| 
      
 112 
     | 
    
         
            +
                begin
         
     | 
| 
      
 113 
     | 
    
         
            +
                  file = File.open(@metadata_file)
         
     | 
| 
      
 114 
     | 
    
         
            +
                  file.each_line do
         
     | 
| 
      
 115 
     | 
    
         
            +
                    |line|
         
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
      
 117 
     | 
    
         
            +
                    line.strip!()
         
     | 
| 
      
 118 
     | 
    
         
            +
                    if line =~ /^(.+)=(.+)\/(.+)$/
         
     | 
| 
      
 119 
     | 
    
         
            +
                      target          = $1
         
     | 
| 
      
 120 
     | 
    
         
            +
                      package_name    = $2
         
     | 
| 
      
 121 
     | 
    
         
            +
                      package_version = $3
         
     | 
| 
      
 122 
     | 
    
         
            +
             
     | 
| 
      
 123 
     | 
    
         
            +
                      package_meta = @package_metadata_by_name[package_name]
         
     | 
| 
      
 124 
     | 
    
         
            +
                      if package_meta
         
     | 
| 
      
 125 
     | 
    
         
            +
                        if package_meta.current_version != package_version
         
     | 
| 
      
 126 
     | 
    
         
            +
                          raise "Version mismatch for #{package_meta.package_name} in #{@metadata_file}."
         
     | 
| 
      
 127 
     | 
    
         
            +
                        end
         
     | 
| 
      
 128 
     | 
    
         
            +
                      else
         
     | 
| 
      
 129 
     | 
    
         
            +
                        package_meta =
         
     | 
| 
      
 130 
     | 
    
         
            +
                          reset_package_metadata_with_version(package_name, package_version)
         
     | 
| 
       121 
131 
     | 
    
         
             
                      end
         
     | 
| 
      
 132 
     | 
    
         
            +
                      package_meta.add_file(target)
         
     | 
| 
       122 
133 
     | 
    
         
             
                    else
         
     | 
| 
       123 
     | 
    
         
            -
                       
     | 
| 
       124 
     | 
    
         
            -
                        reset_package_metadata_with_version(package_name, package_version)
         
     | 
| 
      
 134 
     | 
    
         
            +
                      raise "parse error in #{@metadata_file}:#{file.lineno}: #{line}"
         
     | 
| 
       125 
135 
     | 
    
         
             
                    end
         
     | 
| 
       126 
     | 
    
         
            -
             
     | 
| 
       127 
     | 
    
         
            -
             
     | 
| 
       128 
     | 
    
         
            -
             
     | 
| 
      
 136 
     | 
    
         
            +
                  end
         
     | 
| 
      
 137 
     | 
    
         
            +
                ensure
         
     | 
| 
      
 138 
     | 
    
         
            +
                  if not file.nil?
         
     | 
| 
      
 139 
     | 
    
         
            +
                    file.close
         
     | 
| 
       129 
140 
     | 
    
         
             
                  end
         
     | 
| 
       130 
141 
     | 
    
         
             
                end
         
     | 
| 
       131 
142 
     | 
    
         | 
| 
         @@ -210,6 +221,10 @@ class Fig::WorkingDirectoryMaintainer 
     | 
|
| 
       210 
221 
     | 
    
         
             
                  # preserve.
         
     | 
| 
       211 
222 
     | 
    
         
             
                  preserve = File.exist?(source) && ! File.symlink?(source)
         
     | 
| 
       212 
223 
     | 
    
         | 
| 
      
 224 
     | 
    
         
            +
                  if File.exist?(target)
         
     | 
| 
      
 225 
     | 
    
         
            +
                    Fig::Logging.info("Overwriting #{target}.")
         
     | 
| 
      
 226 
     | 
    
         
            +
                  end
         
     | 
| 
      
 227 
     | 
    
         
            +
             
     | 
| 
       213 
228 
     | 
    
         
             
                  FileUtils.copy_entry(
         
     | 
| 
       214 
229 
     | 
    
         
             
                    source, target, preserve, false, :remove_destination
         
     | 
| 
       215 
230 
     | 
    
         
             
                  )
         
     | 
| 
         @@ -229,7 +244,9 @@ class Fig::WorkingDirectoryMaintainer 
     | 
|
| 
       229 
244 
     | 
    
         
             
                    return false
         
     | 
| 
       230 
245 
     | 
    
         
             
                  end
         
     | 
| 
       231 
246 
     | 
    
         | 
| 
      
 247 
     | 
    
         
            +
                  Fig::Logging.info("Removing symbolic link #{target}.")
         
     | 
| 
       232 
248 
     | 
    
         
             
                  FileUtils.rm(target)
         
     | 
| 
      
 249 
     | 
    
         
            +
             
     | 
| 
       233 
250 
     | 
    
         
             
                  return true
         
     | 
| 
       234 
251 
     | 
    
         
             
                end
         
     | 
| 
       235 
252 
     | 
    
         | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: fig
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.27. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.27.3
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Matthew Foemmel
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2018-05-16 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: colorize
         
     | 
| 
         @@ -390,7 +390,7 @@ files: 
     | 
|
| 
       390 
390 
     | 
    
         
             
            - lib/fig/user_input_error.rb
         
     | 
| 
       391 
391 
     | 
    
         
             
            - lib/fig/working_directory_maintainer.rb
         
     | 
| 
       392 
392 
     | 
    
         
             
            - lib/fig/working_directory_metadata.rb
         
     | 
| 
       393 
     | 
    
         
            -
            homepage: http://github.com/ 
     | 
| 
      
 393 
     | 
    
         
            +
            homepage: http://github.com/fig-package-manager/fig
         
     | 
| 
       394 
394 
     | 
    
         
             
            licenses:
         
     | 
| 
       395 
395 
     | 
    
         
             
            - BSD
         
     | 
| 
       396 
396 
     | 
    
         
             
            metadata: {}
         
     | 
| 
         @@ -410,7 +410,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       410 
410 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       411 
411 
     | 
    
         
             
            requirements: []
         
     | 
| 
       412 
412 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       413 
     | 
    
         
            -
            rubygems_version: 2. 
     | 
| 
      
 413 
     | 
    
         
            +
            rubygems_version: 2.5.1
         
     | 
| 
       414 
414 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       415 
415 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       416 
416 
     | 
    
         
             
            summary: Fig is a utility for configuring environments and managing dependencies across
         
     |