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
  
128
  
129
  
130
  
131
  
132
  
133
  
134
  
135
  
136
  
137
  
138
  
139
  
140
  
141
  
142
  
143
  
144
  
145
  
146
  
147
  
148
  
149
  
150
  
151
  
152
  
153
  
154
  
155
  
156
  
157
  
158
  
159
  
160
  
161
  
162
  
163
  
164
  
165
  
166
  
167
  
168
  
169
  
170
  
171
  
172
  
173
  
174
  
175
  
176
  
177
  
178
  
179
  
180
  
181
  
182
  
183
  
184
  
185
  
186
  
187
  
188
  
189
  
190
  
Changes since Pike 7.2: 
---------------------------------------------------------------------- 
 
New functionality: 
------------------ 
 
o New Hilfe 
 
o pike -x 
    rsif 
    pv 
 
o unbug 
 
 
New concepts: 
------------- 
 
o Automap 
 
o Implicit lambda. 
 
o global:: 
    Added new keyword global to be able to access identifiers on the 
    top level of the compilation unit using global::foo. (Deactivated 
    in 7.2 compatibility mode, of course.) 
 
    It's now possible to use e.g: global::this_program. 
 
    Added an optional level argument to this_object(). *FIXME: Do we 
    really want this documented?* 
 
o global. 
    All top level modules (and other identifiers in that scope) can now 
    also be accessed with a "global." prefix. This is useful in cases where 
    local identifiers overshadow the top level, for instance in the Image 
    module, where the Image.Image class would occasionally block your view. 
 
o this 
    Added a magic identifier "this" that can be used instead of 
    this_object(). Like this_program, it only exists when there's no 
    other identifier with that name. The object of a surrounding class 
    can be adressed with Foo::this. 
 
o Local 
 
o Iterators  (Mapping.pmod Multiset.pmod) 
 
o for(X; Y; Z) 
 
o enum reserved 
 
o enum and typedef have implicit local binding 
 
o ::_indices ::_values 
 
o access mechanism for named scopes 
    Include the names of the surrounding classes themselves in the lookup for 
    Foo::, to make it possible to adress hidden variables in the scopes of 
    surrounding classes, e.g: 
 
       class X { 
         int i; 
         void create (int i) {X::i = i;} 
       } 
 
    Since this change is mostly but not completely compatible with the earlier 
    lookup rule, it's disabled in 7.2 compatibility mode. 
 
o  
 
Other: 
------ 
 
sp -> Pike_sp 
fp -> Pike_fp 
fatal -> Pike_fatal 
empty_string -> empty_pike_string 
 
--with-internal-profiling 
--with-new-multisets 
 
 
 
New modules / classes / methods added: 
-------------------------------------- 
 
o ADT.History 
    Alfons Åberg. 
 
o ADT.Relation.Binary 
    Handles binary relations. 
 
o Audio.Codec and Audio.Codec 
    Contains decoders and encoders for audio. Currently WAV and MP3. 
    Note: The API remains marked "unstable". 
 
o Calendar.verify 
 
o Debug.Tracer 
 
o Dvb.dvb 
    Digital sattelite handler (linux only). 
 
o Locale.Language 
 
o Parser.Python 
 
o Parser.RCS 
    Extracts data from RCS or CVS repositories. 
 
o XML.NSTree 
 
o HTTP.Server 
 
o Protocols.X.KeySyms 
 
o Standards.CIFF 
 
o Standards.FIPS10_4 
 
o Standards.ID3 
 
o Standards.RDF 
 
o Stdio.FakeFile 
 
o Stdio.GZipFile 
 
o Tools.PV 
    Convenience tool that sets up a canvas with GTK, presents a 
    picture on it and delivers a number of image inspection and 
    manipulation options. 
 
    Also accessable via "pike -x pv" 
 
o Image.Dims 
    Can extract the dimensions of an image withóut loading the entire 
    image. 
 
o Image.Fonts 
    High level API for font handling. Should be used instead of 
    accessing the Freetype, TTF and *FIXME* modules directly. 
 
o Image.DWG 
    AutoCAD thumbnail images. 
 
o Gmp.mpq and Gmp.mpf 
    Multi precision fractions.     
 
Optimizations: 
-------------- 
 
o Improvement and bug tickets closed: 1499 
 
 
Compatibility changes: 
---------------------- 
 
Bugfixes and API-fixes that break compatibility. The old behaviour is 
emulated in the compatibility layer that is activated by adding the 
preprocessor directive "#pike 7.2" to your program or by precifying 
the "-V7.2" argument to the pike executable. 
 
o Protocols.LDAP.client 
    The return code from all methods was changed to follow Pike's 
    logic better. 0 is now a failure. The old behaviour is emulated in 
    compatibility layer 
 
o dirname 
    Now correctly returns a directory instead of just stripping the 
    part after nearest directory seprator. 
 
o LR 
    LR has been moved to Parser.LR and the API has been chnged. 
    FIXME: More about this? 
 
 
Bugs fixed: 
----------- 
 
o Reworked trampolines to cause less circular references. (solves 1937) 
 
 
(to browse bug tickets, either visit 
 http://community.roxen.com/crunch/ - or append the ticket id to 
 "http://bugs.roxen.com/" for a address directly to the ticket itself)