Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: scieloorg/packtools
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 4.16.1
Choose a base ref
...
head repository: scieloorg/packtools
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 4.16.2
Choose a head ref
  • 11 commits
  • 25 files changed
  • 4 contributors

Commits on Mar 11, 2026

  1. Fix installation docs: replace PyPI references with GitHub archive UR…

    …Ls (#1126)
    
    * Initial plan
    
    * Fix installation instructions: replace PyPI with GitHub archive URLs
    
    Since packtools is not published on PyPI, update all documentation
    to use GitHub archive URLs for installation instead of pip install
    from PyPI. Also update the git protocol URL to HTTPS and remove
    the outdated Windows installation section referencing Python 2.7.
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Add guidance to check latest version at GitHub releases page
    
    Direct users to the GitHub releases page to find the latest version
    before running pip install, since the version in the URL example will
    become outdated. Also fix scripts/README.rst to link directly to the
    scripts directory.
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Copilot and robertatakenaka authored Mar 11, 2026
    Configuration menu
    Copy the full SHA
    63d3df8 View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2026

  1. Implementar validações do elemento <funding-group> e corrigir validaç…

    …ão individual por grupo (#1094)
    
    * Initial plan
    
    * Initial analysis: existing funding_group validation structure identified
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Add 7 new validation methods for funding-group SPS 1.10 compliance with comprehensive tests
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix docstrings: clarify 'descendants' vs 'children' for XPath behavior
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Improve test assertions: use assertEqual for clearer failure messages
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix typo: 'Financing' to 'Funding' in test docstring
    
    * Integrate new funding-group validations into orchestrator (xml_validations.py)
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix pre-existing test failures: update tests to match current validation behavior
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix validate_funding_statement_presence to check each funding-group individually (Case C1)
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * fix(funding_group): corrige validate_funding_statement para iterar por nó XPath
    
    Reescreve validate_funding_statement para iterar diretamente sobre os
    nós
    .//article-meta/funding-group via XPath, em vez de statements_by_lang.
    
    Problemas corrigidos:
    - C6: segundo <funding-group> sem <funding-statement> era silenciado,
    pois
      statements_by_lang produz uma entrada por idioma e findtext() retorna
      apenas o primeiro match; agora cada nó é avaliado individualmente.
    - C7: textos de referência dos <fn> eram concatenados com whitespace
    bruto
    no advice string; aplicada normalização " ".join(v.split()) antes do
    uso.
    
    Adiciona TestValidateFundingStatement com quatro casos: detecção do
    segundo
    funding-group sem statement (C6), ausência de whitespace no advice (C7),
    statement válido com similaridade >= 0.8, e early-exit sem award-groups.
    
    * fix(xml_validations): corrige chave funding_statement_error_level no orquestrador
    
    * fix(funding_group): corrige falso-negativo, escopo de parent e legibilidade em validate_funding_statement
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Co-authored-by: Rossi-Luciano <[email protected]>
    3 people authored Mar 16, 2026
    Configuration menu
    Copy the full SHA
    76c30dc View commit details
    Browse the repository at this point in the history
  2. Implementar validações de <graphic> e <inline-graphic> conforme SPS 1…

    ….10 (#1095)
    
    * Initial plan
    
    * Analysis complete: identified gaps in graphic validation
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Implement graphic and inline-graphic validation per SPS 1.10
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Address code review feedback: improve test naming consistency
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Integrate GraphicValidation into validation pipeline
    
    - Add XMLGraphicValidation class to wrap GraphicValidation for pipeline integration
    - Create graphic_rules.json with validation parameters for graphic/inline-graphic elements
    - Add validate_graphics() function to xml_validations.py
    - Register graphic validation group in xml_validator.py validate_xml_content()
    
    This resolves the issue where GraphicValidation was defined but never called.
    Now graphic validations will run as part of the standard validation workflow.
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Remove duplicate accessibility validation from GraphicValidation
    
    GraphicValidation was calling self.accessibility_validation.validate() which caused
    duplicate entries in validation reports because XMLAccessibilityDataValidation also
    processes all graphic elements in the pipeline.
    
    Changes:
    - Removed accessibility validation call from GraphicValidation.validate()
    - Updated docstring to clarify that accessibility is handled separately
    - Added comment explaining why accessibility validation is not included
    
    This resolves the issue where accessibility errors appeared 2-3 times with different
    subjects (graphic, accessibility, fig) in validation reports.
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * fix(graphic): protege validate_xlink_href contra None e limpa regras/docs
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Co-authored-by: Luciano <[email protected]>
    Co-authored-by: Rossi-Luciano <[email protected]>
    4 people authored Mar 16, 2026
    Configuration menu
    Copy the full SHA
    71c5491 View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2026

  1. Implementar validações para elemento <history> conforme SPS 1.10 e …

    …integrar ao orquestrador (#1096)
    
    * Initial plan
    
    * Add history validation implementation and comprehensive tests
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix duplicate assertions in test file
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Integrate history validation into orchestrator (xml_validator and xml_validations)
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * fix(history): restringe validações por container e corrige convenção de parent info
    
    * Corrige testes de integração
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Co-authored-by: Rossi-Luciano <[email protected]>
    3 people authored Mar 17, 2026
    Configuration menu
    Copy the full SHA
    ba8c506 View commit details
    Browse the repository at this point in the history
  2. Implementar validações do elemento <issue> conforme SPS 1.10 e corr…

    …igir testes (#1097)
    
    * Initial plan
    
    * Add new issue element validations for SPS 1.10 compliance
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Remove accidentally added src/ submodule
    
    * Fix validation logic based on code review feedback
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Refactor supplement validation and remove unused test variables
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix supplement nomenclature validation to avoid false positives
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix test assertions and add missing test coverage
    
    - Fix test_validate_article_issue_out_of_pattern_value to match actual behavior
    - Fix test_validate_article_issue to expect 11 non-None results (not 10)
    - Fix pagination test assertions to match actual module output strings
    - Fix test_validation_e_location to test elocation-id present case (was duplicate)
    - Rename test_validation_pages_and_e_location_exists_fail to test_validation_elocation_and_pages_both_present_valid
    - Remove unused expected dicts from test_validate_article_issue_number_start_with_zero and test_validate_article_issue_number_value_is_not_numeric
    - Rename test_suppl_matches to test_suppl_invalid_non_alphanumeric (more accurate)
    - Rename test_suppl_no_matches to test_suppl_valid_alphanumeric (more accurate)
    - Add missing test coverage:
      - VolumeZeroTest for volume=0 validation
      - ExpectedIssuesTest for registered/unregistered issues and missing journal_data
      - PaginationAdditionalTest for elocation-only, fpage/lpage-only, and AOP cases
      - SpecialNomenclatureAdditionalTest for nspe and noesp rejection
    
    Addresses all issues raised in PR review comments.
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Fix advice string bug in validate_issue_format()
    
    - Fixed f-string typo: "by with" → "with"
    - Fixed object interpolation: use self.article_issue.issue (string) instead of self.article_issue (object)
    - Fixed template: removed </issue> closing tag from advice string
    - Advice now correctly displays: "Replace {issue_value} in <article-meta><issue> with one of {expected}"
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * fix(front_articlemeta_issue): corrige detecção de zeros à esquerda em tokens alfanuméricos e falsos positivos na nomenclatura especial; atualiza fixtures de teste para campos i18n de build_response
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Co-authored-by: Luciano <[email protected]>
    Co-authored-by: Rossi-Luciano <[email protected]>
    4 people authored Mar 17, 2026
    Configuration menu
    Copy the full SHA
    fc55143 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2026

  1. Configuration menu
    Copy the full SHA
    e758464 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2026

  1. fix(htmlgenerator): corrige seleção e renderização de títulos (#1141)

    - v2.0/config-labels.xsl: restringe a seleção apenas ao primeiro elemento title (title[1]).
    
    - v3.0/article-meta-abstract.xsl: altera a lógica para ignorar o title apenas se for o primeiro elemento, preservando outros títulos dentro do corpo do resumo.
    robertatakenaka authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    5c72bf7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2cc6038 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    850cfd4 View commit details
    Browse the repository at this point in the history
  4. Implementar validações para elemento <list> (#1099)

    * Initial plan
    
    * Implement list element validation with model, validation and tests
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Address code review: simplify redundant condition check
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Integrate list validation into orchestrators (xml_validations.py, xml_validator.py)
    
    Co-authored-by: robertatakenaka <[email protected]>
    
    * Corrige nível de validação de "OK" para "INFO" (recomendação)
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: robertatakenaka <[email protected]>
    Co-authored-by: Luciano <[email protected]>
    Co-authored-by: Rossi-Luciano <[email protected]>
    4 people authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    a9836d8 View commit details
    Browse the repository at this point in the history
  5. Refactor data availability section: add doc-version mode, display-dat…

    …a-availability with anchor links, and fn rendering templates (#1145)
    robertatakenaka authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    05facf0 View commit details
    Browse the repository at this point in the history
Loading