[Swift-devel] Issues to resolve for the 0.96 config mechanism

Mihael Hategan hategan at mcs.anl.gov
Sun Jul 13 13:01:19 CDT 2014


On Sun, 2014-07-13 at 11:01 -0500, Michael Wilde wrote:
> - default property file names have changed: swift.properties vs swift.config

On purpose, to avoid left-overs from being confusing.

> 
> - the search path implemented by 0.95 is (I suspect) not yet carried 
> forward here, and that needs discussion. My inclination is that it 
> should be.
> 
> - the include mechanism is new.   I think its nice and likely is very 
> useful, but I wonder how it will interact with or supplement the 
> property search path.

We discussed this a few days ago. We had repeated issues with magically
loaded files from strange locations that the users took a long time to
find and fix. The solution that I saw in 0.95 was even more search
locations, which I think was not right.

So the philosophy in trunk is "either it stares at you or it isn't
there". And includes do this in a way that doesn't sacrifice
convenience.

> Did that come from the underlying config classes used, or was that done 
> from scratch? We should also consider hos this works with respect to the 
> use of cpp in stc, if we see ourselves heading to the use of stc as a 
> universal front end for the Swift toolchain.
> 
> - as we discussed before, but never resolved - we should decide if the 
> documented/encouraged format will have colon separators and quoted 
> string values.

You need to quote values that have special characters, such as "-" or
spaces, etc. Having to think about whether a particular string or not
does contain "special characters" to see if you are going to write
quotes or not is an effort that I do not think we should push the users
into. But it's a choice.

>  I prefer the visually simpler format without either, and 
> I think 0.95 also allows an optional "=" separator as in standard 
> properties files. ( http://en.wikipedia.org/wiki/.properties is a nice 
> summary, and says " Several formats are possible for each line, 
> including key=value, key = value, key:value, and key value.")

Give it some time :)
You might like it. I know it's not exactly the 0.95 config. It's not a
perfect world.

> 
> I think we can work all these issues out as we go.  I'm eager to test 
> trunk in its current state before we address any of the issues above. 
> Lets concentrate first on manual testing and on getting the property 
> names stabilized and the more important semantic changes.

Right.

> 
> Also, we need to work out issues in application location specifications 
> that were started but not yet fully developed in the 0.95 effort.  David 
> and I discussed these, and we need to capture and post the 
> recommendations that were still in progress for this.

Yes, please! I really wished I had seen a discussion on the 0.95 config
before it went into code.

Mihael




More information about the Swift-devel mailing list