Skip to content

Releases: statedecoded/statedecoded

v1.0

24 Apr 17:11
Compare
Choose a tag to compare

This is the v1.0 release of The State Decoded.

  • Created plugin system.
  • Refactored file exports, added downloads for EPUB, PDF, Word, and others.
  • Replaced PHP's SimpleXML with DomDocument for better handling of mixed content XML on imports.
  • Finish editions support.
  • Cleaned up import process for better visual display and error handling.
  • Added full environment test and import abilities to the command line tool.
  • Lots of visual tweaks and minor fixes.

Editions and Search Improvements

12 May 20:24
Compare
Choose a tag to compare
Pre-release
  • Added support for multiple editions of a code in one database, to store revisions of the code over time.
  • Created a generic search wrapper, fixed several search-related bugs.
  • Moved to using Solarium to interface with Solr, eliminating the need for XSLT to transfer State Decoded XML to Solr XML.
  • Made Solr optional, because getting it installed and running was too great an obstacle for many people. Users can now choose to use a more basic search system, built in MySQL.
  • Versioned the database with migrations, which are stored in includes/migrations.
  • Included a new command line tool, statedecoded. It manages database migrations, and allows importing data from the command line. It is extensible—new tasks can be added in includes/task/.
  • Made various bug fixes and design tweaks.
  • This will certainly break most installations. Review carefully the changes to config-sample.inc.php, class.State-sample.inc.php, and the usage of the statedecoded tool.

Bug Fix and Court Opinions

27 Nov 20:12
Compare
Choose a tag to compare
Pre-release
  • Fixed a bug that was causing bulk downloads to take a very long time to be generated.
  • Added an interface to CourtListener's API to display court decisions relevant to each law.
  • Created a metadata storage function to improve extensibility.
  • Increase the size of tooltip text to improve legibility.
  • Provided a series of small bug fixes.

Design and Search

11 Nov 18:49
Compare
Choose a tag to compare
Design and Search Pre-release
Pre-release
  • Conducted a complete user interface overhaul. Everything is different: SASS-based layout, a responsive design, a pluggable template system, and a great deal more.
  • Conducted a complete overhaul of the code structure, adding a routing system and a permalinks table.
  • Baked in support for Apache Solr, the best text indexing software available, to ingest and analyze all laws, and create a comprehensive search system.
  • Added an API method for search.
  • Created a heavily automated setup process, making it easy to install.
  • Added a rigorous set of environmental tests to make sure that the server has all necessary software.
  • Created support for non-unique section identifiers (e.g., when a § 100 exists in 10 different Titles within a single code), a major overhaul.
  • Packaged a default home page, that looks good for any site right out of the box.
  • Included a sample XSLT, to serve as a starting point for those who have XML that they need to get into The State Decoded's XML format.
  • Tested The State Decoded in a wide variety of server configurations and made many modifications to ensure that it runs well under nearly all common environments.
  • Added an entire workflow to handle new editions of legal codes, important for those codes that are updated frequently.
  • Bulk downloads are automatically created, as plain text, JSON, and XML, along with a page for visitors to download them.
  • Overhauled the administrative interface, adding a great deal of functionality.
  • Builds a sitemap.xml automatically.
  • Included Dublin Core tags in the HTML for each law, to support Zotero and similar software.

Optimizations

02 Jul 20:44
Compare
Choose a tag to compare
Optimizations Pre-release
Pre-release
  • Made extensive optimizations throughout the entire codebase and within MySQL, eliminating all sources of PHP errors of level E_NOTICE and above.
  • Added support for import, storage, and display of arbitrary metadata fields.
  • Added APC support, and implemented caching of API keys, constants, and templates.
  • Added Varnish support, to clear the Varnish cache upon running the importer.
  • Replaced MDB2 with PDO, eliminating an installation requirement and modernizing database connectivity.
  • Replaced HTML Purifier with Tidy, which more servers are likely to have installed already.
  • Added support for port numbers in site URLs, to facilitate development on Vagrant.
  • Provided comments for all non-obvious database columns, to improve extensibility.
  • Normalized all code along PEAR standardards, or at least our own variant of PEAR.
  • Added Dublin Core metadata tags to each law, in case that's useful to somebody for something.
  • Created the infrastructure for an extensible inline help text.
  • Implemented keyboard navigation within laws and structures.
  • Baked in support for Disqus-based commenting on each law page.
  • Implemented a logger and debug system within the parser, to improve reporting and error handling.
  • Added production of bulk plain text and JSON versions of laws.
  • Reduced substantially the parser's memory usage, eliminating out-of-memory errors affecting larger legal codes.