Skip to content
Newer
Older
100644 111 lines (78 sloc) 3.6 KB
85fdec8 @djspiewak Added tag-line
authored
1 ==================================
2 Anti-XML: The Non-Violent Solution
3 ==================================
4
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
5 **Documentation and usage can be found at http://anti-xml.org**
e1b136d @djspiewak Added stub readme
authored
6
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
7 Anti-XML is a proposed replacement for the ``scala.xml`` package in
8 the Scala standard library. The standard package is outdated and
9 beyond fixing. We need to start over, on solid foundations and
10 unburdened by backward compatibility. Anti-XML aims for quality in
11 three major areas:
41feefc @djspiewak Elaborated on some of the many issues with scala.xml
authored
12
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
13 * **Usability**
41feefc @djspiewak Elaborated on some of the many issues with scala.xml
authored
14
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
15 * Leverage powerful ideas like combinators and proper ADTs_
16 * Leverage the 2.8 collections library
17 * Provide consistent selector behavior
18 * Avoid these missteps: ``Node <: NodeSeq <: Seq[Node]``,
19 ``MetaData``, ``Atom[String]``
41feefc @djspiewak Elaborated on some of the many issues with scala.xml
authored
20
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
21 * **Reliability**
4c572be @djspiewak Fleshed out most of the README
authored
22
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
23 * Use immutable data structures (in the API and under the hood too)
24 * Avoid bugs and race conditions
25 * Provide a proper ``equals``
26
27 * **Performance**
4c572be @djspiewak Fleshed out most of the README
authored
28
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
29 * Lower memory usage (`Novell Vibe`_ once had a 16 MB chunk of XML
30 use 250 MB of heap!)
31 * Provide efficient selectors
4c572be @djspiewak Fleshed out most of the README
authored
32
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
33 We are exploring `many ideas`_ for this project. It will be
34 interesting to see where things go!
4c572be @djspiewak Fleshed out most of the README
authored
35
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
36 .. _ADTs: http://en.wikipedia.org/wiki/Algebraic_data_type
37 .. _many ideas: http://dl.dropbox.com/u/1679797/anti-xml-todo.html
38 .. _Novell Vibe: http://vibe.novell.com
41feefc @djspiewak Elaborated on some of the many issues with scala.xml
authored
39
40
4c572be @djspiewak Fleshed out most of the README
authored
41 Usage
42 =====
43
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
44 The Maven artifact descriptor for the latest *stable* version of
d621fe4 @djspiewak Updated README for v0.3 build (whoops!)
authored
45 Anti-XML is as follows: ``com.codecommit:anti-xml_2.9.1:0.3``. We also regularly
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
46 push ``-SNAPSHOT`` releases to the Scala-Tools_ "snapshots" repository, for all
47 five of you who like to live dangerously. You should be able to use this
48 descriptor to easily add Anti-XML as a dependency to any project with a
49 Maven-compatible build system (Maven, Buildr, SBT, Gradle, Ivy, etc). The stable
50 artifacts themselves are hosted in the Scala-Tools_ "releases" repository. For
51 reference, here are a few copy/paste snippets you can use for some of the common
52 build systems.
53
54 **SBT**::
55
d621fe4 @djspiewak Updated README for v0.3 build (whoops!)
authored
56 val antiXML = "com.codecommit" %% "anti-xml" % "0.3"
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
57
58 **Buildr**::
59
d621fe4 @djspiewak Updated README for v0.3 build (whoops!)
authored
60 compile.with "com.codecommit:anti-xml_#{Scala.version}:jar:0.3"
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
61
62 **Maven2**::
63
64 <dependency>
65 <groupId>com.codecommit</groupId>
d621fe4 @djspiewak Updated README for v0.3 build (whoops!)
authored
66 <artifactId>anti-xml_2.9.1</artifactId>
67 <version>0.3</version>
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
68 </dependency>
406690c @djspiewak Updated scaladoc link and made it more visible
authored
69
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
70
aa768ac @djspiewak Noted the new cross-building in the README
authored
71 Supported Versions of Scala
72 ---------------------------
73
74 Anti-XML is cross-built_ for the following Scala versions:
75
26b5121 @djspiewak Forgot to update cross-build stuff in README
authored
76 * **2.9.1**
84b6e69 @djspiewak Cut compatibility with Scala 2.8.x; added cross-build for 2.9.1.RC2
authored
77 * **2.9.0-1**
2e196e7 @djspiewak Updated project cross-build to 2.9.0.final; eliminated support for 2.…
authored
78 * **2.9.0**
84b6e69 @djspiewak Cut compatibility with Scala 2.8.x; added cross-build for 2.9.1.RC2
authored
79
80 Support for the 2.8.x stream is being dropped in version 0.3. It is believed
81 that 2.9.x has had sufficient time to mature and there is very little reason to
82 continue to work with 2.8.1. However, if there is demand for a 2.8.1 (or 2.8.0)
83 compatible release, open an issue and I will manually build a JAR for the appropriate
84 version.
aa768ac @djspiewak Noted the new cross-building in the README
authored
85
86 .. _cross-built: http://code.google.com/p/simple-build-tool/wiki/CrossBuild
87 .. _Specs2: http://etorreborre.github.com/specs2/
88 .. _ScalaCheck: http://code.google.com/p/scalacheck/
bc495c6 @djspiewak Added usage notes regarding the 0.1 release
authored
89
4c572be @djspiewak Fleshed out most of the README
authored
90
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
91 Documentation
4c572be @djspiewak Fleshed out most of the README
authored
92 =============
93
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
94 Usage information, examples, performance results and more can be found on the
95 Anti-XML website: http://anti-xml.org
96
4c572be @djspiewak Fleshed out most of the README
authored
97
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
98 Contributing
99 ============
2262aae @djspiewak Added contributor information and implicit agreement details
authored
100
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
101 Contributions are most welcome! Fork, hack, request pull, rinse and repeat. If
102 you're looking for things to work on, I would check the `issue tracker`_ or the
103 `official TODO list`_. However, before you get started, be sure to read the
104 information in CONTRIBUTING.rst_. It offers some basic code guidelines (don't
105 worry, curly braces aren't a religious issue here) and explains the legal
106 mumbo-jumbo involved in contributing.
4c572be @djspiewak Fleshed out most of the README
authored
107
17d165c @djspiewak Eliminated duplicated content from the README (all of which is now of…
authored
108 .. _issue tracker:
109 .. _official TODO list: http://dl.dropbox.com/u/1679797/anti-xml-todo.html
c6d1f5b @djspiewak Corrected CONTRIBUTING.rst link (for real this time)
authored
110 .. _CONTRIBUTING.rst: anti-xml/tree/master/CONTRIBUTING.rst
Something went wrong with that request. Please try again.