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 CHANGED
@@ -1,7 +1,3 @@
1
- """Version information for rxiv-maker."""
1
+ """Version information."""
2
2
 
3
- __version__ = "1.15.7"
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(f"Warning: Could not create locate 01_MAIN.md in extracted tag files at {target_manuscript_dir} or root", force=True)
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.7
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=SMokkfMA9YCiVIlBz4aeYm6SkxgNSAj_Hdbl5TCMz1E,230
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=q0WTV2PNwF3f8UWFAVBvCt_uGlc6b8j4Y5RMLLuZTz4,23196
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.7.dist-info/METADATA,sha256=sqbLf9V-WQv79DaWv1DQqhiAj0Rqx_OOIVqEWxfT5k8,19656
189
- rxiv_maker-1.15.7.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
190
- rxiv_maker-1.15.7.dist-info/entry_points.txt,sha256=ghCN0hI9A1GlG7QY5F6E-xYPflA8CyS4B6bTQ1YLop0,97
191
- rxiv_maker-1.15.7.dist-info/licenses/LICENSE,sha256=GSZFoPIhWDNJEtSHTQ5dnELN38zFwRiQO2antBezGQk,1093
192
- rxiv_maker-1.15.7.dist-info/RECORD,,
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,,