common/stx_libscm_common.st
changeset 903 3c6c268d7395
parent 864 c854577212b8
child 909 993b38cb97dd
equal deleted inserted replaced
890:f56d28a438bb 903:3c6c268d7395
     1 "{ Encoding: utf8 }"
       
     2 
       
     3 "
     1 "
     4 stx:libscm - a new source code management library for Smalltalk/X
     2 stx:libscm - a new source code management library for Smalltalk/X
     5 Copyright (C) 2012-2015 Jan Vrany
     3 Copyright (C) 2012-2015 Jan Vrany
       
     4 Copyright (C) 2020 Jan Vrany
       
     5 Copyright (C) 2020 LabWare
     6 
     6 
     7 This library is free software; you can redistribute it and/or
     7 This library is free software; you can redistribute it and/or
     8 modify it under the terms of the GNU Lesser General Public
     8 modify it under the terms of the GNU Lesser General Public
     9 License as published by the Free Software Foundation; either
     9 License as published by the Free Software Foundation; either
    10 version 2.1 of the License. 
    10 version 2.1 of the License. 
    17 You should have received a copy of the GNU Lesser General Public
    17 You should have received a copy of the GNU Lesser General Public
    18 License along with this library; if not, write to the Free Software
    18 License along with this library; if not, write to the Free Software
    19 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
    19 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
    20 "
    20 "
    21 "{ Package: 'stx:libscm/common' }"
    21 "{ Package: 'stx:libscm/common' }"
       
    22 
       
    23 "{ NameSpace: Smalltalk }"
    22 
    24 
    23 LibraryDefinition subclass:#stx_libscm_common
    25 LibraryDefinition subclass:#stx_libscm_common
    24 	instanceVariableNames:''
    26 	instanceVariableNames:''
    25 	classVariableNames:''
    27 	classVariableNames:''
    26 	poolDictionaries:''
    28 	poolDictionaries:''
    31 
    33 
    32 copyright
    34 copyright
    33 "
    35 "
    34 stx:libscm - a new source code management library for Smalltalk/X
    36 stx:libscm - a new source code management library for Smalltalk/X
    35 Copyright (C) 2012-2015 Jan Vrany
    37 Copyright (C) 2012-2015 Jan Vrany
       
    38 Copyright (C) 2020 Jan Vrany
       
    39 Copyright (C) 2020 LabWare
    36 
    40 
    37 This library is free software; you can redistribute it and/or
    41 This library is free software; you can redistribute it and/or
    38 modify it under the terms of the GNU Lesser General Public
    42 modify it under the terms of the GNU Lesser General Public
    39 License as published by the Free Software Foundation; either
    43 License as published by the Free Software Foundation; either
    40 version 2.1 of the License. 
    44 version 2.1 of the License. 
    76 
    80 
    77 mandatoryPreRequisites
    81 mandatoryPreRequisites
    78     "list packages which are mandatory as a prerequisite.
    82     "list packages which are mandatory as a prerequisite.
    79      This are packages containing superclasses of my classes and classes which
    83      This are packages containing superclasses of my classes and classes which
    80      are extended by myself.
    84      are extended by myself.
    81      They are mandatory, beacuse we need these packages as a prerequisite for loading and compiling.
    85      They are mandatory, because we need these packages as a prerequisite for loading and compiling.
    82      This method is generated automatically,
    86      This method is generated automatically,
    83      by searching along the inheritance chain of all of my classes."
    87      by searching along the inheritance chain of all of my classes.
    84 
    88      Please take a look at the #referencedPreRequisites method as well."
    85     ^ #(
    89 
    86         #'stx:libbasic'    "Collection - extended "
    90     ^ #(
    87         #'stx:libbasic3'    "AbstractSourceCodeManager - superclass of SCMAbstractSourceCodeManager "
    91         #'stx:libbasic'    "Behavior - extended"
    88         #'stx:libview2'    "ApplicationModel - superclass of SCMAbstractCommitDialog "
    92         #'stx:libbasic3'    "AbstractSourceCodeManager - superclass of SCMAbstractSourceCodeManager"
       
    93         #'stx:libview2'    "ApplicationModel - superclass of SCMAbstractCommitDialog"
    89     )
    94     )
    90 !
    95 !
    91 
    96 
    92 preRequisites
    97 preRequisites
    93     "list all required packages.
    98     "list all required packages.
   109 !
   114 !
   110 
   115 
   111 referencedPreRequisites
   116 referencedPreRequisites
   112     "list packages which are a prerequisite, because they contain
   117     "list packages which are a prerequisite, because they contain
   113      classes which are referenced by my classes.
   118      classes which are referenced by my classes.
   114      We do not need these packages as a prerequisite for loading or compiling.
   119      These packages are NOT needed as a prerequisite for compiling or loading,
       
   120      however, a class from it may be referenced during execution and having it
       
   121      unloaded then may lead to a runtime doesNotUnderstand error, unless the caller
       
   122      includes explicit checks for the package being present.
   115      This method is generated automatically,
   123      This method is generated automatically,
   116      by searching all classes (and their packages) which are referenced by my classes."
   124      by searching all classes (and their packages) which are referenced by my classes.
   117 
   125      Please also take a look at the #mandatoryPreRequisites method"
   118     ^ #(
   126 
   119         #'stx:libjava'    "JavaVM - referenced by SCMAbstractFileoutLikeTask>>doRemoveOldContainersFor: "
   127     ^ #(
   120         #'stx:libscm/mercurial'    "HGError - referenced by SCMAbstractPackageRevision>>childNamed: "
   128         #'stx:libjava'    "JavaVM - referenced by SCMAbstractFileoutLikeTask>>doRemoveOldContainersFor:"
   121         #'stx:libtool'    "Tools::ChangeSetDiffTool - referenced by SCMCommonSourceCodeManagerUtilities>>compareProject:withRepositoryVersionFrom: "
   129         #'stx:libscm/mercurial'    "HGError - referenced by SCMAbstractPackageRevision>>childNamed:"
   122         #'stx:libview'    "Color - referenced by SCMAbstractCommitDialog>>browseWorkingCopyLabel "
   130         #'stx:libtool'    "Tools::ChangeSetDiffTool - referenced by SCMCommonSourceCodeManagerUtilities>>compareProject:withRepositoryVersionFrom:extensionsOnly:"
   123         #'stx:libwidg'    "Button - referenced by SCMAbstractCommitDialog>>doRunSanityChecks "
   131         #'stx:libview'    "Color - referenced by SCMAbstractCommitDialog>>browseWorkingCopyLabel"
   124         #'stx:libwidg2'    "ProgressNotification - referenced by SCMAbstractFileoutLikeTask>>doCompileCopyrightMethodsFor: "
   132         #'stx:libwidg'    "Button - referenced by SCMAbstractCommitDialog>>doRunSanityChecks"
       
   133         #'stx:libwidg2'    "ProgressNotification - referenced by SCMAbstractFileoutLikeTask>>doCompileCopyrightMethodsFor:"
   125     )
   134     )
   126 !
   135 !
   127 
   136 
   128 subProjects
   137 subProjects
   129     "list packages which are known as subprojects.
   138     "list packages which are known as subprojects.
   153         SCMAbstractTask
   162         SCMAbstractTask
   154         SCMCodeMonitor
   163         SCMCodeMonitor
   155         SCMCommonPackageModelGroup
   164         SCMCommonPackageModelGroup
   156         SCMCommonSourceCodeManagerUtilities
   165         SCMCommonSourceCodeManagerUtilities
   157         SCMCompatModeQuery
   166         SCMCompatModeQuery
       
   167         SCMCopyrightLine
       
   168         SCMCopyrightUpdater
   158         SCMError
   169         SCMError
   159         SCMWarning
   170         SCMWarning
   160         #'stx_libscm_common'
   171         #'stx_libscm_common'
   161         SCMAbstractCommitDialog
   172         SCMAbstractCommitDialog
   162         SCMAbstractFileoutLikeTask
   173         SCMAbstractFileoutLikeTask
   167         SCMAbstractCommitTask
   178         SCMAbstractCommitTask
   168     )
   179     )
   169 !
   180 !
   170 
   181 
   171 extensionMethodNames
   182 extensionMethodNames
   172     "list class/selector pairs of extensions.
   183     "lists the extension methods which are to be included in the project.
   173      A correponding method with real names must be present in my concrete subclasses"
   184      Entries are 2-element array literals, consisting of class-name and selector.
       
   185      A correponding method with real names must be present in my concrete subclasses
       
   186      if it has extensions."
   174 
   187 
   175     ^ #(
   188     ^ #(
   176         ChangeSet condenseChangesForPackageAfterCommit:
   189         ChangeSet condenseChangesForPackageAfterCommit:
       
   190         Class copyrightMethodSource
       
   191         UserPreferences historyManagerCopyrightHolder
       
   192         UserPreferences historyManagerCopyrightHolder:
   177     )
   193     )
   178 ! !
   194 ! !
   179 
   195 
   180 !stx_libscm_common class methodsFor:'description - project information'!
   196 !stx_libscm_common class methodsFor:'description - project information'!
   181 
   197 
   267 
   283 
   268     ^ '$Changeset: <not expanded> $'
   284     ^ '$Changeset: <not expanded> $'
   269 !
   285 !
   270 
   286 
   271 version_SVN
   287 version_SVN
   272     ^ '§Id::                                                                                                                        §'
   288     ^ '§Id::                                                                                                                        §'
   273 ! !
   289 ! !
   274 
   290 
   275 
   291 
   276 stx_libscm_common initialize!
   292 stx_libscm_common initialize!