__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

aptanhua@216.73.216.200: ~ $
from __future__ import annotations

import contextlib
import os.path
import shutil
import tempfile
from collections.abc import Generator
from collections.abc import Sequence

from pre_commit import lang_base
from pre_commit.envcontext import envcontext
from pre_commit.envcontext import PatchesT
from pre_commit.envcontext import Var
from pre_commit.prefix import Prefix
from pre_commit.util import win_exe
from pre_commit.yaml import yaml_load

ENVIRONMENT_DIR = 'dartenv'

get_default_version = lang_base.basic_get_default_version
health_check = lang_base.basic_health_check
run_hook = lang_base.basic_run_hook


def get_env_patch(venv: str) -> PatchesT:
    return (
        ('PATH', (os.path.join(venv, 'bin'), os.pathsep, Var('PATH'))),
    )


@contextlib.contextmanager
def in_env(prefix: Prefix, version: str) -> Generator[None]:
    envdir = lang_base.environment_dir(prefix, ENVIRONMENT_DIR, version)
    with envcontext(get_env_patch(envdir)):
        yield


def install_environment(
        prefix: Prefix,
        version: str,
        additional_dependencies: Sequence[str],
) -> None:
    lang_base.assert_version_default('dart', version)

    envdir = lang_base.environment_dir(prefix, ENVIRONMENT_DIR, version)
    bin_dir = os.path.join(envdir, 'bin')

    def _install_dir(prefix_p: Prefix, pub_cache: str) -> None:
        dart_env = {**os.environ, 'PUB_CACHE': pub_cache}

        with open(prefix_p.path('pubspec.yaml')) as f:
            pubspec_contents = yaml_load(f)

        lang_base.setup_cmd(prefix_p, ('dart', 'pub', 'get'), env=dart_env)

        for executable in pubspec_contents['executables']:
            lang_base.setup_cmd(
                prefix_p,
                (
                    'dart', 'compile', 'exe',
                    '--output', os.path.join(bin_dir, win_exe(executable)),
                    prefix_p.path('bin', f'{executable}.dart'),
                ),
                env=dart_env,
            )

    os.makedirs(bin_dir)

    with tempfile.TemporaryDirectory() as tmp:
        _install_dir(prefix, tmp)

    for dep_s in additional_dependencies:
        with tempfile.TemporaryDirectory() as dep_tmp:
            dep, _, version = dep_s.partition(':')
            if version:
                dep_cmd: tuple[str, ...] = (dep, '--version', version)
            else:
                dep_cmd = (dep,)

            lang_base.setup_cmd(
                prefix,
                ('dart', 'pub', 'cache', 'add', *dep_cmd),
                env={**os.environ, 'PUB_CACHE': dep_tmp},
            )

            # try and find the 'pubspec.yaml' that just got added
            for root, _, filenames in os.walk(dep_tmp):
                if 'pubspec.yaml' in filenames:
                    with tempfile.TemporaryDirectory() as copied:
                        pkg = os.path.join(copied, 'pkg')
                        shutil.copytree(root, pkg)
                        _install_dir(Prefix(pkg), dep_tmp)
                    break
            else:
                raise AssertionError(
                    f'could not find pubspec.yaml for {dep_s}',
                )

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 0 B 0644
conda.py File 2.36 KB 0644
coursier.py File 2.45 KB 0644
dart.py File 3.04 KB 0644
docker.py File 5.29 KB 0644
docker_image.py File 847 B 0644
dotnet.py File 3.38 KB 0644
fail.py File 685 B 0644
golang.py File 4.53 KB 0644
haskell.py File 1.62 KB 0644
julia.py File 4.33 KB 0644
lua.py File 2.48 KB 0644
node.py File 3.76 KB 0644
perl.py File 1.46 KB 0644
pygrep.py File 3.73 KB 0644
python.py File 7.15 KB 0644
r.py File 7.72 KB 0644
ruby.py File 4.53 KB 0644
rust.py File 5.36 KB 0644
swift.py File 1.57 KB 0644
unsupported.py File 300 B 0644
unsupported_script.py File 786 B 0644