Unreleased (latest)
- Nothing yet.
2.0.0 (2020-07-31)
- Add
/ui
route redirect to frontpage when UI is enabled. - Add
/json
route information into generated Swagger API documentation. - Add tag description into generated Swagger API documentation.
- Add more usage details to start Magpie web application in documentation.
- Add database migration for new
discoverable
column of groups. - Allow logged user to update its own information both via API and UI (relates to #170).
- Allow logged user of any access-level to register by itself to
discoverable
groups. - Change some UI CSS for certain pages to improve table readability.
- Add UI page to render error details from API responses (instead of default server-side HTML error rendering).
- Add
MAGPIE_UI_THEME
with new default blue theme and legacy green theme (with few improvements). - Add more validation and inputs parameters to update
Group
information. - Add UI input fields to allow administrator to update group description and group discoverability.
- Allow combined configuration files (
providers
,permissions
,users
andgroups
sections) with resolution of inter-references between them. File can be specified withMAGPIE_CONFIG_PATH
environment variable ormagpie.config_path
setting (example inconfigs
). - Add configurable
User
creation parameters upon Magpie application startup through configuration files (fixes #47 and #204). - Add disabled checkboxes for UI rendering of non-editable items to avoid user doing operations that will always be blocked by corresponding API validation (relates to #164).
- Add more tests to validate forbidden operations such as update or delete of reserved
User
andGroup
details. - Add active version tag at bottom of UI pages (same version as returned by API
/version
route). - Enforce configuration parameters
MAGPIE_SECRET
,MAGPIE_ADMIN_USER
andMAGPIE_ADMIN_PASSWORD
by explicitly defined values (either by environment variable or INI settings) to avoid using defaults for security purposes. - Change CLI helper
create_users
tobatch_update_users
to better represent provided functionalities. - Change CLI helper
register_default_users
toregister_defaults
to avoid confusion on groups also created. - Extend CLI
batch_update_users
functionality with additional options and corresponding tests. - Move all CLI helpers under
magpie.cli
and provide more details about them in documentation. - Allow unspecified
group_name
during user creation request to employMAGPIE_ANONYMOUS_GROUP
by default (i.e.: created user will have no other apparent group membership since it is always attributed for public access). - Change all
PUT
requests toPATCH
to better reflect their actual behaviour according to RESTful best practices (partial field updates instead of complete resource replacement and conflict responses on duplicate identifiers). - Add support of
Accept
header andformat
query parameter for all API responses, for content-types variations in either plain text, HTML, XML or JSON (default), and include applicable values in schemas for Swagger generation. - Add support of new response content-type as XML (must request using
Accept
header orformat
query parameter). - Add documentation details about different types of
Permission
, interaction between various Magpie models, glossary and other general improvements (relates to #332 and #341). - Add alternative response format for service and service-type paths using
flatten
query parameter to obtain a flat list of services instead of nested dictionaries (fixes #345). - Change pre-existing
list
query parameter of user-scoped views toflatten
response format to match new query of service-scoped views. - Add
filtered
query parameter for user-scoped resources permission listing when request user is an administrator. - Obsolete all API routes using
inherited_permission
format (deprecated since0.7.4
) in favor of equivalentpermissions?inherited=true
query parameter modifier. - Replace
inherit
query parameter wherever applicable byinherited
to match documentation names, but preserve backward compatibility support of old name. - Add
MAGPIE_PASSWORD_MIN_LENGTH
setting with corresponding validation of field duringUser
creation and update. - Avoid returning
Service
entries where user, group or both (according to request path and query options) does not actually have any permission set either directly on them or onto one of their respective childrenResource
. This avoids unnecessarily exposing allService
for which the user cannot (or should not) be interacting with anyway. - Add
TWITCHER_HOST
as alternative configuration parameter to define the service public URL, to have a similar naming convention as other use cases covered byMAGPIE_HOST
andPHOENIX_HOST
. - Modify
PHOENIX_PUSH
to be disabled by default to be consistent across all locations where corresponding feature is referenced (startup registration, CLI utility, API requests and UI checkbox option) and because this option is an advanced extension not to be considered as default behavior. - Python 2.7 and Python 3.5 marked for deprecation (they remain in CI, but are not required to pass), as both reached their EOL as of January/September 2020.
- Fix invalid API documentation of request body for
POST /users/{user_name}/groups
. - Fix #164 (forbid special users and groups update and delete).
- Fix #84 and #171 with additional input validation.
- Fix #194 to render API error responses according to content-type.
- Fix #337 documentation mismatch with previously denied request users since they are now allowed to run these requests with new user-scoped functionalities (#340).
- Fix bug introduced in 0.9.4
(4a23a49) where some
API routes would not return the Allowed Permissions for children
Resource
underService
(onlyService
permissions would be filled), or when requestingResource
details directly. - Fix input check to avoid situations where updating
Resource
name could cause involuntary duplicate errors. - Fix minor HTML issues in mako templates.
- Fix invalid generation of default
postgres.env
file frommagpie.env.example
. Filepostgres.env.example
will now be correctly employed as documented. - Make environment variable
PHOENIX_PUSH
refer tophoenix.push
instead ofmagpie.phoenix_push
to employ same naming schema as all other variables.
1.11.0 (2020-06-19)
- Update this changelog to provide direct URL references to issues and tags from both GitHub and Readthedocs.
- Add generic
magpie_helper
CLI and prefix others usingmagpie_
to help finding them in environment. - Add minimal tests for CLI helpers to validate they can be found and called as intended (#74).
- Add
CLI
tag for running specific tests related to helpers.
- Remove some files from built docker image that shouldn't be there with more explicit
COPY
operations. - Fix
Dockerfile
dependency ofpython3-dev
causing build to fail.
1.10.2 (2020-04-21)
- Add more documentation detail and references to existing Magpie utilities.
- Add
readthedocs
API page auto-generated from latest schemas extracted from source (redoc rendering of OpenAPI). - Combine and update requirements for various python versions. Update setup parsing to support
python_version
. - Slack some requirements to obtain patches and bug fixes. Limit only when needed.
- Fix issue related to
sphinx-autoapi
dependency (#251). - Fix reference link problems for generated documentation.
1.10.1 (2020-04-02)
- Fix failing generation of children resource tree when calling routes
/resources/{id}
due to literalResource
class being used instead of the string representation. This also fixes UI Edit menu of aService
that add more at least one childResource
.
1.10.0 (2020-03-18)
When using logging level
DEBUG
, Magpie requests will log additional details.WARNING: these log entries will potentially also include sensible information such as authentication cookies.
- Adjust mismatching log levels across Magpie packages in case
MAGPIE_LOG_LEVEL
and correspondingmagpie.log_level
setting orlogger_magpie
configuration section were defined simultaneously. The values are back-propagated tomagpie.constants
for matching values and prioritize the INI file definitions.
1.9.5 (2020-03-11)
- Fix handling of
Accept
header introduced in PR #259 (i.e.:1.9.3
and1.9.4
) specifically in the situation where a resource has the valuemagpie
within its name (e.g.: such as the logomagpie.png
).
1.9.4 (2020-03-10)
- Add further handling of
Accept
header introduced in PR #259 (ie:1.9.3
) as more use cases where not handled.
1.9.3 (2020-03-10)
- Add handling of
Accept
header to allow additional content-type when requesting UI related routes while Magpie application is being served under a route with additional prefix. - Fix requirements dependency issue related to
zope.interface
andsetuptools
version mismatch.
1.9.2 (2020-03-09)
- Remove
MAGPIE_ALEMBIC_INI_FILE_PATH
configuration parameter in favor ofMAGPIE_INI_FILE_PATH
. - Forward
.ini
file provided as argument toMAGPIE_INI_FILE_PATH
(e.g.: when usinggunicorn --paste <ini>
). - Load configuration file (previously only
.cfg
) also using.yml
,.yaml
and.json
extensions. - Add argument parameter for
run_db_migration
helper to specify the configurationini
file to employ.
- Use forwarded input argument to
MAGPIE_INI_FILE_PATH
to execute database migration. - Handle trailing
/
of HTTP path that would fail an ACL lookup of the corresponding service or resource.
1.9.1 (2020-02-20)
- Update adapter docker image reference to
birdhouse/twitcher:v0.5.3
.
1.9.0 (2020-01-29)
- Change database user name setting to lookup for
MAGPIE_POSTGRES_USERNAME
(and corresponding INI file setting) instead of previously employedMAGPIE_POSTGRES_USER
, but leave backward support if old parameter if not resolved by the new one. - Add support of variables not prefixed by
MAGPIE_
forpostgres
database connection parameters, as well as all their correspondingpostgres.<param>
definitions in the INI file.
1.8.0 (2020-01-10)
- Add
MAGPIE_DB_URL
configuration parameter to define a database connection with full URL instead of individual parts (notablyMAGPIE_POSTGRES_<>
variables). - Add
bandit
security code analysis and apply some detected issues (#168). - Add more code linting checks using various test tools.
- Add smoke test of built docker image to Travis-CI pipeline.
- Bump
alembic>=1.3.0
to remove old warnings and receive recent fixes. - Move
magpie.utils.SingletonMeta
functionality from adapter to reuse it innull
test checks. - Rename
resource_tree_service
andremote_resource_tree_service
to their uppercase equivalents. - Removed module
magpie.definitions
in favor of directly importing appropriate references as needed. - Improve
make help
targets descriptions. - Change to Apache license.
- Fix incorrectly installed
authomatic
library following update of reference branch (https://github.com/fmigneault/authomatic/tree/httplib-port) withmaster
branch merged update (https://github.com/authomatic/authomatic/pull/195/commits/d7897c5c4c20486b55cb2c70724fa390c9aa7de6). - Fix documentation links incorrectly generated for readthedocs pages.
- Fix missing or incomplete configuration documentation details.
- Fix many linting issues detected by integrated tools.
1.7.4 (2019-12-03)
- Add sorting by name of configuration files (permissions/providers) when loaded from a containing directory path.
- Add readthedocs references to README.
1.7.3 (2019-11-20)
- Fix 500 error when getting user's services on
/users/{user_name}/services
.
1.7.2 (2019-11-15)
- Fix
gunicorn>=20.0.0
breaking change not compatible with alpine: pingunicorn==19.9.0
.
1.7.1 (2019-11-12)
- Fix resource sync process and update cron job running it (#226).
- Fix configuration files not loaded from directory by application due to more restrictive file check.
- Fix a test validating applicable user resources and permissions that could fail if anonymous permissions where
generated into the referenced database connection (eg: from loading a
permissions.cfg
or manually created ones).
1.7.0 (2019-11-04)
- Add
docs/configuration.rst
file that details all configuration settings that are employed byMagpie
(#180). - Add more details about basic usage of Magpie in
docs/usage.rst
. - Add details about external provider setup in
docs/configuration
(#173). - Add specific exception classes for
register
sub-package operations. - Add
PHOENIX_HOST
variable to override defaultHOSTNAME
as needed. - Add support of
MAGPIE_PROVIDERS_CONFIG_PATH
andMAGPIE_PERMISSIONS_CONFIG_PATH
pointing to a directory to load multiple similar configuration files contained in it. - Add environment variable expansion support for all fields within
providers.cfg
andpermissions.cfg
files.
1.6.3 (2019-10-31)
- Fix the alembic database version number in the /version route (#165).
- Fix failing migration step due to missing
root_service_id
column in database at that time and version.
1.6.2 (2019-10-04)
- Fix a bug in
ows_parser_factory
that caused query parameters for wps services to be case sensitive.
1.6.1 (2019-10-01)
- Fix migration script for
project-api
service type.
1.6.0 (2019-09-20)
- Add an utility script
create_users
for quickly creating multiple users from a list of email addresses (#219). - Add PEP8 auto-fix make target
lint-fix
that will correct any PEP8 and docstring problem to expected format. - Add auto-doc of make target
help
message. - Add ACL caching option and documentation (#218).
1.5.0 (2019-09-09)
- Use singleton interface for
MagpieAdapter
andMagpieServiceStore
to avoid class recreation and reduce request time by Twitcher when checking for a service by name.
- Fix issue of form submission not behaving as expected when pressing
<ENTER>
key (#209). - Fix 500 error when deleting a service resource from UI (#195).
1.4.0 (2019-08-28)
- Apply
MAGPIE_ANONYMOUS_GROUP
to every new user to ensure they can access public resources when they are logged in and that they don't have the same resource permission explicitly set for them.
- Fix migration script hastily removing anonymous group permissions without handling and transferring them accordingly.
- Use settings during default user creation instead of relying only on environment variables, to reflect runtime usage.
1.3.4 (2019-08-09)
- Fix migration script errors due to incorrect object fetching from db (#149).
1.3.3 (2019-07-11)
- Update
MagpieAdapter
to use Twitcher version0.5.2
to employ HTTP status code fixes and additional API route details : - bird-house/twitcher#79 - bird-house/twitcher#84
1.3.2 (2019-07-09)
- Add
use_tweens=True
torequest.invoke_subrequest
calls in order to properly handle the nested database transaction states with the manager (#203). Automatically providespool_threadlocal
functionality added in1.3.1
as per implementation ofpyramid_tm
(#201).
1.3.1 (2019-07-05)
- Add
pool_threadlocal=True
setting for database session creation to allow further connections across workers (see #201, #202 for further information).
1.3.0 (2019-07-02)
- Move
get_user
function used specifically for Twitcher viaMagpieAdapter
where it is employed. - Remove obsolete, unused and less secure code that converted a token to a matching user by ID.
- Avoid overriding a logger level specified by configuration by checking for
NOTSET
beforehand. - Add debug logging of Authentication Policy employed within
MagpieAdapter
. - Add debug logging of Authentication Policy at config time for both Twitcher and Magpie.
- Add debug logging of Cookie identification within
MagpieAdapter
. - Add route
/verify
withPOST
request to verify matching Authentication Policy tokens retrieved between Magpie and Twitcher (viaMagpieAdapter
).
- Fix
MagpieAdapter
name incorrectly called when displayed using route/info
from Twitcher.
1.2.1 (2019-06-28)
- Log every permission requests.
1.2.0 (2019-06-27)
- Provide some documentation about
magpie.constants
module behaviour. - Remove some inspection comments by using combined requirements files.
- Add constant
MAGPIE_LOG_PRINT
(default:False
) to enforce printing logs to console (equivalent to specifying asys.stdout/stderr StreamHandler
inmagpie.ini
, but is not enforced anymore). - Update logging config to avoid duplicate outputs and adjust code to respect specified config.
- Add some typing for ACL methods.
- Fix
Permission
enum vs literal string usage during ACL resolution for some services and return enums when calling.ServiceInterface.permission_requested
method. - Fix user/group permission checkboxes not immediately reflected in UI after clicking them (#160).
1.1.0 (2019-05-28)
- Prioritize settings (ie: magpie.ini values) before environment variables and
magpie.constants
globals. - Allow specifying
magpie.scheme
setting to generate themagpie.url
with it if the later was omitted. - Look in settings for required parameters for function
get_admin_cookies
. - Use API definitions instead of literal strings for routes employed in
MagpieAdapter
.
- Fix erroneous
Content-Type
header retrieved from form submission getting forwarded to API requests. - Fix user name update failing because of incomplete db transaction.
1.0.0 (2019-05-24)
- Add
Dockerfile.adapter
to build and configureMagpieAdapter
on top ofTwitcher >= 0.5.0
. - Add auto-bump of history version.
- Update history with more specific sections.
- Improve
Makefile
targets with more checks and re-using variables. - Add constant alternative search of variant
magpie.[variable_name]
forMAGPIE_[VARIABLE_NAME]
. - Add tests for
get_constant
function. - Regroup all configurations in a common file located in
config/magpie.ini
. - Remove all other configuration files (
tox.ini
,alembic.ini
,logging.ini
). - Drop Makefile target
test-tox
.
- Use an already created configurator when calling
MagpieAdapter.configurator_factory
instead of recreating it from settings to preserve potential previous setup and includes. - Use default
WPSGet
/WPSPost
formagpie.owsrequest.OWSParser
when noContent-Type
header is specified (JSONParser
was used by default since missingContent-Type
was resolved toapplication/json
, which resulted in incorrect parsing of WPS requests parameters). - Actually fetch required JSON parameter from the request body if
Content-Type
isapplication/json
. - Convert
Permission
enum to string for proper ACL comparison inMagpieOWSSecurity
. - Fix
raise_log
function to allow proper evaluation againstException
type instead ofmessage
property.
0.10.0 (2019-04-15)
- Refactoring of literal strings to corresponding
Permission
enum (#167). - Change all incorrect usages of
HTTPNotAcceptable [406]
toHTTPBadRequest [400]
(#163). - Add
Accept
header type checking before requests and returnHTTPNotAcceptable [406]
if invalid. - Code formatting changes for consistency and cleanup of redundant/misguiding names (#162).
- Add option
MAGPIE_UI_ENABLED
allowing to completely disable all/ui
route (enabled by default). - Add more unittests (#74).
- Fix swagger responses status code and description and fix erroneous body (#126).
- Fix invalid member count value returned on
/groups/{id}
request. - Fix invalid
DELETE /users/{usr}/services/{svc}/permissions/{perm}
request not working.
0.9.6 (2019-03-28)
- Update Travis-CI test suite execution by enabling directly running PEP8 lint checks.
- Change some PyCharm specific inspection comment in favor of IDE independent
noqa
equivalents.
0.9.5 (2019-02-28)
- Logging requests and exceptions according to MAGPIE_LOG_REQUEST and MAGPIE_LOG_EXCEPTION values.
- Better handling of
HTTPUnauthorized [401]
andHTTPForbidden [403]
according to unauthorized view (invalid access token/headers or forbidden operation under view). - Better handling of
HTTPNotFound [404]
andHTTPMethodNotAllowed [405]
on invalid routes and request methods. - Adjust
Dockerfile
copy order to save time if requirements did not change.
0.9.4 (2019-02-19)
- Address YAML security issue using updated package distribution.
- Improve permission warning details in case of error when parsing.
- Add multiple tests for item registration via API.
- Minor changes to some variable naming to respect convention across the source code.
- Use sub-transaction when running service update as a session can already be in effect with a transaction due to previous steps employed to fetch service details and/or UI display.
0.9.3 (2019-02-18)
- Greatly reduce docker image size using
Alpine
base and redefining its creation steps. - Use
get_constant
function to allow better retrieval of database related configuration from all setting variations. - Simplify database creation using
sqlalchemy_utils
.
0.9.2 (2019-02-15)
- Allow quick functional testing using sequences of local app form submissions.
- Add test methods for UI redirects to other views from button click in displayed page.
- Change resource response for generic
resource: {<info>}
instead of{resource-id}: {<info>}
. - Add more typing hints of headers and cookies parameters to functions.
- Improve handling of invalid request input parameter causing parsing errors using
error_badrequest
decorator.
- Fix UI add child button broken by introduced
int
resource id type checking.
0.9.1 (2019-02-14)
- Reduce docker image build time by skipping irrelevant files causing long context loading using
.dockerignore
. - Use sub-requests API call for UI operations (fixes issue #114).
- Add new route
/services/types
to obtain a list of available service types. - Add
resource_child_allowed
andresource_types_allowed
fields in service response. - Change service response for generic
service: {<info>}
instead of{service-name}: {<info>}
. - Add new route
/services/types/{svc_type}/resources
for details about child service type resources. - Add error handling of reserved route keywords service
types
for/services/{svc}
routes and current user defined byMAGPIE_LOGGED_USER
for/users/{usr}
routes. - Additional tests for new routes and operations previously left unevaluated.
0.9.0 (2019-02-01)
- Add permissions config to auto-generate user/group rules on startup.
- Attempt db creation on first migration if not existing.
- Add continuous integration testing and deployment (with python 2/3 tests).
- Ensure python compatibility for Python 2.7, 3.5, 3.6 (via Travis-CI).
- Reduce excessive
sqlalchemy
logging usingMAGPIE_LOG_LEVEL >= INFO
. - Use schema API route definitions for UI calls.
- Fix invalid conflict service name check on service update request.
- Fix many invalid or erroneous swagger specifications.
0.8.2 (2019-01-21)
- Provide user ID on API routes returning user info.
0.8.1 (2018-12-20)
- Update
MagpieAdapter
to match process store changes.
0.8.0 (2018-12-18)
- Adjust typing of
MagpieAdapter
. - Reuse store objects in
MagpieAdapter
to avoid recreation on each request. - Add
HTTPNotImplemented [501]
error in case of incorrect adapter configuration.
0.7.12 (2018-12-06)
- Add flag to return effective permissions from user resource permissions requests.
0.7.11 (2018-12-03)
- Allow more processes to be returned by an administrator user when parsing items in
MagpieAdapter.MagpieProcess
.
0.7.10 (2018-11-30)
- Updates to
MagpieAdapter.MagpieProcess
according to process visibility.
0.7.9 (2018-11-20)
- Add
isTrue
andisFalse
options toapi_except.verify_param
utility function. - Add better detail and error code for login failure instead of generic failure.
- Use
UserService
for some user operations that were still using the old method. - Add multiple tests for
/users/[...]
related routes.
- Fixes to JSON body to be returned by some
MagpieAdapter.MagpieProcess
operations.
0.7.8 (2018-11-16)
- Hide service private URL on non administrator level requests.
- Make cookies expire-able by setting
MAGPIE_COOKIE_EXPIRE
and provide cookie only on http (JS CSRF attack protection). - Update
MagpieAdapter.MagpieOWSSecurity
for WSO2 seamless integration with Authentication header token. - Update
MagpieAdapter.MagpieProcess
for automatic handling of REST-API WPS process route access permissions. - Update
MagpieAdapter.MagpieService
accordingly to inherited resources and service URL changes.
- Fixes related to postgres DB entry conflicting inserts and validations.
0.7.7 (2018-11-06)
- Add error handing during user permission creation in
MagpieAdapter.MagpieProcess
.
- Invalid version skipped due to generation error.
0.7.5 (2018-11-05)
- Fix handling of resource type in case the resource ID refers to a
service
. - Pin
pyramid_tm==2.2.1
.
0.7.4 (2018-11-01)
- Add inherited resource permission with querystring (deprecate
inherited_<>
routes warnings).
0.7.3 (2018-10-26)
- Improve
MagpieAdapter
logging. - Add
MagpieAdapter
initialization with parent object initialization and configuration.
0.7.2 (2018-10-19)
- Add
MagpieAdapter.MagpieOWSSecurity.update_request_cookies
method that handles conversion ofAuthorization
header into the required authentication cookie employed by Magpie and Twitcher via integratedMagpieAdapter
. - Add multiple cosmetic improvements to UI (images, styles, etc.).
- Improve login error reporting in UI.
- Improve reporting of invalid parameters on creation UI pages.
- Add better display of the logged user if any in the UI.
- Add more Swagger API documentation details for returned resources per HTTP status codes.
- Add external provider type
WSO2
and relevant setting variables to configure the referenced instance.
- Fix external providers login support with
authomatic
using API/UI (validated for DKRZ, GitHub and WSO2). - Fix login/logout button in UI.
0.7.1 (2018-10-16)
- Avoid displaying the private service URL when not permitted for the current user.
- Add more test and documentation updates.
0.7.0 (2018-10-05)
- Add service resource auto-sync feature.
- Return user/group services if any sub-resource has permissions.
0.6.5 (2018-09-13)
- Fix
MagpieAdapter
setup usingTWITCHER_PROTECTED_URL
setting. - Fix
MagpieAdapter.MagpieService
handling of returned list of services. - Fix Swagger JSON path retrieval for some edge case configuration values.
0.6.4 (2018-10-10)
- Invalid versions skipped due to generation error.
0.6.1 (2018-06-29)
- Update
Makefile
targets. - Change how
postgres
configurations are retrieved using variables specific to Magpie.
- Properly return values of field
permission_names
under/services/.*
routes.
0.6.0 (2018-06-26)
- Add
/magpie/api/
route to locally display the Magpie REST API documentation. - Move many source files around to regroup by API/UI functionality.
- Auto-generation of swagger REST API documentation using
cornice_swagger
. - Add more unit tests.
- Validation of permitted resource types children under specific parent service or resource.
ServiceAPI
to filterread
/write
of specific HTTP methods on route parts.ServiceAccess
to filter top-level routeaccess
permission of a generic service URL.
0.5.4 (2018-06-08)
- Improve some routes returned codes, inputs check, and requests formats (JSON).
0.5.3 (2018-06-07)
- Add utility functions like
get_multiformat_any
to help retrieving contents regardless of request method and/or content-type.
0.5.2 (2018-06-06)
- Fix returned inherited group permissions of a user.
- Fix clearing of cookies when logout is accomplished.
0.5.1 (2018-06-06)
- Independent user/group permissions, no more 'personal' group to reflect user permissions.
- Service specific resources with service*-typed* Resource permissions.
- More verification of resources permissions under specific services.
- Reference to root service from each sub-resource.
0.5.0 (2018-06-06)
- Change defaults for
ADMIN_GROUP
andUSER_GROUP
variables. - Major refactoring of
Magpie
application, both for API and UI. - Split utilities and view functions into corresponding files for each type of item.
- Add more
alembic
database migration scripts steps for missing incremental versioning of schema and data. - Inheritance of user and group permissions with different routes.
0.4.5 (2018-05-14)
- Handle login failure into different use cases in order to return appropriate HTTP status code and message.
- Add login error reporting with a banner in UI.
0.4.4 (2018-05-11)
- Add UI view for user detail edition, including personal information and group membership.
0.4.3 (2018-05-09)
- Loosen
psycopg2
version requirement.
0.4.2 (2018-05-09)
- Loosen
PyYAML
version requirement. - Update documentation details.
- Fix installation error (#27).
0.4.1 (2018-05-08)
- Improvement to UI element rendering with focus/hover/etc.
- Push to Phoenix adjustments and new push button option and alert/confirmation banner.
0.4.0 (2018-03-23)
- Default admin permissions.
- Block UI view permissions of all pages if not logged in.
- Add ncWMS support for getmap, getcapabilities, getmetadata on
thredds
resource. - Add ncWMS2 to default providers.
- Add geoserverwms service.
- Remove load balanced Malleefowl and Catalog.
- Push service provider updates to Phoenix on service edit or initial setup with getcapabilities for anonymous.
- Major update of Magpie REST API 0.2.x documentation to match returned codes/messages from 0.2.0 changes.
- Normalise additional HTTP request responses omitted from 0.2.0 (404, 500, and other missed responses).
- Remove internal api call, separate login external from local, direct access to ziggurat login.
- Fix UI
"Magpie Administration"
to redirect toward home page instead of PAVICS platform. - Fix bug during user creation against preemptive checks.
- Fix issues from 0.2.x versions.
- Revamp HTTP standard error output format, messages, values and general error/exception handling.
- Update Magpie REST API 0.2.0 documentation.
- Add edition of service URL via
PUT /{service_name}
.
- First structured release.