Re: [asdf-devel] component-property

2013-02-02 Thread Anton Vodonosov
02.02.2013, 05:29, Faré fah...@gmail.com:
 On Fri, Feb 1, 2013 at 8:19 PM, Anton Vodonosov avodono...@yandex.ru wrote:

  01.02.2013, 23:23, Faré fah...@gmail.com:
  After discussion with people on #lisp and via private chat, I decided
  to use a shorter name. Here is what was released in 2.27:

 :long-name Another System Definition Facility
 :homepage http://common-lisp.net/projects/asdf/;
 :bug-tracker https://launchpad.net/asdf/;
 :mailto asdf-devel@common-lisp.net
 :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)
  Another useful slot would be :purpose, it could specify what the library is:
  web server, db client, image processing library, data-structures library, 
 etc.

  The values in this slots are tags from some specified taxonomy. To avoid 
 creating the taxonomy
  from scratch we could start for example with the tag tree from cl-user.net.

  In in the future we could want to improve the taxonomy. If the new improved 
 taxonomy
  is incompatible with the old one, we can  then introduce new slot, 
 :purpose2,
  specifying that it can hold values from new taxonomy.

  I think this is an idea for future, it's probably too big to be in the 
 scope of ASDF3
 s

 Why not. And if some people end up actually using component-property
 for such useful purpose, or otherwise make successful use of it, I am
 willing to reconsider the deprecation of component-property, and/or my
 successor will.

Maybe it's clear already, but I am not arguing for/against component-property.
Just share this idea because it is now being discussed what metadata attributes 
are useful.

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-02-01 Thread Faré
After discussion with people on #lisp and via private chat, I decided
to use a shorter name. Here is what was released in 2.27:

   :long-name Another System Definition Facility
   :homepage http://common-lisp.net/projects/asdf/;
   :bug-tracker https://launchpad.net/asdf/;
   :mailto asdf-devel@common-lisp.net
   :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
Hopefully, they ban not just gay marriage, but straight marriage too,
and at last we have separation of state and marriage.

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-02-01 Thread Raymond Toy
 Fare == Far  Far writes:

Fare After discussion with people on #lisp and via private chat, I decided
Fare to use a shorter name. Here is what was released in 2.27:

Fare :long-name Another System Definition Facility
Fare :homepage http://common-lisp.net/projects/asdf/;
Fare :bug-tracker https://launchpad.net/asdf/;
Fare :mailto asdf-devel@common-lisp.net
Fare :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

Are the valid key values for :source-control specified?  I guess
they're all pretty obvious like :git, :cvs, :darcs, etc.  But
mercurial is a bit odd.  Is it :mercurial or :hg?

Or maybe it doesn't really matter?

Ray



___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel


Re: [asdf-devel] component-property

