mkdocs-document-dates 1.9.8__tar.gz → 1.9.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/PKG-INFO +1 -1
- mkdocs_document_dates-1.9.9/mkdocs_document_dates/__init__.py +11 -0
- mkdocs_document_dates-1.9.9/mkdocs_document_dates/hooks_installer.py +49 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates.egg-info/PKG-INFO +1 -1
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates.egg-info/SOURCES.txt +1 -0
- mkdocs_document_dates-1.9.9/mkdocs_document_dates.egg-info/entry_points.txt +5 -0
- mkdocs_document_dates-1.9.9/setup.py +129 -0
- mkdocs_document_dates-1.9.8/mkdocs_document_dates/__init__.py +0 -3
- mkdocs_document_dates-1.9.8/mkdocs_document_dates.egg-info/entry_points.txt +0 -2
- mkdocs_document_dates-1.9.8/setup.py +0 -106
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/LICENSE +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/README.md +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/hooks/pre-commit +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/__init__.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ar.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/de.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/en.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/es.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/fr.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ja.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ko.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ru.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/zh.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/zh_tw.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/plugin.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/styles.py +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates.egg-info/dependency_links.txt +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates.egg-info/requires.txt +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates.egg-info/top_level.txt +0 -0
- {mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/setup.cfg +0 -0
@@ -0,0 +1,49 @@
|
|
1
|
+
import os
|
2
|
+
import sys
|
3
|
+
import subprocess
|
4
|
+
from pathlib import Path
|
5
|
+
import site
|
6
|
+
|
7
|
+
def install():
|
8
|
+
"""安装 git hooks 的入口点函数"""
|
9
|
+
print("\n正在安装 git hooks...\n")
|
10
|
+
try:
|
11
|
+
# 先清除旧的配置
|
12
|
+
subprocess.run(['git', 'config', '--global', '--unset', 'core.hooksPath'],
|
13
|
+
check=False)
|
14
|
+
|
15
|
+
# 优先使用开发目录
|
16
|
+
dev_hooks_dir = Path(__file__).parent.resolve() / 'hooks'
|
17
|
+
if dev_hooks_dir.exists():
|
18
|
+
hook_path = dev_hooks_dir / 'pre-commit'
|
19
|
+
if hook_path.exists():
|
20
|
+
if os.name != 'nt':
|
21
|
+
os.chmod(dev_hooks_dir, 0o755)
|
22
|
+
os.chmod(hook_path, 0o755)
|
23
|
+
subprocess.run(['git', 'config', '--global', 'core.hooksPath', str(dev_hooks_dir)],
|
24
|
+
check=True)
|
25
|
+
print(f"Hooks 已安装到 (开发模式): {dev_hooks_dir}")
|
26
|
+
return True
|
27
|
+
|
28
|
+
# 如果开发目录不存在,再尝试 site-packages
|
29
|
+
for site_dir in site.getsitepackages():
|
30
|
+
hooks_dir = Path(site_dir) / 'mkdocs_document_dates' / 'hooks'
|
31
|
+
if hooks_dir.exists():
|
32
|
+
hook_path = hooks_dir / 'pre-commit'
|
33
|
+
if hook_path.exists():
|
34
|
+
if os.name != 'nt':
|
35
|
+
os.chmod(hooks_dir, 0o755)
|
36
|
+
os.chmod(hook_path, 0o755)
|
37
|
+
subprocess.run(['git', 'config', '--global', 'core.hooksPath', str(hooks_dir)],
|
38
|
+
check=True)
|
39
|
+
print(f"Hooks 已安装到: {hooks_dir}")
|
40
|
+
return True
|
41
|
+
|
42
|
+
print("错误: 未找到 hooks 目录")
|
43
|
+
return False
|
44
|
+
except Exception as e:
|
45
|
+
print(f"安装 hooks 时出错: {e}")
|
46
|
+
return False
|
47
|
+
|
48
|
+
if __name__ == '__main__':
|
49
|
+
install()
|
@@ -0,0 +1,129 @@
|
|
1
|
+
from setuptools import setup, find_packages
|
2
|
+
from setuptools.command.install_egg_info import install_egg_info
|
3
|
+
from setuptools.command.develop import develop
|
4
|
+
from setuptools.command.install import install
|
5
|
+
from setuptools.command.build_py import build_py
|
6
|
+
import os
|
7
|
+
import sys
|
8
|
+
import subprocess
|
9
|
+
from pathlib import Path
|
10
|
+
import site
|
11
|
+
|
12
|
+
def install_git_hooks():
|
13
|
+
print("\n...Starting hooks installation...\n")
|
14
|
+
try:
|
15
|
+
# 先清除旧的配置
|
16
|
+
subprocess.run(['git', 'config', '--global', '--unset', 'core.hooksPath'],
|
17
|
+
check=False)
|
18
|
+
|
19
|
+
# 使用 site-packages 路径
|
20
|
+
for site_dir in site.getsitepackages():
|
21
|
+
hooks_dir = Path(site_dir) / 'mkdocs_document_dates' / 'hooks'
|
22
|
+
print(f"Checking hooks in: {hooks_dir}")
|
23
|
+
if hooks_dir.exists():
|
24
|
+
hook_path = hooks_dir / 'pre-commit'
|
25
|
+
if hook_path.exists():
|
26
|
+
if os.name != 'nt':
|
27
|
+
os.chmod(hooks_dir, 0o755)
|
28
|
+
os.chmod(hook_path, 0o755)
|
29
|
+
subprocess.run(['git', 'config', '--global', 'core.hooksPath', str(hooks_dir)],
|
30
|
+
check=True)
|
31
|
+
print(f"Hooks installed at: {hooks_dir}")
|
32
|
+
|
33
|
+
# 验证配置
|
34
|
+
result = subprocess.run(['git', 'config', '--global', 'core.hooksPath'],
|
35
|
+
capture_output=True, text=True)
|
36
|
+
print(f"Verified hooks path: {result.stdout.strip()}")
|
37
|
+
return True
|
38
|
+
|
39
|
+
# 如果在 site-packages 中没找到,尝试开发目录
|
40
|
+
dev_hooks_dir = Path(__file__).parent.resolve() / 'mkdocs_document_dates' / 'hooks'
|
41
|
+
if dev_hooks_dir.exists():
|
42
|
+
hook_path = dev_hooks_dir / 'pre-commit'
|
43
|
+
if hook_path.exists():
|
44
|
+
if os.name != 'nt':
|
45
|
+
os.chmod(dev_hooks_dir, 0o755)
|
46
|
+
os.chmod(hook_path, 0o755)
|
47
|
+
subprocess.run(['git', 'config', '--global', 'core.hooksPath', str(dev_hooks_dir)],
|
48
|
+
check=True)
|
49
|
+
print(f"Hooks installed at (dev mode): {dev_hooks_dir}")
|
50
|
+
return True
|
51
|
+
|
52
|
+
print("Error: Hooks directory not found in any location")
|
53
|
+
return False
|
54
|
+
except Exception as e:
|
55
|
+
print(f"Error installing hooks: {e}")
|
56
|
+
return False
|
57
|
+
|
58
|
+
class CustomInstallEggInfo(install_egg_info):
|
59
|
+
|
60
|
+
def run(self):
|
61
|
+
print("\n=== Starting CustomInstallEggInfo run ===\n")
|
62
|
+
print(f"Installation mode: {'Development' if '-e' in sys.argv else 'Production'}")
|
63
|
+
print(f"Current directory: {os.getcwd()}")
|
64
|
+
print(f"Setup file location: {__file__}")
|
65
|
+
print(f"Command line args: {sys.argv}")
|
66
|
+
|
67
|
+
install_egg_info.run(self)
|
68
|
+
install_git_hooks()
|
69
|
+
|
70
|
+
class CustomInstall(install):
|
71
|
+
def run(self):
|
72
|
+
print("\n=== Starting CustomInstall run ===\n")
|
73
|
+
print(f"Current directory: {os.getcwd()}")
|
74
|
+
install.run(self)
|
75
|
+
install_git_hooks()
|
76
|
+
|
77
|
+
class CustomDevelop(develop):
|
78
|
+
def run(self):
|
79
|
+
print("\n=== Starting CustomDevelop run ===\n")
|
80
|
+
develop.run(self)
|
81
|
+
install_git_hooks()
|
82
|
+
|
83
|
+
class CustomBuildPy(build_py):
|
84
|
+
def run(self):
|
85
|
+
print("\n=== Starting CustomBuildPy run ===\n")
|
86
|
+
print(f"Current directory: {os.getcwd()}")
|
87
|
+
print(f"Build lib dir: {self.build_lib}")
|
88
|
+
build_py.run(self)
|
89
|
+
install_git_hooks()
|
90
|
+
|
91
|
+
try:
|
92
|
+
with open("README.md", "r", encoding="utf-8") as fh:
|
93
|
+
long_description = fh.read()
|
94
|
+
except FileNotFoundError:
|
95
|
+
long_description = "A MkDocs plugin for displaying accurate document creation and last modification dates."
|
96
|
+
|
97
|
+
VERSION = '1.9.9'
|
98
|
+
|
99
|
+
setup(
|
100
|
+
name="mkdocs-document-dates",
|
101
|
+
version=VERSION,
|
102
|
+
author="Aaron Wang",
|
103
|
+
description="A MkDocs plugin for displaying accurate document creation and last modification dates.",
|
104
|
+
long_description=long_description,
|
105
|
+
long_description_content_type="text/markdown",
|
106
|
+
url="https://github.com/jaywhj/mkdocs-document-dates",
|
107
|
+
packages=find_packages(),
|
108
|
+
install_requires=[
|
109
|
+
'mkdocs>=1.0.0',
|
110
|
+
],
|
111
|
+
classifiers=[
|
112
|
+
"Programming Language :: Python :: 3",
|
113
|
+
"License :: OSI Approved :: MIT License",
|
114
|
+
"Operating System :: OS Independent",
|
115
|
+
],
|
116
|
+
entry_points={
|
117
|
+
'mkdocs.plugins': [
|
118
|
+
'document-dates = mkdocs_document_dates.plugin:DocumentDatesPlugin',
|
119
|
+
],
|
120
|
+
'console_scripts': [
|
121
|
+
'install-mkdocs-hooks=mkdocs_document_dates.hooks_installer:install'
|
122
|
+
]
|
123
|
+
},
|
124
|
+
|
125
|
+
package_data={
|
126
|
+
'mkdocs_document_dates': ['hooks/*'],
|
127
|
+
},
|
128
|
+
python_requires=">=3.6",
|
129
|
+
)
|
@@ -1,106 +0,0 @@
|
|
1
|
-
from setuptools import setup, find_packages
|
2
|
-
from setuptools.command.install import install
|
3
|
-
from setuptools.command.develop import develop
|
4
|
-
from setuptools.command.build_py import build_py
|
5
|
-
import os
|
6
|
-
import sys
|
7
|
-
import subprocess
|
8
|
-
from pathlib import Path
|
9
|
-
|
10
|
-
def install_git_hooks():
|
11
|
-
try:
|
12
|
-
print("Starting hooks installation...")
|
13
|
-
|
14
|
-
# 直接使用系统 Python 路径
|
15
|
-
python_path = sys.prefix
|
16
|
-
hooks_dir = Path(python_path) / 'lib' / f'python{sys.version_info.major}.{sys.version_info.minor}' / 'site-packages' / 'mkdocs_document_dates' / 'hooks'
|
17
|
-
|
18
|
-
print(f"Looking for hooks in: {hooks_dir}")
|
19
|
-
|
20
|
-
if not hooks_dir.exists():
|
21
|
-
print(f"Error: Hooks directory not found at {hooks_dir}")
|
22
|
-
return
|
23
|
-
|
24
|
-
hook_path = hooks_dir / 'pre-commit'
|
25
|
-
if not hook_path.exists():
|
26
|
-
print(f"Error: pre-commit hook not found at {hook_path}")
|
27
|
-
return
|
28
|
-
|
29
|
-
# 设置权限
|
30
|
-
if os.name != 'nt':
|
31
|
-
print(f"Setting permissions for {hooks_dir}")
|
32
|
-
os.chmod(hooks_dir, 0o755)
|
33
|
-
os.chmod(hook_path, 0o755)
|
34
|
-
|
35
|
-
# 设置 git hooks 路径
|
36
|
-
print(f"Configuring git hooks path to: {hooks_dir}")
|
37
|
-
result = subprocess.run(['git', 'config', '--global', 'core.hooksPath', str(hooks_dir)],
|
38
|
-
capture_output=True,
|
39
|
-
text=True)
|
40
|
-
|
41
|
-
if result.returncode != 0:
|
42
|
-
print(f"Error setting git hooks path: {result.stderr}")
|
43
|
-
return
|
44
|
-
|
45
|
-
print(f"Git hooks installed successfully at: {hooks_dir}")
|
46
|
-
|
47
|
-
except Exception as e:
|
48
|
-
print(f"Error installing git hooks: {e}")
|
49
|
-
import traceback
|
50
|
-
print(traceback.format_exc())
|
51
|
-
|
52
|
-
class CustomInstall(install):
|
53
|
-
def run(self):
|
54
|
-
install.run(self)
|
55
|
-
install_git_hooks()
|
56
|
-
|
57
|
-
class CustomDevelop(develop):
|
58
|
-
def run(self):
|
59
|
-
develop.run(self)
|
60
|
-
install_git_hooks()
|
61
|
-
|
62
|
-
class CustomBuildPy(build_py):
|
63
|
-
def run(self):
|
64
|
-
build_py.run(self)
|
65
|
-
install_git_hooks()
|
66
|
-
|
67
|
-
try:
|
68
|
-
with open("README.md", "r", encoding="utf-8") as fh:
|
69
|
-
long_description = fh.read()
|
70
|
-
except FileNotFoundError:
|
71
|
-
long_description = "A MkDocs plugin for displaying accurate document creation and last modification dates."
|
72
|
-
|
73
|
-
VERSION = '1.9.8'
|
74
|
-
|
75
|
-
setup(
|
76
|
-
name="mkdocs-document-dates",
|
77
|
-
version=VERSION,
|
78
|
-
author="Aaron Wang",
|
79
|
-
description="A MkDocs plugin for displaying accurate document creation and last modification dates.",
|
80
|
-
long_description=long_description,
|
81
|
-
long_description_content_type="text/markdown",
|
82
|
-
url="https://github.com/jaywhj/mkdocs-document-dates",
|
83
|
-
packages=find_packages(),
|
84
|
-
install_requires=[
|
85
|
-
'mkdocs>=1.0.0',
|
86
|
-
],
|
87
|
-
classifiers=[
|
88
|
-
"Programming Language :: Python :: 3",
|
89
|
-
"License :: OSI Approved :: MIT License",
|
90
|
-
"Operating System :: OS Independent",
|
91
|
-
],
|
92
|
-
entry_points={
|
93
|
-
'mkdocs.plugins': [
|
94
|
-
'document-dates = mkdocs_document_dates.plugin:DocumentDatesPlugin',
|
95
|
-
]
|
96
|
-
},
|
97
|
-
cmdclass={
|
98
|
-
'install': CustomInstall,
|
99
|
-
'develop': CustomDevelop,
|
100
|
-
'build_py': CustomBuildPy,
|
101
|
-
},
|
102
|
-
package_data={
|
103
|
-
'mkdocs_document_dates': ['hooks/*'],
|
104
|
-
},
|
105
|
-
python_requires=">=3.6",
|
106
|
-
)
|
File without changes
|
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/hooks/pre-commit
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/__init__.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ar.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/de.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/en.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/es.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/fr.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ja.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ko.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/ru.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/zh.py
RENAMED
File without changes
|
{mkdocs_document_dates-1.9.8 → mkdocs_document_dates-1.9.9}/mkdocs_document_dates/lang/zh_tw.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|