project.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:hatch 作者: ofek 项目源码 文件源码
def __init__(self, filename='pyproject.toml'):
        project_root = find_project_root()
        self.project_file = os.path.join(project_root, filename)
        self.lock_file = os.path.join(project_root, '{}.lock'.format(filename))
        self.setup_file = os.path.join(project_root, 'setup.py')
        self.setup_is_managed = is_setup_managed(self.setup_file)
        self.setup_user_section_error = None
        self.setup_user_section = ''
        if self.setup_is_managed:
            try:
                self.setup_user_section = parse_setup(self.setup_file)
            except Exception as e:
                self.setup_user_section_error = str(e)

        self.raw = OrderedDict()
        try:
            with open(self.project_file) as f:
                self.raw = toml.load(f, OrderedDict)
            self.packages = SortedDict(self.raw.get('packages'))
            self.dev_packages = SortedDict(self.raw.get('dev-packages'))
            self.metadata = self.raw.get('metadata')
            self.commands = self.raw.get('tool', {}).get('hatch', {}).get('commands', OrderedDict())
        except (FileNotFoundError, IOError, ValueError):
            self.packages = SortedDict()
            self.dev_packages = SortedDict()
            self.metadata = OrderedDict()
            self.commands = OrderedDict()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号