⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 271274 in webkit


Ignore:
Timestamp:
Jan 7, 2021, 4:35:43 PM (6 years ago)
Author:
Jonathan Bedard
Message:

[webkitscmpy] Split program into separate files
https://bugs.webkit.org/show_bug.cgi?id=220369
<rdar://problem/72856906>

Reviewed by Dewei Zhu.

  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/canonicalize: Move to webkitscmpy/program/canonicalize.
  • Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: Update imports.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program: Moved from webkitscmpy/program.py.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program.py: Moved to webkitscmpy/program.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py: Moved from webkitscmpy/program.py.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize: Moved from webkitscmpy/canonicalize.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/committer.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/message.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/checkout.py: Moved from webkitscmpy/program.py.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/command.py: Moved from webkitscmpy/program.py.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/find.py: Moved from webkitscmpy/program.py.
Location:
trunk/Tools
Files:
5 added
2 deleted
3 edited
4 copied

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r271262 r271274  
     12021-01-07  Jonathan Bedard  <jbedard@apple.com>
     2
     3        [webkitscmpy] Split program into separate files
     4        https://bugs.webkit.org/show_bug.cgi?id=220369
     5        <rdar://problem/72856906>
     6
     7        Reviewed by Dewei Zhu.
     8
     9        * Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Bump version.
     10        * Scripts/libraries/webkitscmpy/webkitscmpy/canonicalize: Move to webkitscmpy/program/canonicalize.
     11        * Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: Update imports.
     12        * Scripts/libraries/webkitscmpy/webkitscmpy/program: Moved from webkitscmpy/program.py.
     13        * Scripts/libraries/webkitscmpy/webkitscmpy/program.py: Moved to webkitscmpy/program.
     14        * Scripts/libraries/webkitscmpy/webkitscmpy/program/__init__.py: Moved from webkitscmpy/program.py.
     15        * Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize: Moved from webkitscmpy/canonicalize.
     16        * Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/committer.py: Ditto.
     17        * Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/message.py: Ditto.
     18        * Scripts/libraries/webkitscmpy/webkitscmpy/program/checkout.py: Moved from webkitscmpy/program.py.
     19        * Scripts/libraries/webkitscmpy/webkitscmpy/program/command.py: Moved from webkitscmpy/program.py.
     20        * Scripts/libraries/webkitscmpy/webkitscmpy/program/find.py: Moved from webkitscmpy/program.py.
     21
    1222021-01-07  Wenson Hsieh  <wenson_hsieh@apple.com>
    223
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py

    r271258 r271274  
    4747    )
    4848
    49 version = Version(0, 7, 2)
     49version = Version(0, 7, 3)
    5050
    5151AutoInstall.register(Package('fasteners', Version(0, 15, 0)))
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py

    r271258 r271274  
    2828from webkitcorepy import mocks, OutputCapture, StringIO
    2929from webkitscmpy import local, Commit, Contributor
    30 from webkitscmpy.canonicalize.committer import main as committer_main
    31 from webkitscmpy.canonicalize.message import main as message_main
     30from webkitscmpy.program.canonicalize.committer import main as committer_main
     31from webkitscmpy.program.canonicalize.message import main as message_main
    3232
    3333
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/__init__.py

    r271273 r271274  
    1 # Copyright (C) 2020 Apple Inc. All rights reserved.
     1# Copyright (C) 2020, 2021 Apple Inc. All rights reserved.
    22#
    33# Redistribution and use in source and binary forms, with or without
     
    2929from webkitcorepy import arguments, run, string_utils
    3030from webkitscmpy import log
    31 from webkitscmpy.program import Command
     31from ..command import Command
    3232
    3333
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/committer.py

    r271273 r271274  
    11#!/usr/bin/env python
    22
    3 # Copyright (C) 2020 Apple Inc. All rights reserved.
     3# Copyright (C) 2020, 2021 Apple Inc. All rights reserved.
    44#
    55# Redistribution and use in source and binary forms, with or without
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/message.py

    r271273 r271274  
    11#!/usr/bin/env python
    22
    3 # Copyright (C) 2020 Apple Inc. All rights reserved.
     3# Copyright (C) 2020, 2021 Apple Inc. All rights reserved.
    44#
    55# Redistribution and use in source and binary forms, with or without
  • trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/checkout.py

    r271273 r271274  
    2121# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2222
    23 import logging
    24 import os
    2523import sys
    2624
    27 log = logging.getLogger('webkitscmpy')
     25from .command import Command
     26from webkitcorepy import arguments
     27from webkitscmpy import local
    2828
    2929
    30 def _maybe_add_webkitcorepy_path():
    31     # Hopefully we're beside webkitcorepy, otherwise webkitcorepy will need to be installed.
    32     libraries_path = os.path.dirname(os.path.dirname(os.path.abspath(os.path.dirname(__file__))))
    33     webkitcorepy_path = os.path.join(libraries_path, 'webkitcorepy')
    34     if os.path.isdir(webkitcorepy_path) and os.path.isdir(os.path.join(webkitcorepy_path, 'webkitcorepy')) and webkitcorepy_path not in sys.path:
    35         sys.path.insert(0, webkitcorepy_path)
     30class Checkout(Command):
     31    name = 'checkout'
     32    help = 'Given an identifier, revision or hash, normalize and checkout that commit'
    3633
     34    @classmethod
     35    def parser(cls, parser, loggers=None):
     36        arguments.LoggingGroup(
     37            parser,
     38            loggers=loggers,
     39            help='{} amount of logging and commit information displayed'
     40        )
    3741
    38 _maybe_add_webkitcorepy_path()
     42        parser.add_argument(
     43            'argument', nargs=1,
     44            type=str, default=None,
     45            help='String representation of a commit or branch to be normalized',
     46        )
    3947
    40 try:
    41     from webkitcorepy import AutoInstall, Package, Version
    42 except ImportError:
    43     raise ImportError(
    44         "'webkitcorepy' could not be found on your Python path.\n" +
    45         "You are not running from a WebKit checkout.\n" +
    46         "Please install webkitcorepy with `pip install webkitcorepy --extra-index-url <package index URL>`"
    47     )
     48    @classmethod
     49    def main(cls, args, repository, **kwargs):
     50        if not repository.path:
     51            sys.stderr.write("Cannot checkout on remote repository")
     52            return 1
    4853
    49 version = Version(0, 7, 2)
     54        try:
     55            commit = repository.checkout(args.argument[0])
     56        except (local.Scm.Exception, ValueError) as exception:
     57            # ValueErrors and Scm exceptions usually contain enough information to be displayed
     58            # to the user as an error
     59            sys.stderr.write(str(exception) + '\n')
     60            return 1
    5061
    51 AutoInstall.register(Package('fasteners', Version(0, 15, 0)))
    52 AutoInstall.register(Package('monotonic', Version(1, 5)))
    53 AutoInstall.register(Package('xmltodict', Version(0, 12, 0)))
    54 
    55 from webkitscmpy.contributor import Contributor
    56 from webkitscmpy.commit import Commit
    57 from webkitscmpy.scm_base import ScmBase
    58 
    59 from webkitscmpy import local
    60 from webkitscmpy import mocks
    61 
    62 name = 'webkitscmpy'
     62        if not commit:
     63            sys.stderr.write("Failed to map '{}'\n".format(args.argument[0]))
     64            return 1
     65        return 0
Note: See TracChangeset for help on using the changeset viewer.