Package: udata
udataCustomizable and skinnable social platform dedicated to (open)data.Thefull documentationis hosted on Read the Docs.udata is maintained byEtalab, the
french public agency in charge of open data.  Etalab is responsible
for publishing udata's roadmap and for building consensus around it.It is collectively taken care of by members of theOpenDataTeam.Changelog7.0.4 (2024-02-27)Add rotate password command#2966Custom extras metadata#2921:Organization can nom define a custom metadata of a choosen typeDataset belonging to the organization can assign a value to the defined metadataMetadata value must match the choosen type by the organizationHarvest DCAT conformsTo into schemas for resources and datasets#2949#2970#2972#2976Better reporting in spam detection (show the writer of the discussion/message)#2965Fix: spam lang detection not lowering input resulting in false positives#2965Fix: do not send mail about discussions when there is no owner / no organisation members#2962Fix: 'backend' is now required inHarvestSource#2962Fix: URL to organizations in mails are now independent fromudata-front(show the URL of the API if noudata-front)#2962Add harvested dcat properties as extras#2968:DCT.provenance [0..n]DCT.accessRights [0..1]Generate translations file#2974Fix contact point test with missing translation#29777.0.3 (2024-02-15)Add spam detection and prevention logic on discussion model#2954#2963Fix reuses inside database without private information (default to public)#2951Fix: you can now remove schema from a resource in the admin#2950Fix: refuse an organisation access request when multiple access requests are pending#2960Add downloads count in datasets' CSV#2953Allow dicts in datasets' extras#29587.0.2 (2024-01-23)Improve search serialization perfs for datasets in big topics#2937Migrate to Flask-Babel because of Flask-BabelEx deprecation#2897Contact points feature#2914#2943:Users and Organizations can now define a list of contact pointsApi endpoint for creating, updating and deleting contact pointsDatasets can define one contact point, among the list of the organization or the user owning the dataset.Defining a contact point for a dataset is done throught a form fieldAllow wildcards in redirect_uris for Oauth2Client#2935Allow for being one day late on update fulfilled in time#2941When a topic is deleted, corresponding discussions are purged#29447.0.1 (2023-12-06)Add sorting in geozone suggest API endpoint to return zones based on their admin level#29367.0.0 (2023-12-04)Prevent sending post_save signals on extras update#2919Add topic filter on datasets list#2915Topics: API v2 endpoints#2913Allow for discussions on Topics#2922Raise for status on DCAT harvester calls#2927Harvest dcterms:hasPart as 'other' resource in DCAT#2928Make sure harvested resources are marked as remote#2931Use GET and POST harvest BaseBackend utility to have user-agent#2930Use LazyReferenceField on Topic datasets and reuses#2924Use harvested dates and not max with internal#2932Better rdf frequency resilience#2933:warning:breaking changeGeozone refactor#2878:Complete Geozone model refactor, keeping only fieldsslug,name,code,leveland addinguriRemoved parent and validity conceptTo deploy:Datasets with geozone will return a 500 due tomongoengine.errors.FieldDoesNotExist: The fields "{'flag', 'dbpedia', ...}" do not exist on the document "GeoZone"udata spatial load -dto load new geozones into the databaseudata spatial migrateto migrate datasets geozones to new onesReindex datasets (udata search index dataset) if usingudata-search-serviceRemoved forgotten fields in search#29346.2.0 (2023-10-26)New & ImprovedTopics have been refactored and are no more deprecated:Topics creation, update and deletion are now opened to all users#2898Topics are nowdb.Ownedand searchable byidin dataset search#2901#2917Removedeletedapi field that does not exist#2903Addcreated_atfield to topic's model#2904Topics can now be filtered bytagfield#2904Topics can now be queried by test search innamefield withqargument#2904Add support for a CSW harvester using DCAT format#2800Add German to udata translations28992909Add harvesters count to site metrics#2890Use a single session for reindex#2891Fix site title and keywords never get updated#2900Reuse's extras are now exposed by API#2905Add configuration settings to enhance cookies security#2910Add items.dataset to HarvestJob indexes#2907Consider acronym when suggesting organization#2918FixesReturn 400 instead of 500 in case of not ObjectID arg in API#2889Fix default community resource sort parser#2908DeprecationPython 3.7 is now deprecated and will be removed in upcoming release#2859GeoZone model will be heavily refactored for a simplified version#28786.1.7 (2023-09-01)Fix slug overflow with index suffix when reaching max_length#2874Add extra field to topic model and add it to the dataset search adapter#2876Upgrade pyyaml in develop and doc deps#2880Expose dataset's*_internaldates in a nestedinternalnested field in api marshalling#2862Addbusiness_number_idmetadata for organizations#2871#2887Return 403 when posting comment on discussion closed#2881Ensure rdf parsed frequency is lowercase#2883Add a dict of URIs to replace in a RDF graph at harvest time#2884Fix duplicate recipients in new comments mail#2886Add type to resource csv adapter#28886.1.6 (2023-07-19)Improve DCAT harvest of mime type#2857Don't crash on files not found when purging resources2858Improve DCAT catalog exposed#2860Use the resource's extraanalysis:last-modified-atin thelast_modifiedproperty#2863Add optionnal harvest validation form#2864Fix dataset list default sorting#2867Update API doc link#2866Update admin quality progress bar#28726.1.5 (2023-06-19)Specifypublicdatasets and reuses in admin count#2852Fix url params being stripped in markdown for internal URLs#28556.1.4 (2023-05-16)Upgrade development dependencies#2844Compile translations for testing#2845Add user arg to discussion list API#2842No more sending email, slug and user name to sentry#2846Add test for passwordless user#2848Parse IANA and EUROPA URIs format#2849Dataset last update sorting:Transmit dataset'slast_updatefield to search service#2847Check if dataset's and resource's harvesting datemodified_atare ealier than today's date#2850Upgrade mongoengine and storage deps#2839:Upgrade flask-storage 1.0.0 -> 1.3.2Upgrade flask-mongoengine 0.9.5 -> 1.0.0, now returning a ValidationError on get_or_404 on invalid idUpgrade mongoengine 0.26.0 -> 0.27.0Prevent raising unecessary error in index command#2851Usedatetime.utcnowto make sure to handle utc datetimes#28536.1.3 (2023-04-18)Fix XSS vulnerability: escape user content in selectize items in admin#2843Fix schema is undefined when checking for schema.url in admin resource form#2837Fix to_naive_datetime in harvest preview#2835:warning: Flask-Security update to enableGenericResponses#2826:Upgrade Flask-Security 4.5.1 -> 5.1.1Upgrade WTForms 2.2.1 -> 3.0.1Upgrade WTForms-json 0.3.3 -> 0.3.5New security email template for existing usersFix SelectField validation failure following WTForms upgrade#2841Addformat_timedeltatoudata.i18n#2836Improve send_mail resilience with refused address among recipients#28406.1.2 (2023-03-28)Resources schema can now have an URL field.#2825Fix URLField validation error message#2831Dates renaming to provide more relevant computed dates between internal and harvested dates#2815:Removedpublishedattribute from Resource modelRenamedcreated_atandlast_modifiedof Dataset model tocreated_at_internalandlast_modified_internalRenamedcreated_atandmodifiedof Resource model tocreated_at_internalandlast_modified_internalAddedcreated_atcomputed property in Dataset and Resource model to provide harvested date if present and internal otherwiseAddedlast_modifiedcomputed property in Dataset and Resource model to provide max date between internal and harvested dateFix for PR#2815#2832Fix following dates refactoring#2815#2832Fix dcat harvesting on dcat:Dataset with blank nodes#2834Add dataset archived field in resource catalog#28336.1.1 (2023-03-17)Fix edge case on aware datetime string#2827:warning: MongoDB support up to 6.0.4#2819:Older versions of MongoDB >=3.6 are still supportedUpgrade must be done release by release to set theFeatureCompatibilityVersionvariable like stated inthisdocumentation.Upgrade pymongo 3.10.1 -> 4.3.3Upgrade mongoengine 0.20.0 -> 0.26.0Add IATAssimamong allowed file extensions#2828Copy user mail card back from udata-front#2822Upgrade node to a version still available#28306.1.0 (2023-03-07):warning: Upgrading Flask to 2.1.2, leading to an upgrade of click (8.0), Flask-BabelEx (0.9.4), Flask-Caching (2.0.2), flask-storage (1.0.0) instead of flask-fs, Flask-Login (0.6.2), flask-restx (1.0.5), Flask-Security-Too (4.1.5), Jinja2 (3.1.2), pillow (9.2.0), werkzeug (2.2.2)#2816Use the full path to the caching backend inCACHE_TYPE, ex:flask_caching.backends.redis. Named backends are deprecated.Werkzeug redirect now returns the relative url as location in response (https://github.com/pallets/werkzeug/issues/2352).Removed functions have been replaced (contextfilterandcontextfunctionfrom Jinja, root imports andHreffrom Werkzeug,JSONWebSignatureSerializerfrom itsdangerous)Prevent multiple blueprint with same name registration (not supported anymore in Flask).Removed all code logic related to thepublisheddate in resource model, now deprecated. :warning: The attribute itself was left in the model because of the complexity of the migration#2807Addxlsxanddocxas closed format for quality score#2814Flush latest rows in csv catalog export before storing file#2818Exposed dates through API are now timezone aware#2810Fix frequency reminder#28216.0.2 (2023-02-06)Handle None values in dataset and resource extras endpoints#2805Fix default license being selected in form in optional select group#2809Fix only SHA1 checksum is accepted when uploading resources#2808Fix organization metrics count#2811Fix setuptools version used in CI#2813Addudata harvest cleancommand#28126.0.1 (2023-01-18)Add python version requirement <3.10#2798Fix date timezone and format for harvest previz#2799Add support for DCAT startDate and endDate in temporal coverage#2801New feature: Users can now change their email by themselves#27926.0.0 (2023-01-09):warning: Kafka removal#2783#2794:Resources events publication now uses webhooksSearch indexation (at runtime and with index command) are now made through HTTP requests.If you useudata-search-service, you need to upgrade to the >=2.0.0 versionAdd dedicated extras endpoints on resources and datasets#2779Enrich catalog with harvest infos#2789Add optionnal license select group custom setting for admin#2786Make index setup optional on init based on config#27975.0.2 (2022-11-29):warning: Upgrade toFlask-Security-Tooversion 4.0.0#2772:New User model attributefs_uniquifier, migration needed.Thefs_uniquifieris used to invalidate existing session in case of password reset.The user'sfs_uniquifieris used instead of theidfor auth mecanism including permissions.Exhaustive list of changeshere.Fix apiv2 swagger with harvest metadata and add apiv2 swagger tests#2782Improve frequency criterion in quality score#2771Add quality score to csv catalogs#2785Optimize DCAT harvesting on large multiple-paged catalogs, introduceHARVEST_MAX_ITEMSdevelopment setting#2781Add condition in security mail utils class to avoid mail sending according to config var#27885.0.1 (2022-11-14)Fix resource harvest uri validation error#27805.0.0 (2022-11-14):warning:Breaking changeUse dedicated dynamic harvest metadata for dataset and resources. A migration copies identifying fields from extras to this dedicated metadata field. Extras won't be used anymore for harvest-related information. udata-ckan, udata-ods and udata-front packages are impacted and should be upgraded accordingly#27624.1.3 (2022-11-02)Fix image URLs for suggest endpoints#2761Switch fromFlask-restplusto its forkFlask-rest-x2770Clean inactive harvest datasets. :warning: a migration archives datasets linked to inactive harvest sources#2764#2773#2777Fix randomly failing suggest tests#2775Fix alt attribute not shown on image#27764.1.2 (2022-09-01)Clean up event code#2751Replace mongo legacy image in CI#2754Fixes testtest_suggest_datasets_apiby modifying condition#2759Fix doc name duplicate on rdf endpoints#27634.1.1 (2022-07-08)Quality score computation refactoring and now returning it in list datasets endpoint. Update was made in admin too.#2746:warning: Manifest logic was removed and udata does now work as standalone#2747Remove map related stuff#2749Add library udata_event_service to produce Kafka messages#27434.1.0 (2022-06-09)Add html support for posts#2731Use mongo search ifSEARCH_SERVICE_API_URLvariable is not set#2728Improve resource extension detection#2729Remove resources in dataset search serialization#2730Add endpoint to directly get specific resource by rid#2732.Publish kafka message when resource is created, modified or deleted#2733Clean documentation and code with respect to independent search service#2738Fix size argument in suggests endpoint and corresponding tests#2739Add udata instance name prefix and action suffix for kafka topics#2736Fix tokenisation by building anANDquery (see comments in code) for mongo text search and pagination#27404.0.2 (2022-05-04)Remove unused_total_pagessearch property#2726Use -followers as default suggest sort on datasets, reuses and orgas#2727Reintroduce user suggest with mongo contains#27254.0.1 (2022-04-11)Removedpost_savesignal withinadd_resourceandupdate_resourcemethods.#2720Refactor and update documentation with latest udata updates#2717Add harvest csv adapter for a catalog of harvesters#27224.0.0 (2022-03-30)Breaking changeSearch refactor#2680:warning: Search changes#2692:The search feature is not within udata anymore and queries a distant service.The search feature is now optional and is enabled by setting theSEARCH_SERVICE_API_URLsetting.When search is not enabled, the search endpoints will return a501 Not Implementederror.The ModelAdapter, SearchQuery and SearchResult patterns were kept but heavily refactored.udata uses a Kafka producer to send documents to index to the search service.udata uses HTTP request to query the search service.:warning: API changes#2669:List endpoints for organizations, datasets, reuses and users are now querying MongoDB instead of ElasticSearch.Those endpoints use MongoDB full text search whenqargument is used. Some unused filters on this route were dropped.A new API parser was implemented to replace the search one.The previous ElasticSearch endpoints were moved to APIv2 with the following url pattern:/{object}/search(ex:/datasets/search).:warning: Suggest changes#2685and#2696:Current suggest implementation moved from an Elasticsearch index to a MongoDB query using the termcontains.The user suggest was entirely removed, as its existence is now less relevant because of the full text search.3.3.3 (2022-03-29)Extend dcat properties support (frequency litteral, creation and modification date, landing page and abstract description)#27153.3.2 (2022-03-01)Deprecation: Topics are now deprecated and will be removed in upcoming releases.Use title to improve License guess#2697Add aqargument to the paginated datasets resources endpoint, to search through resources titles.#2701Delete discussion with deleted user as only participant#2702Fix error on post creation when adding related reuse#2704Redirect in endpoints routing now returns 308 instead of 302 in order to keep the method and body.#2706Delete badges from datasets fixtures.27093.3.1 (2022-01-11)Fix fields empty value in admin form to allow for unsetting fields#2691:warning: Add a new required topic string field on reuses. The associated migration set default topic toothers#26893.3.0 (2021-12-10):warning: RemovedIssuescode and logic. The corresponding MongoDB collection should be deleted when upgrading Udata.#2681Fix transfer ownership from org to user#2678Fix discussion creation on posts#26873.2.2 (2021-11-23)Move template hook logic back to udata#2671#2679Add dataset's acronym to catalog#2675Better URL-based License guess#2672New way of fixtures generation#2677:The command now uses a remote file (default) if a URL is provided or a local one if a path is provided.This file can be generated by using the commandgenerate-fixtures-file, which takes as an argument the URL of the source queried to retieve the data dumped to the file.The commandgenerate-fixtures-fileuses a customizable list of datasets slugs to know which datasets to query.Fixed the Geomform check for a GeoZone instance in formdata#26833.2.1 (2021-10-22)Fix default sort with right sort column creation date name, for posts in back-office editorial page#2665Meta read-only-enabled is back#2664First endpoints for APIv2! Add datasets hateoas and resources pagination endpoints#2663#2667Addarchivedandresources_countfields in the dataset catalog#26683.2.0 (2021-09-14)Update dependencies following setuptools 58.0.2 release that drop support foruse_2to3#2660::warning:breaking changerdfsis not supported anymorejsonldendpoints have a@contextdict directly instead of an url to the context endpointUpdate documentation withudata-front plugin renaming#2661Various DCAT fixes (geonetwork compatibility) and debug command#26623.1.0 (2021-08-31):warning: Use pip-tools for requirements management#2642#2650#2651. Pleaseread the docif you are a udata developer.:warning: Check db integrity and apply temporary and permanent fixes#2644:warning: the associated migrations can take a long time to run.:warning: Upgrade to Flask-1.1.4#2639SafeguardUser.delete()#2646Fix user delete command#2647Protecttest_ignore_post_save_signalfrom weak ref error while testing#2649Update translations following frontend refactoring (a lot of translations have been moved to udata-gouvfr)#2648Fix RDF output content negociation#2652Update Pillow dependency to 8.0.0#2654Add more fixes on HarvestSource and HarvestJobs for db integrity#26533.0.4 (2021-08-12)Now returning notfound() http exception when router does not match any territory object instead of None#2637Add larger reuse thumbnail image#2638Activate plugins before creating app when testing#26433.0.3 (2021-07-30)Remove mail sending task on follow#2635Fix root api endpoint error#26363.0.2 (2021-07-19)Fix sentry id event logging#2364Fix remote resource upload#26323.0.1 (2021-07-09)Remove apidoc blueprint, moved to udata-gouvfr#2628New migration to update community resources schema from string to dict#26293.0.0 (2021-07-07):warning:breaking change: most of the theme/templates logic has been moved tohttps://github.com/etalab/udata-gouvfr.udatano longer contains a default theme. In the 3.x series, we hope it will be usable as a "headless" open data platform, but for now you probably need to plug your own theme or use udata-gouvfr.More info about this change here.#2522Migrate from raven to sentry-sdk#2620Add a UdataCleaner class to use udata's markdown configuration on SafeMarkup as well#2619Fix schema name display in resource modal#26172.7.1 (2021-05-27)Add migration to roolback on resource's schema's name to None#26152.7.0 (2021-05-25)Modifyschemafield to resource. This field is now a nested field containing two sub-propertiesnameandversion#2600.Add aschema_versionfacet to the dataset search (need to be reindex to appear in results)#2600.2.6.5 (2021-05-19)Fix create user by API#2609Add sqlite, db and ics to allowed extensions#2610Better markup parsing#2611:Geozone's and Resource type's labelize function return None if no object is found.New SafeMarkup class, which inherits from Markup, uses Bleach to sanitize Markup class.2.6.4 (2021-03-24)Enhance self endpoint verification#26042.6.3 (2021-03-23)Extraction of translation's strings#26022.6.2 (2021-03-22)Fix SECURITY_CONFIRMABLE=False#2588Support dct:license on DCAT harvester#2589Admin small enhancements#2591:The sidebar "Me" label has been renamed "Profile"The user's profile now displays the user's emailThe button "Edit" and the dropdown were merged. The button is now only a dropdown listing the actions."Edit" action has been renamed to "Edit the dataset/reuse/organization/profile" according to the current object to edit.Addnofollowattribute to links in discussions comments#2593Add pip upgrade in circle's publish step#2596Pin Twine's version#2597Pin twine'version in circle's publish step#25982.6.1 (2021-01-26)Fix url_for method in organization's catalog's view#25872.6.0 (2021-01-25)Add resource's description and title size limit#2586Add RDF catalog view for organizations#25832.5.1 (2020-12-31)Add title's and description's length limit in forms#25852.5.0 (2020-11-30)Change reuse's form's label name to title#2575Unpublished posts are no longer served by thePost.listAPI endpoint#2578Read only mode can now be toggled in settings#2565:Toggles a warning banner on the frontend view and a warning toast on the admin view.Prevents new users to register.Prevents non admin users to create new content such as organizations, datasets, community resources or discussions.Will return a423response code to any non-admin request to endpoints specified inMETHOD_BLOCKLISTsetting.Existing content can still be updated.Add an alert block in layout template, to be overrided in installed theme#25802.4.1 (2020-11-09)Escaping XML's forbidden characters#2562Ignore pattern feature for linkchecker#2564Fix TypeError when creating a superuser with an incorrect password#25672.4.0 (2020-10-16):warning: Resources and community resources creation API change#2545:Remove the RESOURCES_FILE_ALLOWED_DOMAINS setting and mechanism.The community resource's/resource's url could be set from the client side, even in the case of a hosted one, which is illogical.
A hosted community resource's/resource's url should only be the sole responsibility of the backend.Consequently, the POST endpoint of the community resources/resources API is only meant for the remote ones and the PUT endpoint of the community resources/resources API will take the existing resource's url to override the one sent by the client.Community resources changes#2546:Dataset is now correctly set at community resource creationRemove now useless job 'purge-orphan-community-resources'Using the fs_filename logic when uploading a new resource on the data catalog.#2547Remove old file when updating resources and community resources from API#2548Sortable.js upgrade to fix an issue in udata's editorial page when reordering featured datasets#2550Password rotation mechanism#2551:Datetime fieldspassword_rotation_demandedandpassword_rotation_performedadded to user model.Override Flask-Security's login and reset password forms to implement the password rotation checks.Password complexity settings hardening#2554Migrate ODS datasets urls#25592.3.0 (2020-09-29)Plugin's translations are now correctly loaded#2529Vine version is now pinned in requirements#2532Fix reuses metrics#2531:Reuses "datasets" metrics are now triggered correctlyNew job to update the datasets "reuses" metrics:update-datasets-reuses-metricsto be scheduledAdd a migration to set the reuses datasets metrics to the correct value#2540Add a specific dataset's method for resource removal#2534Flask-Security update#2535:Switch to fork Flask-Security-TooNew settings to set the required password length and complexityFix Flask-security sendmail overriding#2536Add a custom password complexity checker to Flask-Security#2537Change too short password error message#25382.2.1 (2020-08-25)Some fixes for the static files deletion#2526:New static files migration replacing the older one:The migration now uses FS_URL.Fixed the fs_filename string formating.Now checks the community ressource's URLs too.Removing the deletion script link in the CHANGELOG previous entry.Add a schema facet to the dataset search 🚧 requires datasets reindexation#25232.2.0 (2020-08-05)CORS are now handled by Flask-CORS instead of Flask-RestPlus#2485Oauth changes#2510:Authorization code Grant now support PKCE flowNew command to create an OAuth client:warning: Implicit grant is no longer supported:warning: Deletion workflow changes#2488:Deleting a resource now triggers the deletion of the corresponding static fileDeleting a dataset now triggers the deletion of the corresponding resources (including community resources) and their static filesAdding a celery jobpurge-orphan-community-resourcesto remove community resources not linked to a dataset. This should be scheduled regularly.Adding a migration file to populate resources fs_filename new field. Deleting the orphaned files is pretty deployment specific.
A custom script should be writen in order to find and delete those files.Show traceback for migration errors#2513Addschemafield to ressources. This field can be filled based on an external schema catalog#2512Add 2 new template hooks:base.modals(base template) anddataset.resource.card.extra-buttons(dataset resource card)#25142.1.3 (2020-06-29)Fix internal links in markdown when not starting w/ slash#2500Fix JS error when uploading a resource in certain conditions#24832.1.2 (2020-06-17)Decoded api key byte string#2482Removed now useless metric fetching#2482Fix bug in harvester's cron schedule#2493Adding banner options in settings for a potential use in an udata's theme#24922.1.1 (2020-06-16)Broken release, use 2.1.22.1.0 (2020-05-12)Breaking changesFull metrics refactoring2459:Metric collection is now useless and will not be filled anymore, you can remove it or keep it for archival sake. It will not be automatically removed.udata-piwiknow uses InfluxDB as a buffer for trafic data before injecting them into udata's models.Most of celery's tasks related to metrics are removed, this should help performance-wise on a big instance.Charts related to metrics are removed from admin and dashboard panel until we have accurate data to populate them.Site's metrics computation are not triggered by signals anymore.A specific celery job needs to be run periodically to compute site's metrics.New featuresNothing yet2.0.4 (2020-05-04)Fix export-csv command (py3 compat)#24722.0.3 (2020-04-30):warning: Security fix: fix XSS in markdown w/ length JS filter#24712.0.2 (2020-04-07):warning: Breaking change / security fix: disallow html tags in markdown-it (JS markdown rendering)#24652.0.1 (2020-03-24)Allow images to be displayed in markdown by default#2462Fix deleted user's authentication on backend side#24602.0.0 (2020-03-11)Breaking changesMigration to Python 3.7#1766The new migration system (#1956) uses a new python based format. Pre-2.0 migrations are not compatible so you might need to upgrade to the latestudataversion<2.0.0, execute migrations and then upgrade toudata2+.The targeted mongo version is now Mongo 3.6. Backward support is not guaranteedDeprecated celery tasks have been removed, please ensure all old-style tasks (pre 1.6.20) have been consumed before migrating#2452New featuresNew migration system#1956:Use python based migrations instead of relying on mongo internal and deprecatedjs_execHandle rollback (optionnal)Detailled historyTemplate hooks generalization: allows to dynamically extend template with widgets and snippets from extensions. Seethe dedicated documentation section#2323Markdown now supportsGithub Flavored Markdown (GFM) specs(ie. the already supportedCommonMark specsplus tables, strikethrough, autolinks support and predefined disallowed raw HTML)#23411.6.20 (2020-01-21)New Crowdin translations#2360Fix territory routing for @latest#2447Refactor Celery: py2/py3 compatibility, use ids as payload#2305Automatically archive dangling harvested datasets :warning: this is enabled by default#2368Refactor celery tasks to avoid models/documents in the transport layer#23051.6.19 (2020-01-06)rel=nofollowon remote source links#2364Fix admin messages and fix user roles selector default value#2365Fix new harvester's form tooltip showup#2371Fix responsive design of search results#2372Fix non-unique ids in datasets' comments#2374Case insensitive license matching#23781.6.18 (2019-12-13)Remove embedded API doc#2343:warning: Breaking change, please customizeAPI_DOC_EXTERNAL_LINKfor your needs.Removed published date from community ressources#2350Added new size for avatars in user's model (udata images rendermust be run in order to update the size of existing images)#2353Fixed user's avatar change#2351Removed dead code#2355Resolved conflict between id and slug#2356Fix next link in posts pagination#2358Fix organization's members roles translation#23591.6.17 (2019-10-28)Disallow URLs in first and last names#23451.6.16 (2019-10-22)Prevent Google ranking spam attacks on reuse pages (rel=nofollowon reuse link)#2320Display admin resources list actions only if user has permissions to edit#2326Fix non-admin user not being able to change their profile picture#23271.6.15 (2019-09-11)Style links in admin modals#2292Add activity.key filter to activity.atom feed#2293AllowAuthorizationas CORS header and OAuth minor fixes#2298Set dataset.private to False by default (and fix stock)#2307Fixes some inconsistencies between admin display (buttons, actions...) and real permissions#23081.6.14 (2019-08-14)Cleanuppermitted_reusesdata (migration)#2244Proper form errors handling on nested fields#2246JS models load/save/update consistency (loadingalwaystrueon query, always handle error, no more silent errors)#2247Ensures that date ranges are always positive (ie.start<end)#2253Enable completion on the "MIME type" resource form field (needs reindexing)#2238Ensure oembed rendering errors are not hidden by default error handlers and have cors headers#2254Handle dates before 1900 during indexing#2256spatial loadcommand is more resilient: make use of a temporary collection when--dropoption is provided (avoid downtime during the load), in case of exception or keybord interrupt, temporary files and collections are cleaned up#2261Configurable Elasticsearch timeouts. IntroduceELASTICSEARCH_TIMEOUTas default/read timeout andELASTICSEARCH_INDEX_TIMEOUTas indexing/write timeout#2265OEmbed support for organizations#2273Extract search parameters as settings allowing fine tuning search without repackaging udata (seetheSearch configurationdocumentation)#2275PreventDoesNotExisterror in activity API: silence the error for the consumer but log it (ie. visible in Sentry)#2268Optimize CSV export generation memory wise#22771.6.13 (2019-07-11)Rename og:image target :warning: this will break your custom theme, please rename your logo image file tologo-social.pnginstead oflogo-600x600.png#2217Don't automatically overwritelast_updatefield if manually set#2020Spatial completion: only index last version of each zone and prevent completion cluttering#2140Init: prompt to loads countries#2140Handle UTF-8 filenames inspatial load_logoscommand#2223Display the datasets, reuses and harvesters deleted state on listing when possible#2228Fix queryless (noqtext parameter) search results scoring (or lack of scoring)#2231Miscellaneous fixes on completers#2215Ensurefiletype='remote'is set when using the manual ressource form#2236Improve harvest sources listing (limitlast_jobfetched and serialized fields, reduce payload)#2214Ensure HarvestItems are cleaned up on dataset deletion#2214Addedconfig.HARVEST_JOBS_RETENTION_DAYSand aharvest-purge-jobsjob to apply it#2214(migration).Warning, the migration will enforceconfig.HARVEST_JOBS_RETENTION_DAYSand can take some time on a bigHarvestJobcollectionDropno_dereferenceon indexing to avoid the "dictionary changed size during iteration" error until another solution is found.Warning: this might result in more resources consumption while indexing#2237Fix various issues around discussions UI#21901.6.12 (2019-06-26)Archive dataset feature#2172Refactor breadcrum includes#2173Better dependencies management#2182and#2172/install.pipReduce following to staring#2192Simplify display of spatial coverage in search results#2192Add cache for organization and topic display pages#2194Dataset of datasets: id as ref instead of slug#2195:warning: this introduces some settings changes, cfdocumentation for EXPORT_CSV.Add meta og:type: make twitter cards work#2196Fix UI responsiveness#2199Remove social media sharing feature#2200Quick fix for activity.atom#2203Remove diff from js dependencies to fix CVE#2204Replace default sort label for better readability#2206Add a condition to up-to-dateness of a dataset#2208Prevent deleted harvesters from running until purged. Harvest jobs history is deleted too on purge.#2209Better quality.frequency management#2211Fix caching of topic pages#22131.6.11 (2019-05-29)Center incomplete rows of cards#2162Allow .dxf upload#2164Always use remote_url as harvesting source#2165Update jquery to ~3.4.1#2161Fix various issues with search result page#2166Restore notbroken facet includes#21691.6.10 (2019-05-23)Remove<br>in badge display#2156Display user avatar and fix its sizing#2157Redirect unfiltered csv exports to dataset of datasets#2158Show organization id in a modal and add hyperlinks to ids in detail modal#21591.6.9 (2019-05-20)Add user slug to dataset cache key#2146Change display of cards of reuses on topic pages#2148Display remote source of harvested dataset#2150Prefill community resource type on upload form#2151Fix user profile UI#2152Remove concept of permitted reuse#21531.6.8 (2019-05-13)Configurable search autocomplete#21381.6.7 (2019-05-10)Refactor DCAT harvesting to store only one graph (and prevent MongoDB document size overflow)#2096Expose sane defaults forTRACKING_BLACKLIST#2098Bubble up uploader errors#2102Ensureudata worker status --muninalways outputs zero values so munin won't see it has a "no data" response#2103Metrics tuning: breaks circular dependencies, drop exec_js/eval usage, proper logging...#2113Change reuse icon from "retweet" to "recycle"#2122Admins can delete a single comment in a discussion thread#2087Add cache directives to dataset display blocks#2129Export multiple models objects to CSV (dataset of datasets)#21241.6.6 (2019-03-27)Automatically loads default settings from plugins (ifplugin.settingsmodule exists)#2058Fixes some memory leaks on reindexing#2070Fixes minor UI bug#2072Prevent ExtrasField failure on null value#2074Improve ModelField errors handling#2075Fix territories home map#2077Prevent timeout onudata indexin some cases#2079Pin werkzeug dependency to0.14.1until incompatibilities are fixed#2081Prevent client-side error while handling unparseable API response#2076Fix theudata job scheduleerroneous help message#2083Fix upload button on replace resource file#2085Ensure harvest items statuses are updated on the right job#2089Added Serbian translations#20551.6.5 (2019-02-27)Replace "An user" by "A user"#2033Use "udata" and fix a few other typos in documentation and UI/translation strings#2023Add a surrounding block declaration around community section2039Fix broken form validation on admin discussions and issues#2045Fix full reindexation by avoidingSlugField.instancedeepcopy inno_dereference()querysets#2048Ensure deleted user slug is pseudonymized#2049Prevent the "Add resource" modal from closing when using the frontend "Add resource" button#20521.6.4 (2019-02-02)Fix workers: pin redis version for Celery compatibility#20191.6.3 (2019-02-01)Remove extra attributes on user deletion#1961Pin phantomjs to version2.1.7#1975Protect membership accept route against flood#1984Ensure compatibility with IE11 and Firefox ESR#1990Lots of fixes on the resource form. Be explicit about uploading a new file#1991Centralizeselectizehandling and style inbase-completerand apply some fixes1992Added the missingnumberinput field widget#1993Fix the organization private datasets and reuses counters#1994Disable autocorrect, spellcheck... on search and completion fields#1995Fix harvest preview in edit form not taking configuration (features and filters)#1996Ensure organization page react to URL hash changes (including those from right sidebar)#1997Updating community resource as admin keeps original owner#1999Major form fixes#2000Improved admin errors handling: visual feedback on all errors,Sentry-IDheader if present, hide organization unauthorized actions#2005Expose and import licensesalternate_urlsandalternate_titlesfields#2006Be consistent on search results wording and icons (Stars vs Followers)#2013Switch from a "full facet reset" to a "by term reset" approach in search facets#2014Ensures all modals have the same buttons styles and orders, same color code...#2012Ensure URLs from assets stored onCDN_DOMAINSare considered as valid and that associated error message is properly translated#20171.6.2 (2018-11-05)Display the owner/organization on harvester view#1921Improve harvest validation errors handling#1920Make extra TOS text customizable#1922Fixes anUnicodeEncodeErroroccuring when parsing RDF with unicode URLs#1919Fix some external assets handling cases#1918Harvest items can now matchsource.idbeforesource.domain— no more duplicates when changing an harvester URL#1923Ensure image picker/cropper only allows images#1925Make tags min and max length configurable and ensure admin takes its configuration from the backend#1935Prevent errors when there is no date available to focus on the calendar#1937InternalsUpdate authlib to 0.10#19161.6.1 (2018-10-11)Allows arguments and keyword arguments in the task@connectdecorator#1908Allows to restore assets after being deleted (Datasets, Organizations and Reuses)#1901Fixes form events not bubbling (and so fixes harvester config not displaying)#19141.6.0 (2018-10-02)New featuresHarvest sources are now filterable through the harvest source create/edit admin form#1812Harvest sources can now enable or disable some optional backend features#1875Static assets are now compatible with long-term caching (ie. their hash is present in the filename)#1826Post UIs have been reworked: publication date, publish/unpublish action, save and continue editing, dynamic sidebar, alignments fixes...#1857Minor changesOnly display temporal coverage years on cards and search results#1833Add publisher's name on dataset template#1847Improved upload error handling: deduplicate notifications, localized generic error message, sentry identifier...#1842Allows to filter datasets on resourcetype(needs reindexing)#1848Switch the admin sidebar collapse icon from "hamburger"to left and right arrows#1855Discussion add card style coherence#1884LINKCHECKING_UNCHECKED_TYPESsetting to prevent linkchecking on some ressource types#1892swagger.jsonAPI specifications now pass validation#1898Breaking changesTheme are now responsible for adding their CSS markup on template (no more assumptions ontheme.cssandadmin.css). Most of the time, overridingraw.htmlandadmin.htmlshould be sufficientThe discussions APIposted_byattribute is now an embedded user instead of an user ID to avoid extra API calls#1839BugfixesHide theresource.typeattribute from JSON-LD output until handled by a dedicated vocabulary/property#1865RDFs, CSVs and resource redirect views are now handling CORS properly#1866Fix broken sorts on organization's datasets list in admin#1873Ensure harvest previewing is done against current form content#1888Ensure deleted objects are unindexed#1891Fix the dataset resources list layout wrapping#1893Fix wrong behavior for weblinks#1894Ensureinfo configcommand only displays configuration variables#1897InternalUpgrade to Authlib 0.9#1760#1827Add aDataset.on_resource_addedsignal1.5.3 (2018-08-27)Prevent UnicodeError on unicode URL validation error#1844Hide save button in "Add resource" modal until form is visible (and prevent error)#1846The purge chunks tasks also remove the directory#1845Upgrade to latest Fine-Uploader version to benefit from bug fixes#1849Prevent front views from downloadingswagger.json#1838Ensure API docs works without data#1840Expose the default spatial granularity in API specs#1841Fix missing dataset title on client-side card listing#1834Allows to clear the dataset form temporal coverage.#1832Ensure that admin notifications are displayed once and with a constant width.#1831Fix broken date range picker date parsing (ie. manual keyboard input)#1863Normalize uploaded filenames to avoid encoding issues, filesystem incompatibilities...#18521.5.2 (2018-08-08)Fix client-side temporal coverage rendering#1821Prevent word breaking when wrapping discussions messages#1822Properly render message content on issues and discussions mails#18231.5.1 (2018-08-03)Ensure OEmbed compatibility with external CDN#1815Fixes some static URL serialization#18151.5.0 (2018-07-30)New featuresSlugs are now redirected on change when changed until old slug are free#1771Improve usability of new organization form#1777Allows to serve assets on an external CDN domain usingCDN_DOMAIN#1804Breaking changesNoneBug fixes and minor changesSort dataset update frequencies by ascending frequency#1758Skip gov.uk references tests when site is unreachable#1767Fix resources reorder (registered extras validation logic)#1796Fix checksum display on resource modal#1797Use metrics.views on resource card#1778Fix dataset collapse on ie11#1802Upgrade i18next (security)#1803InternalsBackports some Python 3 forward compatible changes and fixes some bugs#1769:avoidfilterandmapusage instead of list comprehensionexplicit encoding handlingavoid comparison toNoneusenext()instead of.next()to iterateunhide some implicit casts (in particular search weight)Tests are now run againstlocal.testinstead oflocalhostto avoid pytest warnings1.4.1 (2018-06-15)Fix community resource creation and display#1733Failsafe JS cache storage: use a custom in-memory storage as fallback when access tosessionStorageis not allowed#1742Prevent errors when handling API errors without data/payload#1743Improve/fix validation error formatting on harvesting#1745Ensure daterange can be parsed from full iso datetime#1748API: enforce application/json content-type for forms#1751RDF parser can now processeuropean frequencies#1752Fix images upload broken by chunked upload#17561.4.0 (2018-06-06)New featuresTyped resources#1398Initial data preview implementation#1581#1632Handle some alternate titles and alternate URLs on licenses for improved match on harvesting#1592Allow to specify a dataset acronym#1217Starts using harvest backendconfig(validation, API exposition,HarvestFilters...)#1716The map widget can now be configured (tiles URL, initial position...)#1672New discussions layout#1623Dynamic API documentation, Enhancement to Pull #1542 -#1542Resource modal overhaul with markdown support#1547Breaking changesNormalize resource.format (migration - :warning: need reindexing).#1563Enforce a domain whitelist when resource.filetype is file. SeeRESOURCES_FILE_ALLOWED_DOMAINSsettings variable for details and configuration.#1567Remove extras from datasets search index (needs reindexation)#1718Bug fixes and minor changesSwitch to PyPI.org for package links#1583Show resource type in modal (front)#1714Adds ETag to internal avatar for efficient caching control#1712Fix 404/missing css on front pages#1709Fix markdown max image width (front)#1707Ensure registered extras types are properly parsed from JSON. Remove the need for customdb.Extraclasses#1699Fix the temporal coverage facet query string parsing#1676Fix search auto-complete hitbox#1687Fix Firefox custom error handling, part 2#1671Add resend confirmation email link to login screen#1653Audience metrics: use onlyviews#1607Add missing spatial granularities translations#1636Protocol-relative URLs support#1599InternalsSimplifyExtrasFieldform field signature (no need anymore for theextrasparameter)#1698Register known extras types#17001.3.12 (2018-05-31)Fix side menu on mobile#1701Fix update frequency field#17021.3.11 (2018-05-29)Protect Resource.need_check against malformed/string dates#1691Fix search auto-complete loading on new page#16931.3.10 (2018-05-11)Expose Resource.extras as writable in the API#1660Fix Firefox custom errors handling#16621.3.9 (2018-05-07)Prevent linkchecker to pollute timeline as a side-effect. (migration).Warning, the migration will delete all dataset update activities#1643Fix OAuth authorization screen failing with unicodeSITE_TITLE#1624Fix markdown handling of autolinks with angle brackets and factorize (and test) markdownparse_html()#1625Fix timeline order#1642Fix markdown rendering on IE11#1645Consider bad UUID as 404 in routing#1646Add missing email templates#1647PolyfillChildNode.remove()for IE11#1648Improve Raven-js/Sentry error handling#1649Prevent regex special characters to break site search#16501.3.8 (2018-04-25)Fix sendmail regression#16201.3.7 (2018-04-24)Fix some search parameters validation#1601Prevent API tracking errors with unicode#1602Prevent a race condition error when uploading file with concurrent chunking#1606Disallow resources dict in API#1603Test and fix territories routing#1611Fix the client-side Raven/Sentry configuration#1612Raise a 404 in case of unknown RDF content type#1613Ensure current theme is available to macros requiring it in mails#1614Fix documentation about NGinx configuration for https#1615Remove unwanted commas in defaultSECURITY_EMAIL_SUBJECT_*parameters#16161.3.6 (2018-04-16)Prevent OEmbed card to be styled when loaded in bootstrap 4#1569Fix organizations sort by last_modified#1576Fix dataset creation form (and any other form)#1584Fix an XSS on client-side markdown parsing#1585Ensure URLs validation is the same everywhere#15861.3.5 (2018-04-03)Upgradesifterto0.5.3#1548Upgradejquery-validationto 1.17.0 and fixes some issues with client-side URL validation#1550Minor change on OEmbed cards to avoid theme to override the cardsfont-family#1549Improve cli unicode handling#1551Fix DCAT harvester mime type detection#1552Add the missing harvester URL in admin#1554Fix harvester preview/job layout#1553Fix some search unicode issues#1555Small fixes on OEmbed URL detection#1556Use nb_hits instead of views to count downloads#1560Prevent an XSS in TermFacet#1561Fix breadcrumb bar layout on empty search result#15621.3.4 (2018-03-28)Remove territory claim banner#1521Expose anOEmbedAPI endpoint using the new cards#1525Small topic fixes#1529Fixes the search result vertical cut off#1530Prevent visually disabled pagination buttons from being clicked#1539Fixes "sort organization by name" not working#1537Non-admin users should not see the "publish as anyone" filter field on "publish as" screen#15381.3.3 (2018-03-20)Fixes on upload: prevent double upload and bad chunks upload#1516Ensure OAuth2 tokens can be saved withoutrefresh_token#15171.3.2 (2018-03-20)Support request-body credential in OAuth2 (Fix a regression introduced in 1.3.0)#15111.3.1 (2018-03-15)Fix some geozones/geoids bugs#1505Fix oauth scopes serialization in authorization template#1506Prevent error on site ressources metric#1507Fix some routing errors#1508Mongo connection is now lazy by default, preventing non fork-safe usage in celery as well as preventing commands not using the database to hit it#1509Fix udata version not exposed on Sentry#15101.3.0 (2018-03-13)Breaking changesSwitch toflask-cliand dropflask-script. Deprecated commands have been removed.#1364Update card components to make them more consistent#1383#1460udata is now protocol (http/https) agnostic. This is now fully the reverse-proxy responsibility (please ensure that you are using SSL only in production for security purpose).#1463Added more entrypoints and document them. There is no more automatically enabled plugin by installation. Plugins can now properly contribute translations.#1431New featuresSoft breaks in markdown is rendered as line return as allowed by thecommonmark specifications, client-side rendering follows the same security rules#1432Switch from OAuthlib/Flask-OUAhtlib to Authlib and support all grants type as well as token revocation#1434Chunked upload support (big files support)#1468Improve tasks/jobs queues routing#1487Add theudata schedule|unschedule|scheduledcommands#1497Bug fixes and minor changesAdded Geopackage as default allowed file formats#1425Fix completion/suggestion unicode handling#1452Added a link to change password into the admin#1462Fix organization widget (embed)#1474High priority for sendmail tasks#1484Add security.send_confirmation template#1475InternalsSwitch to pytest as testing tool and expose audatapytest plugin#14001.2.11 (2018-02-05)Translate Flask-Security email subjects#1413Fix organization admin pagination#1372Fix missing spinners on loading datatables#1401Fixes on the search facets#14101.2.10 (2018-01-24)Markdown rendering is now the same between the back and the frontend.#604Make the dataset page reuses section and cards themable.#1378ValueErroris not hidden anymore by the Bad Request error page, it is logged.#1382Spatial encoding fixes: prevent breaking unicode errors.#1381Ensure the multiple term search uses aANDoperator#1384Facets encoding fixes: ensure lazy strings are propery encoded.#1388Markdown content is now easily themable (namespaced into amarkdownclass)#1389Fix discussions and community resources alignment on datasets and reuses pages#1390Fix discussions style on default theme#1393Ensure empty harvest jobs properly end#13951.2.9 (2018-01-17)Add extras field in discussions#1360Fix datepicker#1370Fix error on forbidden scheme inis_urlharvest filter#1376Fix an error on rendering present territory date#13771.2.8 (2018-01-10)Fix html2text dependency version#13621.2.7 (2018-01-10)Bump chartjs version to 2.x#1352Sanitize mdstrip#13511.2.6 (2018-01-04)Fix wrongly timed notification on dataset creation with misformed tags#1332Fix topic creation#1333Add audata worker statuscommand to list pending tasks.[breaking] Theudata workercommand is replaced byudata worker start.#1324Prevent crawlers from indexing spammy datasets, reuses and organizations#1334#1335Ensure Swagger.js properly set jQuery.ajax contentType parameter (and so data is properly serialized)#1126Allows theme to easily access theowner_avatar_urltemplate filter#13361.2.5 (2017-12-14)Fix misused hand cursor over the spatial coverage map in dataset admin#1296Fix broken post edit page#1295Display date of comments in dataset discussions#1283Preventreindexcommand from failing on a specific object and log error instead.#1293Position the community resource link icon correctly#1298Add a sort option to query of list of posts in API#1301Import dropdown behavior fromudata-gouvfrand fix hidden submenus on mobile#1297show message for emtpy dataset search#10441.2.4 (2017-12-06)Fix flask_security celery tasks context#1249Fixdataset.qualityhandling when no format filled#1265Ignore celery tasks results except for tasks which require it and lower the default results expiration to 6 hours#1281Import community resource avatar style from udata-gouvfr#1288Terms are now handled from markdown and customizable with theSITE_TERMS_LOCATIONsetting.#1285Deeplink to resource#12891.2.3 (2017-10-27)Check only the uncollapsed resources at first on dataset view#12461.2.2 (2017-10-26)Fixes on thesearch index command#12451.2.1 (2017-10-26)Introduceudata search indexcommmand to replace both deprecatedudata search initandudata search reindexcommands. They will be removed in udata 1.4.#1233Rollback oauthlib from 2.0.5 to 2.0.2, pending a permanent solution#1237Get cached linkchecker result before hitting API#1235Cleanup resources checksum (migration)#1239Show check results in resource modal#1242Cache avatar rendering#12431.2.0 (2017-10-20)New features and big improvementsExpose harvester scheduling through the API and the admin interface#1123Added audata infocommand for diagnostic purpose#1179Switch from static theme avatars/placeholders toidenticonsfor readability (mostly on discussions)#1193Move croquemort features to a generic link checker architecture#1110CKAN and OpenDataSoft backends are now optional separate udata extensions#1213Better search autocomplete#1222Big post improvements (discussions support, navigation, fixes...)#1224Breaking changesUpgrade to Celery 4.1.0. All celery parameters should be updated. (SeeCelery options documentation#1150Switch toCrowdinto manage translations#1171Switch toFlask-Security.Flask-Security-Forkshould be uninstalled before installing the new requirements#958Miscellaneous changes and fixesDisplay organization metrics in the organization page tab labels#1022Organization dashboard page has been merged into the main organization page#1023Fix an issue causing a loss of data input at the global search input level#1019Fixes a lot of encoding issues#1146Add.ttland.n3as supported file extensions#1183Improve logging for adhoc scripts#1184Improve URLs validation (support new tlds, unicode URLs...)#1182Properly serialize empty geometries for zones missing it and prevent leaflet crash on invalid bounds#1188Start validating some configuration parameters#1197Remove resources without title or url [migration]#1200Improve harvesting licenses detection#1203Added missing delete post and topic admin actions#1202Fix the scroll to a discussion sub-thread#1206Fix duplication in discussions [migration]#1209Display that a discussion has been closed#1216Explicit dataset search reuse facet context (only known reuses)#1219Optimize indexation a little bit#1215Fix some reversed temporal coverage [migration]#12141.1.8 (2017-09-28)Display membership modal actions buttons for site administrators and on membership display.#1176Fix organization avatar in admin profile#11751.1.7 (2017-09-25)Prevent a random territory from being displayed when query doesn't match#1124Display avatar when the community resource owner is an organization#1125Refactor the "publish as" screen to make it more obvious that an user is publishing under its own name#1122Make the "find your organization" screen cards clickable (send to the organization page)#1129Fix "Center the full picture" on user avatar upload#1130Hide issue modal forbidden actions#1128Ensure spatial coverage zones are resolved when submitted from the API or when querying oembed API.#1140Prevent user metrics computation when the object owner is an organization (and vice versa)#11521.1.6 (2017-09-11)Fix CircleCI automated publication on release tags#11201.1.5 (2017-09-11)Fix the organization members grid in admin#934Fix and tune harvest admin loading state and payload size#1113Automatically schedule validated harvesters and allow to (re)schedule them#1114Raise the minimumravenversion to ensure sentry is filtering legit HTTP exceptions#774Pin GeoJSON version to avoid breaking changes#1118Deduplicate organization members#11111.1.4 (2017-09-05)Fix packaging1.1.3 (2017-09-05)Make the spatial search levels exclusion list configurable throughSPATIAL_SEARCH_EXCLUDE_LEVELS.#1101Fix facets labelizer with html handling#1102Ensure territories pages have image defined in metadatas#1103Strip tags in autocomplete results#1104Transmit link checker status to frontend#1048Remove plus signs from search query#10481.1.2 (2017-09-04)Handle territory URLs generation without validity#1068Added a contact button to trigger discussions#1076Improve harvest error handling#1078Improve elasticsearch configurability#1096Lots of fixes admin files upload1094Prevent the "Bad request error" happening on search but only on some servers#1097Migrate spatial granularities to new identifiersMigrate remaining legacy spatial identifiers#1080Fix the discussion API documention#10931.1.1 (2017-07-31)Fix an issue preventing reuse edition:#1027Fix an issue preventing user display and edit in admin:#1030Fix an error when a membership request is accepted:#1028Fix issue modal on a reuse:#1026Fix sort by date on admin users list:#1029Improve thepurgecommand#1039Ensure search does not fail when a deleted object has not been
unindexed yet#1063Start using Celery queues to handle task priorities#1067Updated translations1.1.0 (2017-07-05)New features and improvementsAdded aDCATharvester
and expose metadata as RDF/DCAT.#966See the dedicated documentions:RDFHarvestingImages are now optimized and you can force rerendering using theudata images rendercommand.Allowed files extensions are now configurable via theALLOWED_RESOURCES_EXTENSIONSsetting
and both admin and API will have the same behavior#833.Improve and fix notifications:#928Changed notification style to toastFix notifications that weren't displayed on form submissionAdd a toggle indicator on dataset quality blocks that are collapsible#915Integrating latest versions of GeoZones and GeoLogos for territories.
Especially using history of towns, counties and regions from GeoHisto.#499Breaking ChangesThemes are now entrypoint-based#829.
There is also a newtheming documention.Images placeholders are now entirely provided by themes#707#1006Harvester declaration is now entrypoint-based#1004FixesEnsure URLs are stripped#823Lot of fixes and improvements on Harvest admin UI#817:harvester edition fixed (and missing API added)harvester deletion fixedharvester listing is now paginatedmore detailed harvesters widgetsensure harvest source are owned by a user or an organization, not both [migration]Pure Vue.js search facets#880.
Improve and fix the datepicker:Proper sizing and positionning in dropdownsFix initial value not being displayedMake it usable on keyboardAllows to defineminandmaxvalues to disable some datesKeyboard input is reflected into the calendar#615Disablenextbutton when no file has been uploaded#930Fix badges notification mails#894Fix theudata search reindexcommand#1009Reindex datasets when their parent organization is purged#1008Miscellaneous / InternalUpgrade to Flask-Mongoengine 0.9.3, Flask-WTF 0.14.2, mongoengine 0.13.0.#812#871#903Upgrade to Flask-Login 0.4.0 and switch from Flask-Security to the latestFlask-Security-Fork#813Migrated remaining widgets to Vue.js#828:bug fixes on migrated widgets (Issues button/modal, integrate popover, coverage map)more coherent JS environment for developperslighter assetsdrop Handlebars dependencybleach and html5lib have been updated leading to more secure html/markdown cleanup
andbetter performances#838Dropjquery-slimscrolland fix admin menu scrolling#851drop jquery.dotdotdot for a lighter css-only solution (less memory consumption)#853Lighter style#869:Drop glyphicons and use only Font-Awesome (more coherence, less fonts)lighter bootstrap style by importing only what's neededmake use of bootstrap and admin-lte variables (easier for theming)proper separation between front and admin styleDropExtractTextPluginon Vue components style:faster (re)compilation timeresolves most compilation and missing style issues#555#710allows use of hot components reloading.Pure Vue.js modals. Fix the default membership role. Added contribute modal.#873Easier Vue.js development/debugging:DropVue.config.replace = false: compatible with Vue.js 1/2 and no more style guessing#760nameon all components: no moreAnonymous Componentin Vue debuggerNo moreFragmentsMore ES6 everywhereMake metrics deactivable for tests#9051.0.11 (2017-05-25)Fix presubmit form errors handling#909Fix producer sidebar image sizing#913Fix jsModel.save()not updating in some cases#9101.0.10 (2017-05-11)Fix bad stored (community) resources URLs [migration]#882Proper producer logo display on dataset pagesFix CKAN harvester empty notes andmetadatafile type handlingRemove (temporary) badges metrics#885Test and fix topic search#8921.0.9 (2017-04-23)Fix broken post view#877Fix new issue submission#874Display full images/logo/avatars URL in references too#8241.0.8 (2017-04-14)Allow more headers in cors preflight headers#857#860Fix editorialization admin#863Fix missing completer images and ensure completion API is usable on a different domain#8641.0.7 (2017-04-07)Fix display for zone completer existing values#845Proper badge display on dataset and organization page#849Remove uselessdiscussionsfrom views contexts.#850Fix the inline resource edit button not redirecting to admin#852Fix broken checksum component#8461.0.6 (2017-04-01)Default values are properly displayed on dataset form#745Prevent a redirect on discussion fetch#795API exposes both original and biggest thumbnail for organization logo, reuse image and user avatar#824Restore the broken URL check feature#840Temporarily ignore INSPIRE in ODS harvester#837AllowX-API-KEYandX-Fieldsin cors preflight headers#8411.0.5 (2017-03-27)Fixes error display in forms#830Fixes date range picker dates validation#830Fix badges entries not showing in admin#8251.0.4 (2017-03-01)Fix badges trying to use API too early#799Some minor tuning on generic references#801Cleanup factories#808Fix user default metrics not being set [migration]#809Fix metric update after transfer#810Improve spatial completion ponderation (spatial zones reindexation required)#8111.0.3 (2017-02-21)Fix JavaScript locales handling#786Optimize images sizes for territory placeholders#788Restore placeholders in search suggestions, fix#790Fix share popover in production build#7931.0.2 (2017-02-20)Fix assets packaging for production#763#765Transformudata_versionjinja global into a reusable (by themes)package_version#768Ensure topics datasets and reuses can display event with a topic parameter#769Raise a400 Bad Requestwhen a badclassattribute is provided to the API
(for entry point not using forms).#772Fix datasets with spatial coverage not being indexed#778Ensure theme assets cache is versioned (and flushed when necessary)#781Raise maximum tag length to 96 in order to at least supportofficial INSPIRE tags#782Properly raise 400 error on transfer API in case of bad subject or recipient#784Fix broken OEmbed rendering#783Improve crawlers behavior by adding somemeta[name=robots]on pages requiring it#7771.0.1 (2017-02-16)Pin PyMongo version (only compatible with PyMongo 3+)1.0.0 (2017-02-16)Breaking Changes2016-05-11: Upgrade of ElasticSearch from 1.7 to 2.3#449You have to re-initialize the index from scratch, not just use thereindexcommand given that ElasticSearch 2+ doesn't provide a way todelete mappingsanymore. The command isudata search initand may take some time given the amount of data you are dealing with.2017-01-18: User search and listing has been removed (privacy concern)New & Improved2017-01-06: Add some dataset ponderation factor: temporal coverage, spatial coverage,
certified provenance and more weight for featured ones. Need reindexation to be taken into account.2016-12-20: Use all theDublin Core Frequenciesplus some extra frequencies.2016-12-01: Add the possibility for a user to delete its account in the admin interfaceIn some configurations, this feature should be deactivated, typically when
there is an SSO in front of udata which may cause some inconsistencies. In
that case, the configuration parameter DELETE_ME should be set to False (True
by default).2016-05-12: Add fields masks to reduce API payloads#451The addition offields masksin Flask-RESTPlus allows us to reduce the retrieved payload within the admin — especially for datasets — and results in a performances boost.Fixes2016-11-29: Mark active users as confirmed#6192016-11-28: Merge duplicate users#617(A reindexation is necessary after this migration)DeprecationTheses are deprecated and support will be removed in some feature release.
SeeDeprecation Policy.Theses frequencies are deprecated for their Dublin Core counter part:fortnighly⇨biweeklybiannual⇨semiannualrealtime⇨continuous0.9.0 (2017-01-10)First published version