mirror of
https://github.com/ilri/dspace-statistics-api.git
synced 2024-11-24 07:10:17 +01:00
4.0 KiB
4.0 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.8.1] - 2018-11-14
Changed
- README.md to recommend using vanilla Python virtual environments and pip instead of pipenv
- Regenerate pipenv environment to capture only direct dependencies
Added
requirements-dev.txt
for installing development packages with pip
[0.8.0] - 2018-11-11
Changed
- Properly handle database connection errors
Added
- API tests with pytest
[0.7.0] - 2018-11-07
Added
- Ability to configure PostgreSQL database port with DATABASE_PORT environment variable (defaults to 5432)
- Hound CI configuration to validate pull requests against PEP 8 code style with Flake8
- Configuration for pipenv
Changed
- Use a database management class with Python context management to automatically open/close connections and cursors
Changed
- Validate code against PEP 8 style guide with Flake8
[0.6.1] - 2018-10-31
Added
- API documentation at root path (/)
[0.6.0] - 2018-10-31
Changed
- Refactor project structure (note breaking changes to API and indexing invocation, see contrib and README.md)
[0.5.2] - 2018-10-28
Changed
- Update library versions in requirements.txt
[0.5.1] - 2018-10-24
Changed
- Use Python's native json instead of ujson
[0.5.0] - 2018-10-24
Added
- Example nginx configuration to README.md
Changed
- Don't initialize Solr connection in API
[0.4.3] - 2018-10-17
Changed
- Use pip install as script for Travis CI
Improved
- Documentation for deployment and testing
[0.4.2] - 2018-10-04
Changed
- README.md introduction and requirements
- Use ujson instead of json
- Iterate directly on SQL cursor in
/items
route
Fixed
- Logic error in SQL for item views
[0.4.1] - 2018-09-26
Changed
- Use
execute_values()
to batch insert records to PostgreSQL
[0.4.0] - 2018-09-25
Fixed
- Invalid OnCalendar syntax in dspace-statistics-indexer.timer
- Major logic error in indexer.py
[0.3.2] - 2018-09-25
Changed
- /item/id route now returns HTTP 404 if an item is not found
[0.3.1] - 2018-09-25
Changed
- Force SolrClient's kazoo dependency to version 2.5.0 to work with Python 3.7
- Add Python 3.7 to Travis CI configuration
[0.3.0] - 2018-09-25
Added
- requirements.txt for pip
- Travis CI build configuration for Python 3.5 and 3.6
- Documentation on using the API
Changed
- The "all items" route from / to /items
[0.2.1] - 2018-09-24
Changed
- Environment settings in example systemd unit files
- Use psycopg2.extras.DictCursor for PostgreSQL connection
[0.2.0] - 2018-09-24
Changed
- Use PostgreSQL instead of SQLite because UPSERT support needs a very new libsqlite3 whereas it's already in PostgreSQL 9.5+
[0.1.0] - 2018-09-24
Changed
- Rename project to "DSpace Statistics API"
- Use read-only database connection in API
- Update systemd units for CGSpace→DSpace rename
- Use UPSERT to simplify database schema and Python logic
Added
- Example systemd service and timer unit for indexer service
- Add top-level route to expose all item statistics
Removed
- Ability to customize SOLR_CORE variable
[0.0.4] - 2018-09-23
Added
- Added example systemd unit file for API
- Added indexer.py to ingest views and downloads from Solr to a SQLite database
Changed
- Refactor Solr configuration and connection
- /item route now expects id as part of the URI instead of a query parameter: /item/id
- View and download stats are now fetched from a SQLite database
[0.0.3] - 2018-09-20
Changed
- Refactor environment variables into config module
- Simplify Solr query for "downloads"
- Optimize Solr query by using rows=0
- Fix Solr queries for item views
[0.0.2] - 2018-09-18
Added
- Ability to get Solr parameters from environment (
SOLR_SERVER
andSOLR_CORE
)
[0.0.1] - 2018-09-18
- Initial release