summaryrefslogtreecommitdiffstats
path: root/src/RELEASE.txt
blob: 733a2efcdc28ce7e340dc073f3e542743218bd14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
# Copyright (c) 2001, 2002 Steven Knight
# __FILE__ __REVISION__ __DATE__ __DEVELOPER__


                 SCons - a software construction tool

                            Release Notes


This is an alpha release of SCons, a tool for building software (and
other files).  SCons is implemented in Python, and its "configuration
files" are actually Python scripts, allowing you to use the full power
of a real scripting language to solve build problems.  You do not,
however, need to know Python to use SCons effectively.

So that everyone using SCons can help each other learn how to use it
more effectively, please sign up for the scons-users mailing list at:

    http://lists.sourceforge.net/lists/listinfo/scons-users



RELEASE 0.06 - 

  This is the sixth alpha release of SCons.  Please consult the
  CHANGES.txt file for a list of specific changes since last release.

  Please note the following important changes since the previous
  release:

    - Python functions as Builder actions now take Node objects, not
      strings, as arguments.  The string representation of a Node
      object is the file name, so you should change your function
      actions to use the str() built-in function to fetch the file
      name:

        def build_it(target = None, source = None, env = None):
            print "Building %s from %s" % (str(target), str(source))
	    open(str(target), 'w').write(open(str(source), 'r').read())
            return 0

  Owing to an extensive test suite, the SCons team believes that this
  release is of sufficient quality that you can use it for real work,
  despite the "alpha" label.

  Nevertheless, because this is an alpha release, heed the following
  disclaimers:

    - Do not be surprised if there are bugs.  Please report any bugs
      or other problems that you find to our bug tracker at our
      SourceForge project page:

      http://sourceforge.net/tracker/?func=add&group_id=30337&atid=398971

      We have a reliable bug-fixing methodology already in place and
      have been responding to problems relatively quickly.

    - It is possible that interfaces will change in future releases.  We
      will strive to hold this to a minimum, but you may need to modify
      your SConscript files in the future if there is a compelling reason
      to change an interface.

    - Documentation is spottier than we'd like.  You may need to dive
      into the source code to figure out how to do something.  We will
      be addressing this in upcoming releases, but would be more than
      glad to have your assistance in correcting this problem... :-)

      In particular, the "SCons Design" documentation on the SCons web
      site is currently out of date, as we made significant changes to
      portions of the interface as we figured out what worked and what
      didn't during implementation.L

    - There may be performance issues.  This release has still more
      performance improvements.  If you still find the performance
      unacceptable, we would very much like to hear from you and learn
      more about your configuration so we can optimize the right things.

    - Error messages don't always exist where they'd be helpful.
      Please let us know about any errors you ran into that would
      have benefitted from a (more) descriptive message.

  KNOWN PROBLEMS IN THIS RELEASE:

    - Support for parallel builds (-j) does not work on WIN32 systems
      prior to *official* Python release 2.2 (not 2.2 pre-releases).

      Prior to Python 2.2, there is a bug in Python's Win32
      implementation such that when a thread spawns an external command,
      it blocks all threads from running.  This breaks the SCons
      multithreading architecture used to support -j builds.

      We have included a patch file, os_spawnv_fix.diff, that you can
      use if you you want to fix your version of Python to support
      parallel builds in SCons.

    - Even on officialy Python release 2.2., values greater than 1 for
      the -j option on Windows seemingly hang SCons.  This problem is
      being investigated and is expected to be fixed for next release.

    - Extremely long command lines (thousands of characters) can
      reportedly crash Python.  This problem is being investigated
      and is expected to be fixed for next release.

    - Again, the "SCons Design" documentation on the SCons web
      site is currently out of date.  Take what you read there with a
      grain of salt.

    - There is a hard-coding that prevents using file timestamps instead
      of MD5 signatures to determine if a file is up-to-date.  (There
      also isn't yet a mechanism to configure that.)

    - No support yet for the following future features:

        - Repository search paths (-Y)

	- Configurable signature calculation

	- No support for caching built files.

	- No support yet for the following command-line options:

             -d -e -l --list-actions --list-derived --list-where
             -o -p -r -R --random -w --write-filenames -W
             --warn-undefined-variables

  Thank you for your interest, and please let us know how we can help
  improve SCons for your needs.