Eyecite

Latest version: v2.6.4

Safety actively analyzes 638452 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

2.3.3

Features:
- None

Changes:
- The `NonopinionCitation` class has been renamed `UnknownCitation` to better reflect its purpose. This change is purely semantic -- there is no change in how these citations are handled.
- Updates to courts-db

Fixes:
- Initial support for finding short cites with non-standard regexes, including fixing short cite extraction for `Mich.`, `N.Y.2d` and `Pa.`.

2.3.2

Yanked.

2.3.1

Yanked.

2.3.0

Features:
- Greatly improved documentation
- Autogenerated documentation

Changes:
- This version lands one more iteration of the APIs to make them more consistent. Sorry. Hopefully this will be the last of its kind for a while. The need for these changes became obvious when we began generating documentation. The changes are all in name only, not in functionality. So: 1) the `annotate` function is renamed as `annotate_citations`; 2) The `find_citations` module has been renamed `find` (so, do `from eyecite.find import get_citations` instead of `from eyecite.find_citations import get_citations`); 3) The `cleaners` module is now named `clean`; and 4) The `clean_text` function has been moved from `utils` to `clean` (so, do `from eyecite.clean import clean_text` instead of `from eyecite.utils import clean_text`).

2.2.0

Features:
- Adds support for parsing statutes and journals and includes new json files with associated regular expressions and data. This introduces `FullLawCitation` and `FullJournalCitation`.
- Id and Supra citations now have a `metadata.parenethical` attribute, to mirror `FullCaseCitation` objects and make them more useful. [PR 71][71]
- A new tool, `dump_citations()` is added to inspect extracted citations.
- The readme is updated with a new tutorial.
- We now use page-based heuristics while looking up the citation that a pin cite refers to. For example, if an opinion says:

> 1 U.S. 200. blah blah. 2 We Missed This 20. blah blah. Id. at 22.

We might miss the second citation for whatever reason. The pin cite refers to the second citation, not the first, and you can be sure of that because the first citation begins on page 200 and the pin cite references page 22. When resolving the pin cite, we will no longer link it up to the first citation.

Similarly, an analysis of the Caselaw Access Project's dataset indicates that all but the longest ~300 cases are shorter than 150 pages, so we also now ignore pin cites that don't make sense according to that heuristic. For example, this (made up) pin cite is also likely wrong because it's overwhelmingly unlikely that `1 U.S. 200` is 632 pages long:

> 1 U.S. 200 blah blah 1 U.S. 832

The longest case in the Caselaw Access Project collection is [United States v. Philip Morris USA, Inc](https://cite.case.law/f-supp-2d/449/1/), at 986 pages, in case you were wondering. Figures.

[Issue 74][74], [PR 79][79].

Changes:
- To harmonize the API while adding laws and journals, a large API reorganization was completed. See [PR 64][64] for discussion. Here are the details:
- All of the metdata that we capture before and after each citation is now organized into a `metadata` object. Thus, if they make sense for the citation type, all of the following attributes are now in `some_citation.metadata`: `publisher`, `day`, `month`, `antecedent_guess`, `court`, `extra`, `defendant`, `plaintiff`, `parenthetical`, `pin_cite`.
- The `canonical_reporter` attribute is removed from citation objects. It wasn't used much and was duplicated in `edition_guess.reporter.short_name`. Where applicable, use that instead going forward.
- The `reporter_found` attribute is removed from citation objects in favor of `groups['reporter']`.
- Similarly, the `volume` and `page` attributes are removed from citation objects in favor of `groups["volume"]`and `groups["page"]`.
- The `reporter` attribute has been removed from citations and replaced with the `corrected_reporter()` method.
- Similarly, the `base_citation()` method has been renamed as `corrected_citation()`, and the `formatted()` method has been renamed as `corrected_citation_full()`.
- The `do_defendant` and `do_post_citation` arguments to `get_citations` have been removed. They're fast enough to just always do. No need to think about these further.\
- The `resolve_fullcase_citation` parameter in the `resolve_citations` function has been renamed to `resolve_full_citation`.

Fixes:
- Support for reporter citations with `volume=None` is added. Some reporters don't use volumes, for example, "Bankr. L. Rep. (CCH) P12,345".
- Upgrades courts-db subdependency to latest that provides lazy-loading. This should speed up imports of eyecite.

[64]: https://github.com/freelawproject/eyecite/pull/64
[71]: https://github.com/freelawproject/eyecite/pull/71
[74]: https://github.com/freelawproject/eyecite/issues/74
[79]: https://github.com/freelawproject/eyecite/pull/79

2.1.0

Features:
- Adds support for resolving id, supra, and short form citations into
their targets. See readme for details on "Resolving Citations."
- Pin cites are now matched across more citation types.
- Summarizing parentheticals are now included in the match.

Changes:
- The shape of various citation objects has changed to better handle pages and
pin citations. See 61 for details.

Fixes:
- Fixes crashing errors on some partial supra, id, and short form citations.
- Fixes unbalanced tags created by annotation.
- Fixes year parsing to move away from `isdigit`, which can capture
unicode superscript numbers like "123 U.S. 456 (196⁴)"
- Allow years all the way back to 1600 instead of 1754. Anybody got a citation
from before then?
- Page number matching is tightened to be much more strict about how it
matches Roman numerals. This change will prevent some citations from being
matched if they have extremely common Roman numerals. See 56 for a full
discussion.

Page 3 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.