rxiv-maker 1.15.7__py3-none-any.whl → 1.15.9__py3-none-any.whl
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.
- rxiv_maker/__version__.py +2 -6
- rxiv_maker/engines/operations/track_changes.py +42 -10
- {rxiv_maker-1.15.7.dist-info → rxiv_maker-1.15.9.dist-info}/METADATA +1 -1
- {rxiv_maker-1.15.7.dist-info → rxiv_maker-1.15.9.dist-info}/RECORD +7 -7
- {rxiv_maker-1.15.7.dist-info → rxiv_maker-1.15.9.dist-info}/WHEEL +0 -0
- {rxiv_maker-1.15.7.dist-info → rxiv_maker-1.15.9.dist-info}/entry_points.txt +0 -0
- {rxiv_maker-1.15.7.dist-info → rxiv_maker-1.15.9.dist-info}/licenses/LICENSE +0 -0
rxiv_maker/__version__.py
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
"""Version information
|
|
1
|
+
"""Version information."""
|
|
2
2
|
|
|
3
|
-
__version__ = "1.15.
|
|
4
|
-
__version_tuple__ = (1, 15, 7)
|
|
5
|
-
|
|
6
|
-
# Note: Docker images v1.8+ use mermaid.ink API for diagram processing
|
|
7
|
-
# This improves cross-platform compatibility and performance
|
|
3
|
+
__version__ = "1.15.9"
|
|
@@ -150,21 +150,21 @@ class TrackChangesManager:
|
|
|
150
150
|
# Use git archive to extract the entire repository state at the tag
|
|
151
151
|
# This ensures all helper scripts, data files, and assets are present
|
|
152
152
|
# pipe git archive output to tar extraction
|
|
153
|
-
|
|
153
|
+
|
|
154
154
|
# Note: We need to run this from the repo root or use the correct path
|
|
155
155
|
# The current working directory is expected to be the manuscript repo root
|
|
156
|
-
|
|
156
|
+
|
|
157
157
|
archive_cmd = ["git", "archive", "--format=tar", self.git_tag]
|
|
158
158
|
tar_cmd = ["tar", "-x", "-C", str(tag_manuscript_dir)]
|
|
159
|
-
|
|
159
|
+
|
|
160
160
|
# Create pipe
|
|
161
161
|
ps = subprocess.Popen(archive_cmd, stdout=subprocess.PIPE, cwd=self.manuscript_path.parent)
|
|
162
162
|
subprocess.check_call(tar_cmd, stdin=ps.stdout)
|
|
163
163
|
ps.wait()
|
|
164
|
-
|
|
164
|
+
|
|
165
165
|
if ps.returncode != 0:
|
|
166
166
|
raise subprocess.CalledProcessError(ps.returncode, archive_cmd)
|
|
167
|
-
|
|
167
|
+
|
|
168
168
|
self.log(f"Extracted full repository from tag {self.git_tag}")
|
|
169
169
|
return True
|
|
170
170
|
|
|
@@ -200,6 +200,11 @@ class TrackChangesManager:
|
|
|
200
200
|
str(latex_output_dir),
|
|
201
201
|
]
|
|
202
202
|
|
|
203
|
+
# Pass config file explicitly if it exists in the manuscript directory
|
|
204
|
+
config_path = manuscript_dir / "00_CONFIG.yml"
|
|
205
|
+
if config_path.exists():
|
|
206
|
+
cmd.extend(["--config", str(config_path)])
|
|
207
|
+
|
|
203
208
|
# Set environment variables like BuildManager does
|
|
204
209
|
env = os.environ.copy()
|
|
205
210
|
env["MANUSCRIPT_PATH"] = str(manuscript_dir)
|
|
@@ -209,6 +214,18 @@ class TrackChangesManager:
|
|
|
209
214
|
if self.verbose:
|
|
210
215
|
self.log(f"LaTeX generation output: {result.stdout}")
|
|
211
216
|
|
|
217
|
+
# Post-process tag LaTeX to use distinct figure path
|
|
218
|
+
if output_subdir == "tag":
|
|
219
|
+
tex_file = latex_output_dir / f"{manuscript_dir.name}.tex"
|
|
220
|
+
if tex_file.exists():
|
|
221
|
+
content = tex_file.read_text(encoding="utf-8")
|
|
222
|
+
# Replace standard Figure path with tag specific path
|
|
223
|
+
# Handle both Figures/ (standard) and FIGURES/ (source) just in case
|
|
224
|
+
content = content.replace("{Figures/", "{Figures_tag/")
|
|
225
|
+
content = content.replace("{FIGURES/", "{Figures_tag/")
|
|
226
|
+
tex_file.write_text(content, encoding="utf-8")
|
|
227
|
+
self.log(f"Updated figure paths in {tex_file.name} to use Figures_tag/")
|
|
228
|
+
|
|
212
229
|
return True
|
|
213
230
|
|
|
214
231
|
except subprocess.CalledProcessError as e:
|
|
@@ -460,25 +477,40 @@ class TrackChangesManager:
|
|
|
460
477
|
return False
|
|
461
478
|
|
|
462
479
|
self.log("Generating LaTeX files for tag version...")
|
|
463
|
-
|
|
480
|
+
|
|
464
481
|
# Locate the manuscript directory within the extracted tag
|
|
465
482
|
# Try the same directory name as the current manuscript
|
|
466
483
|
target_manuscript_dir = tag_manuscript_dir / self.manuscript_path.name
|
|
467
|
-
|
|
484
|
+
|
|
468
485
|
# If not found there, check the root (in case the repo IS the manuscript dir)
|
|
469
486
|
if not (target_manuscript_dir / "01_MAIN.md").exists():
|
|
470
487
|
if (tag_manuscript_dir / "01_MAIN.md").exists():
|
|
471
488
|
target_manuscript_dir = tag_manuscript_dir
|
|
472
489
|
else:
|
|
473
|
-
self.log(
|
|
490
|
+
self.log(
|
|
491
|
+
f"Warning: Could not create locate 01_MAIN.md in extracted tag files at {target_manuscript_dir} or root",
|
|
492
|
+
force=True,
|
|
493
|
+
)
|
|
474
494
|
# We continue with the guess, though it will likely fail in generation
|
|
475
|
-
|
|
495
|
+
|
|
476
496
|
if not self.generate_latex_files(target_manuscript_dir, "tag"):
|
|
477
497
|
return False
|
|
478
498
|
|
|
499
|
+
# Copy tag figures to output/Figures_tag
|
|
500
|
+
tag_figures_src = target_manuscript_dir / "FIGURES"
|
|
501
|
+
tag_figures_dst = self.output_dir / "Figures_tag"
|
|
502
|
+
|
|
503
|
+
if tag_figures_src.exists():
|
|
504
|
+
if tag_figures_dst.exists():
|
|
505
|
+
shutil.rmtree(tag_figures_dst)
|
|
506
|
+
shutil.copytree(tag_figures_src, tag_figures_dst)
|
|
507
|
+
self.log("Copied tag figures to Figures_tag directory")
|
|
508
|
+
else:
|
|
509
|
+
self.log("Warning: No FIGURES directory found in tag extraction", force=True)
|
|
510
|
+
|
|
479
511
|
# Find the main LaTeX files
|
|
480
512
|
current_tex = self.output_dir / "current" / f"{self.manuscript_path.name}.tex"
|
|
481
|
-
|
|
513
|
+
|
|
482
514
|
# The generated tex file will be named after the manuscript directory name (MANUSCRIPT -> MANUSCRIPT.tex)
|
|
483
515
|
# regardless of whether it's in the tag extraction or current
|
|
484
516
|
tag_tex = self.output_dir / "tag" / f"{self.manuscript_path.name}.tex"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rxiv-maker
|
|
3
|
-
Version: 1.15.
|
|
3
|
+
Version: 1.15.9
|
|
4
4
|
Summary: Write scientific preprints in Markdown. Generate publication-ready PDFs efficiently.
|
|
5
5
|
Project-URL: Homepage, https://github.com/HenriquesLab/rxiv-maker
|
|
6
6
|
Project-URL: Documentation, https://github.com/HenriquesLab/rxiv-maker#readme
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
rxiv_maker/__init__.py,sha256=p04JYC5ZhP6dLXkoWVlKNyiRvsDE1a4C88f9q4xO3tA,3268
|
|
2
|
-
rxiv_maker/__version__.py,sha256=
|
|
2
|
+
rxiv_maker/__version__.py,sha256=Jie3UBhYYz9xfwQlIZS6rCw1H9FHwp9v16l4VwSxKVc,51
|
|
3
3
|
rxiv_maker/rxiv_maker_cli.py,sha256=9Lu_mhFPXwx5jzAR6StCNxwCm_fkmP5qiOYdNuh_AwI,120
|
|
4
4
|
rxiv_maker/validate.py,sha256=AIzgP59KbCQJqC9WIGfUdVv0xI6ud9g1fFznQkaGz5Q,9373
|
|
5
5
|
rxiv_maker/cli/__init__.py,sha256=Jw0DTFUSofN-02xpVrt1UUzRcgH5NNd-GPNidhmNwpU,77
|
|
@@ -100,7 +100,7 @@ rxiv_maker/engines/operations/generate_figures.py,sha256=3oIuS0wryO9WpPZ3UD2qm0Y
|
|
|
100
100
|
rxiv_maker/engines/operations/generate_preprint.py,sha256=EtWSL1-LGm8N61_CLABSswgvVw61haEx8m4727pdzgM,2650
|
|
101
101
|
rxiv_maker/engines/operations/prepare_arxiv.py,sha256=cd0JN5IO-Wy9T8ab75eibyaA8_K8Gpwrz2F-95OMnx4,21551
|
|
102
102
|
rxiv_maker/engines/operations/setup_environment.py,sha256=gERuThHTldH0YqgXn85995deHBP6csY1ZhCNgU6-vFg,12691
|
|
103
|
-
rxiv_maker/engines/operations/track_changes.py,sha256=
|
|
103
|
+
rxiv_maker/engines/operations/track_changes.py,sha256=XMU1x31nwLIwbi1lwYJn333O7Tx9llQfBv8yY9O_Dww,24734
|
|
104
104
|
rxiv_maker/engines/operations/validate.py,sha256=OVmtRVtG-r1hoA8IqYaNC-ijN1a5ixM3X5Z8Gda-O2M,17142
|
|
105
105
|
rxiv_maker/engines/operations/validate_pdf.py,sha256=qyrtL752Uap3i6ntQheY570soVjFZRJe8ANrw5AvHFs,5899
|
|
106
106
|
rxiv_maker/exporters/__init__.py,sha256=NcTD1SDb8tTgsHhCS1A7TVEZncyWbDRTa6sJIdLqcsE,350
|
|
@@ -185,8 +185,8 @@ rxiv_maker/validators/doi/metadata_comparator.py,sha256=euqHhKP5sHQAdZbdoAahUn6Y
|
|
|
185
185
|
rxiv_maker/tex/template.tex,sha256=zrJ3aFfu8j9zkg1l375eE9w-j42P3rz16wMD3dSgi1I,1354
|
|
186
186
|
rxiv_maker/tex/style/rxiv_maker_style.bst,sha256=jbVqrJgAm6F88cow5vtZuPBwwmlcYykclTm8RvZIo6Y,24281
|
|
187
187
|
rxiv_maker/tex/style/rxiv_maker_style.cls,sha256=F2qtnS9mI6SwOIaVH76egXZkB2_GzbH4gCTG_ZcfCDQ,24253
|
|
188
|
-
rxiv_maker-1.15.
|
|
189
|
-
rxiv_maker-1.15.
|
|
190
|
-
rxiv_maker-1.15.
|
|
191
|
-
rxiv_maker-1.15.
|
|
192
|
-
rxiv_maker-1.15.
|
|
188
|
+
rxiv_maker-1.15.9.dist-info/METADATA,sha256=pRVBi_qnjSNaLZl3Lz7D0RsNJ4gaMp3SnFxp-4e-TA8,19656
|
|
189
|
+
rxiv_maker-1.15.9.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
190
|
+
rxiv_maker-1.15.9.dist-info/entry_points.txt,sha256=ghCN0hI9A1GlG7QY5F6E-xYPflA8CyS4B6bTQ1YLop0,97
|
|
191
|
+
rxiv_maker-1.15.9.dist-info/licenses/LICENSE,sha256=GSZFoPIhWDNJEtSHTQ5dnELN38zFwRiQO2antBezGQk,1093
|
|
192
|
+
rxiv_maker-1.15.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|