common/SCMWarning.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 19 Feb 2021 08:29:41 +0000
changeset 924 4d92f234f671
parent 509 f92210d4585b
child 789 6c246f60f92a
permissions -rw-r--r--
Rework and fix HGSourceCodeManager >> #revisionLogOf:...directory:module:` This commit changes the logic in two ways: 1. #newestRevision is now the newest revision in the branch that *contains* given file (not necesarily modidfes it). If there are multiple heads in that branch, pretty much random one is returned. This changes old behavior and therefore this commit updates tests. 2. If a specific single revision is requested, i.e., both from and to revisions are the same, revision log with that single revision is returned no matter whether it modifies the file or even contains that file at all. This is essentially a workaround to fix issue #305. Moreover, this commit simplifies the code a lot by delegating all the changeset searching and filtering to mercurial using revset expressions. See https://swing.fit.cvut.cz/projects/stx-jv/ticket/305#comment:3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
411
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 411
diff changeset
     3
Copyright (C) 2012-2015 Jan Vrany
411
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
This library is free software; you can redistribute it and/or
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
License as published by the Free Software Foundation; either
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
version 2.1 of the License. 
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
This library is distributed in the hope that it will be useful,
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
Lesser General Public License for more details.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
License along with this library; if not, write to the Free Software
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
"{ Package: 'stx:libscm/common' }"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
Notification subclass:#SCMWarning
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
	instanceVariableNames:''
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
	classVariableNames:''
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
	poolDictionaries:''
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
	category:'SCM-Common-StX-Exceptions'
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
!
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
!SCMWarning class methodsFor:'documentation'!
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
copyright
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 411
diff changeset
    33
Copyright (C) 2012-2015 Jan Vrany
411
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
This library is free software; you can redistribute it and/or
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
modify it under the terms of the GNU Lesser General Public
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
License as published by the Free Software Foundation; either
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
version 2.1 of the License. 
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
This library is distributed in the hope that it will be useful,
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
but WITHOUT ANY WARRANTY; without even the implied warranty of
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
Lesser General Public License for more details.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
You should have received a copy of the GNU Lesser General Public
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
License along with this library; if not, write to the Free Software
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
! !
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
!SCMWarning methodsFor:'default actions'!
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
defaultAction
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    "Default action for warnings: log warning using system logger and
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
     show on Transcript (if Transcript is a view)"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
    | message |
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
    message := self description.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    Logger log: message severity: #warning facility: 'SCM'.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    Transcript isView ifTrie:[  
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
        Transcript show:'[SCM] Warning: '; showCR: message.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
    ].
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    self proceed.
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    "Created: / 14-03-2014 / 22:38:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
! !
858944cebec4 Added SCMAbstractPackageRevision>>changeSet.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68