2013-02-01 Thread Pascal J. Bourguignon
Raymond Toy toy.raym...@gmail.com
writes:

 Fare == Far  Far writes:

 Fare After discussion with people on #lisp and via private chat, I 
 decided
 Fare to use a shorter name. Here is what was released in 2.27:

 Fare :long-name Another System Definition Facility
 Fare :homepage http://common-lisp.net/projects/asdf/;
 Fare :bug-tracker https://launchpad.net/asdf/;
 Fare :mailto asdf-devel@common-lisp.net
 Fare :source-control (:git 
 git://common-lisp.net/projects/asdf/asdf.git)

 Are the valid key values for :source-control specified?  I guess
 they're all pretty obvious like :git, :cvs, :darcs, etc.  But
 mercurial is a bit odd.  Is it :mercurial or :hg?

:svn or :subversion ?

Are :sccs and :rcs supported?


-- 
__Pascal Bourguignon__ http://www.informatimago.com/
A bad day in () is better than a good day in {}.


___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel


Re: [asdf-devel] component-property

2013-02-01 Thread Anton Vodonosov
01.02.2013, 23:23, Faré fah...@gmail.com:
 After discussion with people on #lisp and via private chat, I decided
 to use a shorter name. Here is what was released in 2.27:

    :long-name Another System Definition Facility
    :homepage http://common-lisp.net/projects/asdf/;
    :bug-tracker https://launchpad.net/asdf/;
    :mailto asdf-devel@common-lisp.net
    :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

Another useful slot would be :purpose, it could specify what the library is:
web server, db client, image processing library, data-structures library, etc.

The values in this slots are tags from some specified taxonomy. To avoid 
creating the taxonomy
from scratch we could start for example with the tag tree from cl-user.net.

In in the future we could want to improve the taxonomy. If the new improved 
taxonomy
is incompatible with the old one, we can  then introduce new slot, :purpose2,
specifying that it can hold values from new taxonomy.

I think this is an idea for future, it's probably too big to be in the scope of 
ASDF3

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-02-01 Thread Faré
On Fri, Feb 1, 2013 at 8:19 PM, Anton Vodonosov avodono...@yandex.ru wrote:
 01.02.2013, 23:23, Faré fah...@gmail.com:
 After discussion with people on #lisp and via private chat, I decided
 to use a shorter name. Here is what was released in 2.27:

:long-name Another System Definition Facility
:homepage http://common-lisp.net/projects/asdf/;
:bug-tracker https://launchpad.net/asdf/;
:mailto asdf-devel@common-lisp.net
:source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

 Another useful slot would be :purpose, it could specify what the library is:
 web server, db client, image processing library, data-structures library, etc.

 The values in this slots are tags from some specified taxonomy. To avoid 
 creating the taxonomy
 from scratch we could start for example with the tag tree from cl-user.net.

 In in the future we could want to improve the taxonomy. If the new improved 
 taxonomy
 is incompatible with the old one, we can  then introduce new slot, :purpose2,
 specifying that it can hold values from new taxonomy.

 I think this is an idea for future, it's probably too big to be in the scope 
 of ASDF3
s
Why not. And if some people end up actually using component-property
for such useful purpose, or otherwise make successful use of it, I am
willing to reconsider the deprecation of component-property, and/or my
successor will.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
No matter what language you use, a Sufficiently Smart Compiler(TM) will be
able to find an efficient implementation for whatever apparently difficult
problem you specify. However, a Sufficiently Smart Compiler(TM) for
arbitrary problems is itself an AI-complete problem.

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-02-01 Thread Daniel Herring
FWIW, here's the list of properties in LibCL before it died.  An 
incomplete readme is attached.  A few fields were specific to LIBCL (most 
belong in ASDF properties); I was bootstrapping this on the side out of 
necessity.  Hasn't a similar effort been started in Quicklisp?


(:name 
 :website 
 ;:license :bsl
 :short-desc 
 :maintainer ()
 :docpath 
 :tags ()
 :todo nil
 :provides ()
 :load-unless nil
 :version 
 :date 
 :source ())


Here's an example of what I wrote for Hunchentoot.

(:name Hunchentoot
 :website http://weitz.de/hunchentoot/;
 :license :bsd
 :short-desc web server
 :maintainer (http://common-lisp.net/mailman/listinfo/tbnl-devel;
  http://weitz.de/patches.html;)
 :docpath 
 :tags (:web)
 :todo nil
 :provides ()
 :load-unless nil
 :version 
 :date 2010-08-29
 :source (:svn svn://bknr.net/svn/trunk/thirdparty/hunchentoot 4603))


- Daniel*** :maintainer (...)

A list of name place (where place is an email or irc or forum url or 
whatever)
Contact info for maintenance issues.

*** :docpath relative-path

*** :tags (...)

Each package may also be marked by a list of tag keywords.  Users can specify 
these when selecting what to install.  Here are the initial tags.

:core - a core LibCL package
:doc - a documentation tool
:graphics - image loading, saving, and manipulation
:util - simple utility functions (i.e. general-purpose tools)
:ffi - this package relies on ffi (non-lisp) bindings
:reader - tools for modifying the lisp reader
:test - testing frameworks
...

*** :todo notes

Things that should probably happen before the release.


*** :version version

Indicate the version number if this was a tagged release.
Sometimes a simple bugfix appears after a tagged release.
Need a suffix to mark when these minor changes are being used.

*** :date YYY-MM-DD

Indicate the date of the release or snapshot.

*** :source (...)

The darcs hash may rely on darcs2.  It can be obtained by a variant of the 
following incantation.
# darcs changes --last 1 --xml-output | grep hash= | sed -e 
s/.*hash='\(.*\)'.*/\1/

Many of Edi's libraries can be found by running
# svn propget -R svn:externals svn://bknr.net/svn/ediware

Known source types
(:cvs url module revision-specifier) ; cvs revs are often specified as -D 
2010-12-34 to get all the commits on 2010-12-33...
(:darcs url hash)
(:git url sha1-hash)
(:svn url revision)
(:wget url filename) ; so #mv filename $canonicalname # or need more?

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Zach Beane
Faré fah...@gmail.com writes:

 On the one hand, I am deprecating component-property in ASDF3,

Why? What will be the new mechanism for what component-property
provides?

Zach

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Zach Beane
Faré fah...@gmail.com writes:

 On the one hand, I am deprecating component-property in ASDF3,

 Why? What will be the new mechanism for what component-property
 provides?

 I propose that any data that component-property is actually used for
 should be in appropriate slots of the system.

This will introduce a new round of synchronization headaches whenever a
new slot is added. The existing mechanism is forward and backward
compatible indefinitely.

Zach

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Cyrus Harmon

I'm still curious as to _why_ component property is going away, not (just) how 
you think folks should work around its absence.

thanks,

Cyrus

On Jan 31, 2013, at 9:10 AM, Faré fah...@gmail.com wrote:

 On the one hand, I am deprecating component-property in ASDF3,
 
 Why? What will be the new mechanism for what component-property
 provides?
 
 I propose that any data that component-property is actually used for
 should be in appropriate slots of the system.
 I will gather a list from things in quicklisp.
 
 As for extensibility, there is already defclass for that.
 Or comments, when the meta-data isn't for machine consumption.
 
 This will not happen for ASDF 2.27, but hopefully for 3.0.
 Even after it happens, a compatibility layer will be provided for old code;
 but its use for new code will be strongly discouraged,
 e.g. by droppng the data that doesn't fit the backward-compatibility schema,
 and/or issuing an error if the system is not whitelisted.
 
 —♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
 Economics is not about goods and services; it is about human choice and 
 action.
— Ludwig von Mises
 
 ___
 asdf-devel mailing list
 asdf-devel@common-lisp.net
 http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel


___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
 On the one hand, I am deprecating component-property in ASDF3,

 Why? What will be the new mechanism for what component-property
 provides?

 I propose that any data that component-property is actually used for
 should be in appropriate slots of the system.

 This will introduce a new round of synchronization headaches whenever a
 new slot is added. The existing mechanism is forward and backward
 compatible indefinitely.

Synchronization is NOT necessary to add new slots.
If you want a new slot, just create a new class with that slot,
and use both :defsystem-depends-on and :class in your defsystem form.
This usage pattern wouldn't work on ASDF 1 or early ASDF 2, but
it works quite well since ASDF 2.016 from June 2011 and later.
Then, a year after your slot gets merged into asdf:system,
you can stop using your defsystem-depends-on.

The properties mechanism is already totally and irremediably useless.
Automation across systems is impossible unless everyone agrees on a schema,
or you somehow merge the zillions of possible ad-hoc schemas; but
properties actually make synchronization *harder* than lack thereof,
by making it cheaper to diverge and more expensive to converge.
Properties without a synchronized schema are useless within a single system,
where it is easier, safer and more powerful to just directly store data
in a Lisp variable rather than in the properties.

In other words, properties not only do not serve the purpose
they look like they are addressing, but cannot possibly serve any purpose.
They are a lure and a waste of everyone's time — an attractive nuisance.

I propose they be replaced by the real thing, i.e. agreeing on a schema.
Before we do, we would be well inspired to look at similar metadata schemas
from Debian, RPM, Hackage, PLaneT, etc.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
Failure is the opportunity to begin again, more intelligently.
— Henry Ford, who had two flops before founding Ford Motor Co.

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Zach Beane
Faré fah...@gmail.com writes:

 On the one hand, I am deprecating component-property in ASDF3,

 Why? What will be the new mechanism for what component-property
 provides?

 I propose that any data that component-property is actually used for
 should be in appropriate slots of the system.

 This will introduce a new round of synchronization headaches whenever a
 new slot is added. The existing mechanism is forward and backward
 compatible indefinitely.

 Synchronization is NOT necessary to add new slots.
 If you want a new slot, just create a new class with that slot,
 and use both :defsystem-depends-on and :class in your defsystem form.
 This usage pattern wouldn't work on ASDF 1 or early ASDF 2, but
 it works quite well since ASDF 2.016 from June 2011 and later.
 Then, a year after your slot gets merged into asdf:system,
 you can stop using your defsystem-depends-on.

Feel free to adopt this technique for your proposed website slot, so it
does not cause compatibility problems. Please do not remove other
techniques.

 The properties mechanism is already totally and irremediably useless.
 Automation across systems is impossible unless everyone agrees on a schema,
 or you somehow merge the zillions of possible ad-hoc schemas; but
 properties actually make synchronization *harder* than lack thereof,
 by making it cheaper to diverge and more expensive to converge.
 Properties without a synchronized schema are useless within a single system,
 where it is easier, safer and more powerful to just directly store data
 in a Lisp variable rather than in the properties.

 In other words, properties not only do not serve the purpose
 they look like they are addressing, but cannot possibly serve any purpose.
 They are a lure and a waste of everyone's time — an attractive nuisance.

I think it would be pretty easy to get everyone to agree on a schema for
properties, and it would be useful to do so.

Zach

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
 Synchronization is NOT necessary to add new slots.
 If you want a new slot, just create a new class with that slot,
 and use both :defsystem-depends-on and :class in your defsystem form.
 This usage pattern wouldn't work on ASDF 1 or early ASDF 2, but
 it works quite well since ASDF 2.016 from June 2011 and later.
 Then, a year after your slot gets merged into asdf:system,
 you can stop using your defsystem-depends-on.

 Feel free to adopt this technique for your proposed website slot, so it
 does not cause compatibility problems. Please do not remove other
 techniques.

There is no compatibility problem whatsoever with adding optional slots.

And I *will* severely cripple the properties slot, then remove it eventually,
but not until after everyone has moved away from it for a year or two.


 The properties mechanism is already totally and irremediably useless.
 Automation across systems is impossible unless everyone agrees on a schema,
 or you somehow merge the zillions of possible ad-hoc schemas; but
 properties actually make synchronization *harder* than lack thereof,
 by making it cheaper to diverge and more expensive to converge.
 Properties without a synchronized schema are useless within a single system,
 where it is easier, safer and more powerful to just directly store data
 in a Lisp variable rather than in the properties.

 In other words, properties not only do not serve the purpose
 they look like they are addressing, but cannot possibly serve any purpose.
 They are a lure and a waste of everyone's time — an attractive nuisance.

 I think it would be pretty easy to get everyone to agree on a schema for
 properties, and it would be useful to do so.

For the same price, we can agree on a schema, add it to defclass system,
and get rid of the attractive nuisance that is component-properties.

Silently incompatible is not the same as compatible.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
War does not determine who is right — only who is left. —  Bertrand Russell

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Zach Beane
Faré fah...@gmail.com writes:

 Feel free to adopt this technique for your proposed website slot, so it
 does not cause compatibility problems. Please do not remove other
 techniques.

 There is no compatibility problem whatsoever with adding optional slots.

I just tried, and got this:

Error while trying to load definition for system wwwoops from
pathname /home/xach/src/lisp/wwwoops/wwwoops.asd:
   Invalid initialization argument:
 :WEBSITE
   in call for class #STANDARD-CLASS ASDF:SYSTEM.
   [Condition of type ASDF:LOAD-SYSTEM-DEFINITION-ERROR]

There *is* a compatibility problem.

Zach

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
 Feel free to adopt this technique for your proposed website slot, so it
 does not cause compatibility problems. Please do not remove other
 techniques.

 There is no compatibility problem whatsoever with adding optional slots.

 I just tried, and got this:

 Error while trying to load definition for system wwwoops from
 pathname /home/xach/src/lisp/wwwoops/wwwoops.asd:
Invalid initialization argument:
  :WEBSITE
in call for class #STANDARD-CLASS ASDF:SYSTEM.
[Condition of type ASDF:LOAD-SYSTEM-DEFINITION-ERROR]

 There *is* a compatibility problem.

I haven't added the slots yet, so of course it won't work.
As for disabling properties on old versions of ASDF that don't
actually support them,
that's what #+asdf3 is for, just like #+asdf2 before it.
Hopefully, two years from now we can assume everyone has moved from
ASDF2 to ASDF3,
just like today we can safely assume no one uses ASDF1 anymore.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
Oignez villain, il vous poindra ; poignez villain, il vous oindra.
— Rabelais

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Zach Beane
Faré fah...@gmail.com writes:

 I haven't added the slots yet, so of course it won't work.
 As for disabling properties on old versions of ASDF that don't
 actually support them,
 that's what #+asdf3 is for, just like #+asdf2 before it.

 When it is time to add support for a bug-tracker-url slot, will there be
 a feature for that? Or will that be done via subclassing?

 Now is a good time to request such features, before ASDF 3 is actually 
 released.
 After it is released, and until another major release follows,
 subclassing will be the recommended way.

I request a slot called properties that can hold arbitrary key/value
data.

Zach

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
I did an analysis of how system properties are used in Quicklisp systems,
and this suggests that the following initargs be added:
:website-url === widely requested. the URL suffix makes it less ambiguous.
:bug-tracker-url === Zach's request that makes a *whole* lot of sense
:development-email === More actionable name than :author-email.
   Or maybe just use mailto: URL in bug-tracker-url?
:long-name === we have :long-description already, so why not?

I believe some kind of :source-control slot might be useful,
though between SVN, GIT, Mercurial, etc., there is no common URL pattern,
so we'd have to specify some structure.
Either a list of `(,vcs-keyword ,@url+options)
or a command to checkout / clone the repository to be parsed,
or something.

Here are the uses of component properties in Quicklisp systems:

asd's that directly use asdf:component-property:
*** yaclml
= :features === property for version comparison. See arnesi below.
*** amazon-ecs
= :website === Yes, need to be added to ASDF 3.
*** hemlock.asd
= :last-loaded-as-source === bad implementation of latin1 encodings with
 lifted from ASDF 1's bad implementation of load-source-op.
 Let's just use asdf-encodings for that, and/or use UTF-8, furgossake.

asd's that use :properties in defsystem:
*** arnesi, arnesi+
= :features
 === misguided property used for version comparison and pseudo #+features
 version comparison should use :version.
 The pseudo-features should probably be replaced by either
 having separate systems or actual features, depending on their use pattern.
 If actually useful, create a subclass with a :component-features initarg.
*** lkcas, thopter
= :long-name === used by the Makefile through component-property.
  I could add that to defclass system, or he could use a subclass.
*** cl-irc cliki-bot rss cl-syslog com.informatimago.clext
   com.informatimago.clisp com.informatimago.clmisc
   com.informatimago.common-lisp.arithmetic
   om.informatimago.common-lisp.bank
   com.informatimago.common-lisp.cesarum
   com.informatimago.common-lisp com.informatimago.common-lisp.csv
   com.informatimago.common-lisp.cxx
   com.informatimago.common-lisp.data-encoding
   com.informatimago.common-lisp.diagram
   com.informatimago.common-lisp.ed
   com.informatimago.common-lisp.graphviz
   com.informatimago.common-lisp.heap
   com.informatimago.common-lisp.html-base
   com.informatimago.common-lisp.html-generator
   com.informatimago.common-lisp.html-parser
   com.informatimago.common-lisp.http
   com.informatimago.common-lisp.interactive
   com.informatimago.common-lisp.invoice
   com.informatimago.common-lisp.lisp
   com.informatimago.common-lisp.lisp.ibcl
   com.informatimago.common-lisp.lisp.stepper
   com.informatimago.common-lisp.lisp-reader
   com.informatimago.common-lisp.lisp-sexp
   com.informatimago.common-lisp.lisp-text
   com.informatimago.common-lisp.parser
   com.informatimago.common-lisp.picture
   com.informatimago.common-lisp.regexp
   com.informatimago.common-lisp.rfc2822
   com.informatimago.common-lisp.rfc3548
   com.informatimago.common-lisp.telnet
   com.informatimago.common-lisp.unix
   linc
   com.informatimago.lispdoc
   com.informatimago.lua
   com.informatimago.cocoa-playground
   com.informatimago.objcl
   com.informatimago.rdp
   com.informatimago.rdp.basic
   com.informatimago.rdp.basic.example
   com.informatimago.rdp.example
   com.informatimago.susv3
   com.informatimago.common-lisp.tools.make-depends
   com.informatimago.xcode
   spartns
   xlunit
   = (WTF uninterned symbols, really?)
   #:author-email === somewhat useful piece of data
   #:date === You're never going to get anything but stale information here.
   (#:albert #:output-dirs) === An absolute pathname in a .asd? Braindamage!
   (#:albert #:formats) === should be moved to some albert-system class slots
   (#:albert #:docbook #:template)
   (#:albert #:docbook #:bgcolor)
   (#:albert #:docbook #:textcolor)
   (#:albert #:docbook #:dtd)
*** portableaserve
   = (WTF The same albert thing, just incompatibly?)
   (system author email)
   (albert presentation output-dir)
   (albert presentation formats)
   (albert docbook dtd)
   (albert docbook template)
   !! Albert should probably use its own subclass to put its information
*** com.clearly-useful.generic-collection-interface
   = :com.clearly-useful === whatever you're doing, use a subclass.
*** metatilities
   = :ait-timeout :system-applicable-p === same comment
*** ucw ucw-core
   = it.bese.ucw.system::version === WTF? use :version instead.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
On two occasions I have been asked [by members of Parliament!], `Pray,
Mr.  Babbage, if you put into the machine wrong figures, will the right
answers come out?'  I am not able rightly to apprehend the kind of
confusion of ideas that could provoke such a question.
— Charles Babbage

___
asdf-devel 

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
In 2.26.174, I added the following initargs to system with system-FOO accessors.
I also added an :initform nil to all those optional metadata slots and
previous ones.

  :long-name Another System Definition Facility
  :website-url http://common-lisp.net/projects/asdf/;
  :bug-tracker-url https://launchpad.net/asdf/;
  :developers-email asdf-devel@common-lisp.net
  :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

If there is more automatically-processable metadata for which you'd like
a defined slot in ASDF3, now is the time to speak.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
What a lot of trouble to prove in political economy that two and two make four;
and if you succeed in doing so, people cry, 'It is so clear that it is boring.'
Then they vote as if you had never proved anything at all.
— Frederic Bastiat, What Is Seen and What is Not Seen, 1850

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

[asdf-devel] component-property

2013-01-31 Thread Faré
Dear Red,

as a follow up to my previous email, I eventually added in 2.26.174
the following initargs to defclass system, with system-FOO accessors.

  :long-name Another System Definition Facility
  :website-url http://common-lisp.net/projects/asdf/;
  :bug-tracker-url https://launchpad.net/asdf/;
  :developers-email asdf-devel@common-lisp.net
  :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

The down side is that until ASDF2 is end-of-lifed, you'll have to
#+asdf3 all these things either individually or together
via e.g. (eval `(defsystem ... #+asdf3 ,@'(...) ...),
(defsystem ... . #.(or #+asdf3 '(...)) or some other such ugliness.

The upside is that with this standardization, odds are higher that
this metadata can be used to automate processing of some sort across systems.

If there are more slots that you need, now is a good time to suggest them.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
What a lot of trouble to prove in political economy that two and two make four;
and if you succeed in doing so, people cry, 'It is so clear that it is boring.'
Then they vote as if you had never proved anything at all.
— Frederic Bastiat, What Is Seen and What is Not Seen, 1850

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-31 Thread Faré
(Replying in public to this private email; I hope this is not a faux-pas.)

On Thu, Jan 31, 2013 at 11:23 PM, Daniel Herring dherr...@tentpost.com wrote:
  :long-name Another System Definition Facility
  :website-url http://common-lisp.net/projects/asdf/;
  :bug-tracker-url https://launchpad.net/asdf/;
  :developers-email asdf-devel@common-lisp.net
  :source-control (:git git://common-lisp.net/projects/asdf/asdf.git)

 Slight ribbing:  (:git ...) has the same problem as the original properties
 mechanism; it won't catch errors such as (:get ...)

Indeed. An external tool with a documented specification is required here.
But at least there's a clear intent and the beginning of an actual convention,
and it all makes sense.

 You might have left the properties as-is and just added warnings when an
 unknown property name was used.

Possibly. It's still time to have parse-component-form call a better
validation function
that does such checks, and otherwise have some allow-other-keys mechanism.
See also https://bugs.launchpad.net/asdf/+bug/1007335
Meh. A good project for ASDF4, if anyone is foolish enough to undertake it.

Actually bug https://bugs.launchpad.net/asdf/+bug/953489 reminds me
that one could use #-asdf3 :allow-other-keys #-asdf3 t to say yeah,
there are optional slots here that aren't defined before asdf3.

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
No one has the right to a position;
everyone has the right to positions being well filled.  — Ernest Renan

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Re: [asdf-devel] component-property

2013-01-30 Thread Faré
 Fare On the other hand, now is a good time for me to add new slots to 
 system objects.
 Fare I will add a website slot in 2.26.171, though you'll have to
 Fare #+asdf3 :website #+asdf3 http://xxx; for now.

 Does :website do anything other than record that info?  If not, then
 why not use :url?

I actually pushed 2.26.171 without adding any such slot yet. I'm open
to debate on naming things.

And I reinstantiated the previous properties interface for backward
compatibility, until everyone adopts the new solution (which may take
years).

—♯ƒ • François-René ÐVB Rideau •ReflectionCybernethics• http://fare.tunes.org
The main difference between a computer salesman and a used car salesman is
that the used car salesman can probably drive and knows when he's lying.
- Peter da Silva

___
asdf-devel mailing list
asdf-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel