rxiv-maker 1.16.4__py3-none-any.whl → 1.16.5__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,3 +1,3 @@
1
1
  """Version information."""
2
2
 
3
- __version__ = "1.16.4"
3
+ __version__ = "1.16.5"
@@ -1,9 +1,10 @@
1
1
  """Upgrade command for rxiv-maker CLI."""
2
2
 
3
+ import subprocess # nosec B404 - needed for executing upgrade commands
3
4
  import sys
4
5
 
5
6
  import click
6
- from henriqueslab_updater import execute_upgrade, force_update_check
7
+ from henriqueslab_updater import force_update_check
7
8
  from rich.console import Console
8
9
 
9
10
  from ... import __version__
@@ -119,11 +120,32 @@ def upgrade(ctx: click.Context, yes: bool, check_only: bool) -> None:
119
120
  console.print("❌ Upgrade cancelled", style="yellow")
120
121
  sys.exit(0)
121
122
 
122
- # Execute upgrade command using centralized executor
123
+ # Execute upgrade command directly
123
124
  console.print("\n🚀 Upgrading rxiv-maker...", style="blue")
124
125
  console.print(f" Running: {upgrade_cmd}", style="dim")
125
126
 
126
- success, error = execute_upgrade(upgrade_cmd, show_output=True, timeout=300)
127
+ try:
128
+ # Split command for safer execution without shell=True
129
+ import shlex
130
+
131
+ cmd_parts = shlex.split(upgrade_cmd)
132
+ result = subprocess.run(
133
+ cmd_parts,
134
+ check=True,
135
+ capture_output=False,
136
+ timeout=300,
137
+ ) # nosec B603 - upgrade_cmd comes from trusted install_detector module
138
+ success = result.returncode == 0
139
+ error = None
140
+ except subprocess.CalledProcessError as e:
141
+ success = False
142
+ error = f"Command failed with exit code {e.returncode}"
143
+ except subprocess.TimeoutExpired:
144
+ success = False
145
+ error = "Upgrade timed out after 5 minutes"
146
+ except Exception as e:
147
+ success = False
148
+ error = str(e)
127
149
 
128
150
  if success:
129
151
  console.print("\n✅ Upgrade completed successfully!", style="green")
@@ -163,38 +163,36 @@ citation_style: "numbered"
163
163
  """Get default main manuscript template."""
164
164
  return """## Abstract
165
165
 
166
- Your manuscript abstract goes here. Provide a comprehensive summary of your work,
167
- key findings, and significance to the field.
166
+ Your manuscript abstract goes here. Provide a comprehensive summary of your work, including the main problem you are addressing, your approach, key findings, and the significance of your results to the field. The abstract should be self-contained and provide readers with a clear understanding of your contribution. Aim for 150-300 words that capture the essence of your research.
168
167
 
169
168
  ## Introduction
170
169
 
171
- Introduce your topic, provide background, and state your objectives.
170
+ Introduce your research topic by providing essential background context and motivation. Start with the broader significance of your field, then narrow down to the specific problem your work addresses. Clearly state your research objectives and how your approach differs from or builds upon existing work in the literature [@smith2023]. Explain why this research is important and what gap in knowledge it fills.
172
171
 
173
172
  ## Methods
174
173
 
175
- Describe your methods, approaches, and techniques.
176
- (For reviews, you can remove this section or describe your literature search strategy)
174
+ Describe your experimental design, data collection procedures, and analytical techniques in sufficient detail to allow replication of your work. For computational studies, specify software versions, parameters, and algorithms used. For experimental work, detail protocols, sample preparation, and measurement procedures [@johnson2022]. Include information about statistical methods and data validation approaches. If you are writing a review article, you may remove this section or describe your literature search and selection strategy.
177
175
 
178
176
  ## Results
179
177
 
180
- Present your findings with supporting figures and tables.
181
- (For reviews, you can remove this section or rename it to organize your discussion)
178
+ Present your findings in a logical sequence, using figures and tables to support your narrative. Start with an overview of the key results, then provide detailed analyses.
182
179
 
183
- ![](FIGURES/Figure__example.mmd)
184
- {{#fig:example}} **Example Figure.** This is an example Mermaid diagram that will be automatically converted to PDF during build.
180
+ ![A flowchart showing the progression from data input through processing to results output](FIGURES/Figure__example.mmd)
181
+ {{#fig:example}} **Example workflow diagram.** This Mermaid diagram illustrates a typical data processing pipeline, automatically converted to PDF during manuscript compilation. The diagram shows three stages: data input (gray), processing and analysis (red), and results output (green).
182
+
183
+ Our analysis demonstrates that the methodology produces consistent results across different datasets. The workflow presented in @fig:example provides a schematic overview of the processing pipeline. These findings build upon previous work [@smith2023; @johnson2022] while introducing novel approaches to data analysis.
185
184
 
186
185
  ## Discussion
187
186
 
188
- Interpret your findings, discuss implications, and acknowledge limitations.
187
+ Interpret your results in the context of existing literature and theory. Discuss how your findings support or challenge current understanding in the field. Address the implications of your work for theory, practice, or policy. Acknowledge limitations of your study, such as sample size constraints, methodological limitations, or scope boundaries. Suggest directions for future research that build upon your findings.
189
188
 
190
189
  ## Conclusions
191
190
 
192
- Summarize your key conclusions and broader impact.
191
+ Summarize your key findings and their significance. Reinforce the main contributions of your work and their broader impact on the field. Keep this section concise but impactful, leaving readers with a clear understanding of what your research has accomplished and why it matters.
193
192
 
194
193
  ## References
195
194
 
196
- Citations will be automatically formatted. Add entries to 03_REFERENCES.bib and
197
- reference them in your text: [@smith2023; @johnson2022]
195
+ Citations are automatically formatted from 03_REFERENCES.bib. Reference works using citation keys like [@smith2023] for single citations or [@smith2023; @johnson2022] for multiple citations.
198
196
  """
199
197
 
200
198
  def _get_default_supplementary_template(self) -> str:
@@ -225,34 +223,60 @@ Information about code repositories, data availability, and reproducibility reso
225
223
  def _get_default_bibliography_template(self) -> str:
226
224
  """Get default bibliography template."""
227
225
  return """@article{{smith2023,
228
- title = {{Example Research Article}},
229
- author = {{Smith, John and Doe, Jane}},
230
- journal = {{Nature}},
231
- volume = {{123}},
232
- pages = {{456-789}},
226
+ title = {{Advances in computational biology: methods and applications}},
227
+ author = {{Smith, John A. and Doe, Jane M. and Williams, Robert L.}},
228
+ journal = {{Nature Methods}},
229
+ volume = {{20}},
230
+ number = {{8}},
231
+ pages = {{1234--1245}},
233
232
  year = {{2023}},
234
- doi = {{10.1038/nature12345}}
233
+ publisher = {{Springer Nature}},
234
+ doi = {{10.1038/s41592-023-01234-5}}
235
235
  }}
236
236
 
237
237
  @article{{johnson2022,
238
- title = {{Another Important Study}},
239
- author = {{Johnson, Alice and Brown, Bob}},
238
+ title = {{Machine learning approaches for biological data analysis}},
239
+ author = {{Johnson, Alice B. and Brown, Robert C. and Davis, Sarah K.}},
240
240
  journal = {{Cell}},
241
241
  volume = {{185}},
242
- pages = {{1234-1245}},
242
+ number = {{12}},
243
+ pages = {{2156--2170}},
243
244
  year = {{2022}},
244
- doi = {{10.1016/j.cell.2022.01.001}}
245
+ publisher = {{Elsevier}},
246
+ doi = {{10.1016/j.cell.2022.05.015}}
247
+ }}
248
+
249
+ @article{{wilson2024,
250
+ title = {{Reproducible research practices in modern science}},
251
+ author = {{Wilson, Greg and Jones, Emily R.}},
252
+ journal = {{PLOS Computational Biology}},
253
+ volume = {{20}},
254
+ number = {{3}},
255
+ pages = {{e1011234}},
256
+ year = {{2024}},
257
+ publisher = {{Public Library of Science}},
258
+ doi = {{10.1371/journal.pcbi.1011234}}
245
259
  }}
246
260
  """
247
261
 
248
262
  def _get_default_figure_template(self) -> str:
249
263
  """Get default figure template (Mermaid diagram)."""
