author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Thu, 05 Jun 2014 10:23:36 +0200 | |
changeset 928 | 17edffeef78a |
parent 884 | ad72b9928675 |
child 950 | 1cd4486774da |
permissions | -rw-r--r-- |
170 | 1 |
"{ Package: 'stx:goodies/monticello' }" |
2 |
||
3 |
LibraryDefinition subclass:#stx_goodies_monticello |
|
767
8054b14c28d5
class: stx_goodies_monticello
Claus Gittinger <cg@exept.de>
parents:
756
diff
changeset
|
4 |
instanceVariableNames:'' |
8054b14c28d5
class: stx_goodies_monticello
Claus Gittinger <cg@exept.de>
parents:
756
diff
changeset
|
5 |
classVariableNames:'' |
8054b14c28d5
class: stx_goodies_monticello
Claus Gittinger <cg@exept.de>
parents:
756
diff
changeset
|
6 |
poolDictionaries:'' |
8054b14c28d5
class: stx_goodies_monticello
Claus Gittinger <cg@exept.de>
parents:
756
diff
changeset
|
7 |
category:'* Projects & Packages *' |
170 | 8 |
! |
9 |
||
10 |
||
11 |
!stx_goodies_monticello class methodsFor:'description'! |
|
12 |
||
13 |
excludedFromPreRequisites |
|
14 |
"list all packages which should be ignored in the automatic |
|
15 |
preRequisites scan. See #preRequisites for more." |
|
16 |
||
17 |
^ #( |
|
18 |
) |
|
19 |
! |
|
20 |
||
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
21 |
mandatoryPreRequisites |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
22 |
"list all required mandatory packages. |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
23 |
Packages are mandatory, if they contain superclasses of the package's classes |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
24 |
or classes which are extended by this package. |
170 | 25 |
This list can be maintained manually or (better) generated and |
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
26 |
updated by scanning the superclass hierarchies |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
27 |
(the browser has a menu function for that) |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
28 |
However, often too much is found, and you may want to explicitely |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
29 |
exclude individual packages in the #excludedFromPreRequisites method." |
170 | 30 |
|
31 |
^ #( |
|
756 | 32 |
#'stx:libbasic' "String - extended " |
33 |
#'stx:libbasic3' "VersionInfo - extended " |
|
34 |
#'stx:libtool' "Tools::NewSystemBrowser - extended " |
|
35 |
#'stx:libview2' "ApplicationModel - superclass of extended Tools::NewSystemBrowser " |
|
36 |
#'stx:libcompat' |
|
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
37 |
) |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
38 |
! |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
39 |
|
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
40 |
referencedPreRequisites |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
41 |
"list all packages containing classes referenced by the packages's members. |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
42 |
This list can be maintained manually or (better) generated and |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
43 |
updated by looking for global variable accesses |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
44 |
(the browser has a menu function for that) |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
45 |
However, often too much is found, and you may want to explicitely |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
46 |
exclude individual packages in the #excludedFromPreRequisites method." |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
47 |
|
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
48 |
^ #( |
767
8054b14c28d5
class: stx_goodies_monticello
Claus Gittinger <cg@exept.de>
parents:
756
diff
changeset
|
49 |
'stx:goodies/communication' "/ HTTPInterface |
170 | 50 |
) |
51 |
! ! |
|
52 |
||
53 |
!stx_goodies_monticello class methodsFor:'description - contents'! |
|
54 |
||
55 |
classNamesAndAttributes |
|
56 |
"lists the classes which are to be included in the project. |
|
57 |
Each entry in the list may be: a single class-name (symbol), |
|
58 |
or an array-literal consisting of class name and attributes. |
|
59 |
Attributes are: #autoload or #<os> where os is one of win32, unix,..." |
|
60 |
||
61 |
^ #( |
|
756 | 62 |
"<className> or (<className> attributes...) in load order" |
63 |
InMidstOfFileinNotification |
|
64 |
MCAncestry |
|
65 |
MCBrowserList |
|
66 |
MCChangeSelectionRequest |
|
67 |
(MCChangeSelector autoload) |
|
68 |
MCConflict |
|
69 |
MCDefinition |
|
70 |
MCDefinitionIndex |
|
71 |
MCDependencySorter |
|
72 |
(MCDependentsWrapper autoload) |
|
73 |
MCDialog |
|
74 |
MCDirtyPackageInfo |
|
75 |
MCDoItParser |
|
76 |
MCEmptyPackageInfo |
|
77 |
(MCFileRepositoryInspector autoload) |
|
78 |
MCFrontier |
|
79 |
MCInteractiveLoadingQuery |
|
80 |
MCLazyPropertyDictionary |
|
81 |
(MCMergeBrowser autoload) |
|
82 |
MCMergeRecord |
|
83 |
MCMergeResolutionRequest |
|
84 |
MCMerger |
|
85 |
MCMock |
|
86 |
MCMockAPoolDictionary |
|
87 |
MCMockDependency |
|
88 |
MCMockPackageInfo |
|
89 |
MCNoChangesException |
|
90 |
MCPackage |
|
91 |
MCPackageCache |
|
92 |
MCPackageEntry |
|
93 |
MCPackageLoader |
|
94 |
MCPackageManager |
|
95 |
MCPatch |
|
96 |
MCPatchOperation |
|
97 |
MCPatcher |
|
98 |
MCReader |
|
99 |
MCRepository |
|
100 |
MCRepositoryBrowser |
|
101 |
MCRepositoryEntry |
|
102 |
MCRepositoryGroup |
|
103 |
(MCRepositoryInspector autoload) |
|
104 |
(MCSMCacheRepository autoload) |
|
105 |
(MCSaveVersionDialog autoload) |
|
106 |
MCScanner |
|
107 |
MCSettingsApp |
|
108 |
MCSnapshot |
|
109 |
(MCSnapshotBrowser autoload) |
|
110 |
MCSourceCodeManager |
|
111 |
MCStXPackageQuery |
|
112 |
MCTimestampAnnotation |
|
113 |
MCTool |
|
114 |
(MCToolWindowBuilder autoload) |
|
115 |
MCVariableDefinition |
|
116 |
MCVersion |
|
117 |
MCVersionDependency |
|
118 |
MCVersionEntry |
|
119 |
MCVersionLoader |
|
120 |
MCVersionMerger |
|
121 |
MCVersionNameAndMessageRequest |
|
122 |
MCVersionNotification |
|
123 |
MCVersionSorter |
|
124 |
(MCWorkingCopyBrowser autoload) |
|
125 |
(MCWorkingHistoryBrowser autoload) |
|
126 |
MCWriter |
|
127 |
MethodReference |
|
128 |
PackageOrganizer |
|
129 |
#'stx_goodies_monticello' |
|
130 |
MCAddition |
|
131 |
MCClassDefinition |
|
132 |
MCClassInstanceVariableDefinition |
|
133 |
MCClassTraitDefinition |
|
134 |
MCClassTraitParser |
|
135 |
MCClassVariableDefinition |
|
136 |
MCCodeTool |
|
137 |
MCCommitDialog |
|
138 |
MCDictionaryRepository |
|
139 |
MCDiffyVersion |
|
140 |
MCFileBasedRepository |
|
141 |
MCFilteredVersionSorter |
|
142 |
MCGOODSRepository |
|
143 |
MCInstanceVariableDefinition |
|
144 |
MCMczWriter |
|
145 |
MCMethodDefinition |
|
146 |
MCMockDefinition |
|
147 |
MCMockDependentItem |
|
148 |
MCModification |
|
149 |
MCMultiPackageLoader |
|
150 |
MCOrganizationDefinition |
|
151 |
MCPackageList |
|
152 |
MCPoolImportDefinition |
|
153 |
MCRemoval |
|
154 |
MCRepositoryDialog |
|
155 |
MCRepositoryList |
|
156 |
MCScriptDefinition |
|
157 |
MCSnapshotReader |
|
158 |
MCStWriter |
|
159 |
MCSystemCategoryParser |
|
160 |
MCThreeWayMerger |
|
161 |
MCTraitParser |
|
162 |
MCVersionHistoryBrowser |
|
163 |
MCVersionInfo |
|
164 |
MCVersionInfoWriter |
|
165 |
MCVersionInspector |
|
166 |
MCVersionList |
|
167 |
MCVersionReader |
|
168 |
MCWorkingAncestry |
|
169 |
MCWorkingCopy |
|
170 |
MCWriteOnlyRepository |
|
171 |
MCDirectoryRepository |
|
172 |
MCFtpRepository |
|
173 |
MCHttpRepository |
|
174 |
MCLazyVersionInfo |
|
175 |
MCMcdWriter |
|
176 |
MCMczReader |
|
177 |
MCPatchBrowser |
|
178 |
MCPostscriptDefinition |
|
179 |
MCPreambleDefinition |
|
180 |
MCRemovalPostscriptDefinition |
|
181 |
MCRemovalPreambleDefinition |
|
182 |
MCSMReleaseRepository |
|
183 |
MCSmtpRepository |
|
184 |
MCStReader |
|
185 |
MCTraitDefinition |
|
186 |
MCCacheRepository |
|
187 |
MCMcdReader |
|
188 |
MCSubDirectoryRepository |
|
189 |
MCStXPackageInfo |
|
190 |
MCStXNamespaceQuery |
|
191 |
MCStxVersionInfo |
|
192 |
MCStxMczWriter |
|
193 |
MCStxStWriter |
|
843
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
194 |
MCStXSnapshotTransformation |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
195 |
MCStXSnapshotPostReadTransformation |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
196 |
MCStXSnapshotPreWriteTransformation |
170 | 197 |
) |
198 |
! |
|
199 |
||
200 |
extensionMethodNames |
|
201 |
"lists the extension methods which are to be included in the project. |
|
843
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
202 |
Entries are pairwise elements, consisting of class-name and selector." |
170 | 203 |
|
204 |
^ #( |
|
756 | 205 |
Behavior includesLocalSelector: |
206 |
Behavior localSelectors |
|
207 |
Behavior traitCompositionString |
|
208 |
Behavior typeOfClass |
|
209 |
Class asClassDefinition |
|
210 |
Class classDefinitions |
|
211 |
Class poolDictionaryNames |
|
212 |
ClassDescription mcDefinition |
|
213 |
Object isConflict |
|
214 |
SequenceableCollection copyReplaceAll:with:asTokens: |
|
215 |
Stream isMessageStream |
|
216 |
String extractNumber |
|
217 |
String withSqueakLineEndings |
|
218 |
StringCollection asStringWithNativeLineEndings |
|
219 |
StringCollection asStringWithSqueakLineEndings |
|
220 |
Symbol isDoIt |
|
221 |
#'Tools::NewSystemBrowser' projectMenuMonticelloCommit |
|
222 |
UndefinedObject typeOfClass |
|
223 |
UserPreferences mcEnabled |
|
224 |
UserPreferences mcEnabled: |
|
225 |
UserPreferences mcRepositories |
|
226 |
UserPreferences mcRepositories: |
|
227 |
VersionInfo timeStamp |
|
228 |
'Annotation class' mctimestamp: |
|
229 |
'ProjectDefinition class' #'monticelloTimestamps_code' |
|
230 |
'ProjectDefinition class' #'monticelloTimestamps_codeFor:' |
|
231 |
'Timestamp class' fromMethodTimeStamp: |
|
843
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
232 |
Change mcDefinition |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
233 |
Change mcDefinition: |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
234 |
'ProjectDefinition class' monticelloName |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
235 |
'ProjectDefinition class' #'monticelloAncestry_code' |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
236 |
PackageInfo isMCStXPackageInfo |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
237 |
CharacterArray asStringWithSqueakLineEndings |
a4ea1147dd16
More support Squeak/Pharo interoperability - part 1:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
767
diff
changeset
|
238 |
CharacterArray asStringWithNativeLineEndings |
884
ad72b9928675
Added ProjectDefinition>>monticelloNameForMCZ
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
861
diff
changeset
|
239 |
'ProjectDefinition class' monticelloNameForMCZ |
170 | 240 |
) |
241 |
! ! |
|
242 |
||
243 |
!stx_goodies_monticello class methodsFor:'description - project information'! |
|
244 |
||
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
245 |
applicationIconFileName |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
246 |
"Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file" |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
247 |
|
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
248 |
^ nil |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
249 |
"/ ^ self applicationName |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
250 |
! |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
251 |
|
170 | 252 |
companyName |
253 |
"Return a companyname which will appear in <lib>.rc" |
|
254 |
||
255 |
^ 'eXept Software AG' |
|
256 |
! |
|
257 |
||
258 |
description |
|
259 |
"Return a description string which will appear in vc.def / bc.def" |
|
260 |
||
426 | 261 |
^ 'Smalltalk/X Monticello Class library' |
262 |
||
263 |
"Modified: / 20-08-2011 / 16:57:40 / cg" |
|
170 | 264 |
! |
265 |
||
266 |
legalCopyright |
|
267 |
"Return a copyright string which will appear in <lib>.rc" |
|
268 |
||
426 | 269 |
^ 'Public - See SqueakSource' |
270 |
||
271 |
"Modified: / 20-08-2011 / 16:58:01 / cg" |
|
170 | 272 |
! |
273 |
||
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
274 |
productInstallDirBaseName |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
275 |
"Returns a default installDir which will appear in <app>.nsi. |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
276 |
This is usually not the one you want to keep" |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
277 |
|
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
278 |
^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
279 |
! |
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
280 |
|
170 | 281 |
productName |
282 |
"Return a product name which will appear in <lib>.rc" |
|
283 |
||
284 |
^ 'Smalltalk/X' |
|
285 |
! ! |
|
286 |
||
287 |
!stx_goodies_monticello class methodsFor:'documentation'! |
|
288 |
||
413 | 289 |
version |
884
ad72b9928675
Added ProjectDefinition>>monticelloNameForMCZ
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
861
diff
changeset
|
290 |
^ '$Header: /cvs/stx/stx/goodies/monticello/stx_goodies_monticello.st,v 1.21 2013-06-07 01:17:13 vrany Exp $' |
413 | 291 |
! |
292 |
||
170 | 293 |
version_CVS |
884
ad72b9928675
Added ProjectDefinition>>monticelloNameForMCZ
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
861
diff
changeset
|
294 |
^ '$Header: /cvs/stx/stx/goodies/monticello/stx_goodies_monticello.st,v 1.21 2013-06-07 01:17:13 vrany Exp $' |
170 | 295 |
! ! |
731
a5381bbaee2e
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
551
diff
changeset
|
296 |