250
- return """graph TD
251
- A[Start] --> B{{Decision}}
252
- B -->|Yes| C[Process 1]
253
- B -->|No| D[Process 2]
254
- C --> E[End]
255
- D --> E
264
+ return """---
265
+ config:
266
+ look: neo
267
+ theme: neo
268
+ ---
269
+ flowchart LR
270
+ A["<b>DATA</b><br/>Input"] --> B["<b>PROCESSING</b><br/>Analysis"]
271
+ B --> C["<b>RESULTS</b><br/>Output"]
272
+
273
+ classDef inputStyle fill:#1f2937,stroke:#374151,stroke-width:3px,color:#ffffff
274
+ classDef processStyle fill:#dc2626,stroke:#991b1b,stroke-width:3px,color:#ffffff
275
+ classDef outputStyle fill:#059669,stroke:#047857,stroke-width:3px,color:#ffffff
276
+
277
+ class A inputStyle
278
+ class B processStyle
279
+ class C outputStyle
256
280
  """
257
281
 
258
282
  def _get_default_gitignore_template(self) -> str:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rxiv-maker
3
- Version: 1.16.4
3
+ Version: 1.16.5
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=9jjbeowk49aKHUW-4TiyTbFpmPEuycMrStL-jO4XzP8,51
2
+ rxiv_maker/__version__.py,sha256=scH9t8S4Yy0pZ0rKdWKP1B1m1lQmPo9FwrixAZxLlR0,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
@@ -29,7 +29,7 @@ rxiv_maker/cli/commands/repos.py,sha256=SQ9nuhSkyHKFPYn_TrOxyQoGdDRI-OBOgUSGJpRu
29
29
  rxiv_maker/cli/commands/repos_search.py,sha256=6sUMvyHlHEX1p88hPtu0_Hf8z6JpOinJ53l9ZI-rirc,7743
30
30
  rxiv_maker/cli/commands/setup.py,sha256=9ue4bDETpSPGVkWFDfpuTDsysax5-QKGxmt42Gb7oeU,2294
31
31
  rxiv_maker/cli/commands/track_changes.py,sha256=omf_77A7htRSa8naUEPTTtUTxrSwMpzHFOuU0j1xAJw,1163
32
- rxiv_maker/cli/commands/upgrade.py,sha256=Cn2559onuCPLjqSnNDaWzS_40sPwpnRU_RLEZW5Xk4Y,5649
32
+ rxiv_maker/cli/commands/upgrade.py,sha256=VJ1snYyLGrb5-snF4olfsMwfQsuKkAbXEr8aQ88WYYE,6349
33
33
  rxiv_maker/cli/commands/validate.py,sha256=3JghFQevJvQDQII4p_QWbQXMEUyDpM-t9-WxtaT4edo,1629
34
34
  rxiv_maker/cli/commands/version.py,sha256=VMlfSxxsrZH02d24MXLUDZfHBW39yZRpWxUpMhQ-X0Y,2737
35
35
  rxiv_maker/cli/framework/__init__.py,sha256=4FPXdP8J6v4eeEn46mwY0VtnwxjR1jnW_kTrXykQlQs,2704
@@ -141,7 +141,7 @@ rxiv_maker/services/publication_service.py,sha256=0p8yQ1jrY3RHwCkzTEl_sAbWYTafRk
141
141
  rxiv_maker/services/validation_service.py,sha256=eWg14NqJu6LzyJBgeXkTaVZAlX4wYFX8ZEvSR5hMx7U,14619
142
142
  rxiv_maker/templates/__init__.py,sha256=UTet1pYPkPdgvrLw-wwaY-PAgdjGJasAi_hdyIh0J8s,562
143
143
  rxiv_maker/templates/manager.py,sha256=HlI7Qb52866Okf4k1aRh0fUy9heOSNGjMQJtrCdL3Xk,6131
144
- rxiv_maker/templates/registry.py,sha256=L8M7M9Yhf2P0SQEghmCXufWfsGQhaW1TYjdkUw-wvDw,12993
144
+ rxiv_maker/templates/registry.py,sha256=mRKUhuNg1VWzryEV-l6tD2pmdQG6b_JDh3_jtrR_K48,16200
145
145
  rxiv_maker/tex/python_execution_section.tex,sha256=pHz6NGfZN4ViBo6rInUO5FAuk81sV_Ppqszrvl00w_4,2218
146
146
  rxiv_maker/utils/__init__.py,sha256=4ya5VR8jqRqUChlnUeMeeetOuWV-gIvjPwcE1u_1OnI,1540
147
147
  rxiv_maker/utils/author_name_formatter.py,sha256=UjvarbyQm89EUIYqckygx3g37o-EcNyvipBtY8GJDxs,10222
@@ -187,8 +187,8 @@ rxiv_maker/validators/doi/metadata_comparator.py,sha256=euqHhKP5sHQAdZbdoAahUn6Y
187
187
  rxiv_maker/tex/template.tex,sha256=zrJ3aFfu8j9zkg1l375eE9w-j42P3rz16wMD3dSgi1I,1354
188
188
  rxiv_maker/tex/style/rxiv_maker_style.bst,sha256=jbVqrJgAm6F88cow5vtZuPBwwmlcYykclTm8RvZIo6Y,24281
189
189
  rxiv_maker/tex/style/rxiv_maker_style.cls,sha256=F2qtnS9mI6SwOIaVH76egXZkB2_GzbH4gCTG_ZcfCDQ,24253
190
- rxiv_maker-1.16.4.dist-info/METADATA,sha256=aEslQxuVrwfw0lXsEVzJTwxA_4vfAm6OrADsnYMhdAU,17950
191
- rxiv_maker-1.16.4.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
192
- rxiv_maker-1.16.4.dist-info/entry_points.txt,sha256=ghCN0hI9A1GlG7QY5F6E-xYPflA8CyS4B6bTQ1YLop0,97
193
- rxiv_maker-1.16.4.dist-info/licenses/LICENSE,sha256=GSZFoPIhWDNJEtSHTQ5dnELN38zFwRiQO2antBezGQk,1093
194
- rxiv_maker-1.16.4.dist-info/RECORD,,
190
+ rxiv_maker-1.16.5.dist-info/METADATA,sha256=2U4BcFzbnYaEhzXTOgtUCk13H5w_J_RyoCZ5lQQjaGE,17950
191
+ rxiv_maker-1.16.5.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
192
+ rxiv_maker-1.16.5.dist-info/entry_points.txt,sha256=ghCN0hI9A1GlG7QY5F6E-xYPflA8CyS4B6bTQ1YLop0,97
193
+ rxiv_maker-1.16.5.dist-info/licenses/LICENSE,sha256=GSZFoPIhWDNJEtSHTQ5dnELN38zFwRiQO2antBezGQk,1093
194
+ rxiv_maker-1.16.5.dist-info/RECORD,,