Skip to content

Releases: lsteinmann/idaifieldR

v0.3.4

17 Dec 13:19
9c47d47
Compare
Choose a tag to compare

idaifieldR 0.3.4 2023-12-17

  • Make get_field_index() more efficient by utilizing vectors instead of lapply().
  • Adding liesWithinLayer in get_field_index() and simplify_idaifield() is now an option. This way, in get_field_index() the "shortDescription" can be added without the more time intensive recursive layer search that comes with the now available option find_layers = TRUE. For info on what this does, see documentation of find_layer().
  • simplify_idaifield() is now slightly faster as it uses find_layer() differently.
  • find_layer() can now handle a vector of multiple ids.
  • The project/projectname-argument will be removed soon, and project needs to be specified in connect_idaifield(). Relevant functions currently issue a warning to that effect.

What's Changed

Full Changelog: v0.3.2...v0.3.4

v0.3.3

23 Nov 12:01
15f3c53
Compare
Choose a tag to compare

idaifieldR 0.3.3 2023-11-25

New features

  • Add idf_last_changed(connection, n = n): Returns a vector with the last n changed resources in the database.
  • Add idf_get_changes(connection, ids = c(...)): Returns a data.frame in which each change to one of the resources listed in ids (can be either their 'identifier' or 'UUID') corresponds to one row separated by creation or modification.
  • remove_config_names() issues a message about duplicate field or category names if it is appropriate. Functions may override data when multiple columns with the same name would otherwise exist, as e.g. 'diameter' and 'projectName:diameter'. Attaches an attribute that lists the duplicate field/category names.

Minor changes

  • Notify of new / different version on GitHub on attaching the package (check_idaifieldr_version()).

Fixes

  • Fix problem in reformat_geometry() (MultiPolygons have to be unnested before processing). (Imported Polygons may be formatted improperly, unnest if necessary (reformat_geometry()). Geometry is still a work in progress.)
  • Fix a bug in get_field_index(), where it would return an empty data.frame if there was no configuration-resource.

What's Changed

Full Changelog: v0.3.2...v0.3.3

v0.3.2

15 Apr 16:46
Compare
Choose a tag to compare

idaifieldR 0.3.2 2023-04-15

  • add option to use or not use exact dates as min/max values for dating if present
  • add idf_json_query() which lets users construct their own queries to the CouchDB-API
  • improve and export find_layer()
  • fix error in get_language_lookup()
  • fix bug in idf_query() where it would not get values from fields with possibility of multiple entries
  • remove config as attribute to save space
  • rename select_by() to idf_select_by()
  • rename show_categories() to idf_show_categories()
  • update idf_select_by() and idf_show_categories()
  • update vignettes
  • update/enhanced documentation
  • add a sticker

Full Changelog: v0.3.1...v0.3.2

v0.3.1

02 Apr 22:01
f9c7424
Compare
Choose a tag to compare

idaifieldR 0.3.1 2023-04-02

  • of course, I missed half of it.
  • fix idf_query()/idf_index_query(): rename "type" to "category" in resource lists
  • type column in idaifield_as_matrix()
  • fix renaming of type/category in simplify_idaifield()
  • fix missed type/category issue convert_to_onehot()
  • "solve" minor problem with spreading checkbox fields (#TODO)

Full Changelog: v0.2.4...v0.3.1

idaifieldR 0.3.0

02 Apr 17:57
6ce15bd
Compare
Choose a tag to compare

idaifieldR 0.3.0 2023-04-02

  • remove sofa as dependency and add custom interface with reduced functionality
  • restructure unnesting (unnest_docs() & find_resource())
  • add get_field_index() - getting the uidlist/index directly from the database
  • exchange type with category everywhere (Attention: This may very well break previous scripts)
  • speed up find_layer() significantly
  • check if project exists before attempting to query the database

Breaking changes:

  • "type" does not refer to the type of resource (Find, Layer, Place etc.) any more and is renamed to category, as this is the current structure of the database. The uidlist-column "type" is renamed to "category" along with any reference to this information anywhere else (I hope ;) ).

What's Changed

  • Add CouchDB to test-coverage workflow to test (almost) everything by @lsteinmann in #6

Full Changelog: v0.2.4...v0.3.0

idaifieldR 0.2.4

31 Mar 18:51
bfb6f33
Compare
Choose a tag to compare

idaifieldR 0.2.4 2023-03-31

new:

  • handle / reformat dating fields by getting min and max date

fixes:

  • get type OR category if type is empty in for get_uid_list()
  • multiple queries for idf_query() with type & category
  • in simplify_idaifield(), category is currently switched to type,
    but this will be changed later -> #TODO: rename type everywhere to
    category to reflect actual db structure

What's Changed

  • handle dating fields and fix type/category issue by @lsteinmann in #4

Full Changelog: v0.2.3...v0.2.4

idaifieldR 0.2.3

16 Mar 12:26
Compare
Choose a tag to compare

idaifieldR 0.2.3 2023-03-16

  • add language management for multi-language input fields when project has more than one project language
  • add language list lookup preparation (get_language_lookup()) for custom config fields
  • add download_language_list() to get current translations from GitHub
  • add ping-checks for all database-related functions to supply custom error messages
  • get_idaifield_docs() will now remove the Configuration as a doc and attach it as attribute to all custom classes, thus simplify_idaifield() will use the config-attribute directly and works without a connection.
  • simplify_idaifield() now allows to keep checkbox-fields etc. as-is
  • change idf_query() and idf_index_query() to return docs instead of simplified list to allow choice
  • all idaifield_...-lists are now named (with the identifier of each resource)
  • new demodata for future use (data("idaifieldr_demodata"))
  • rewritten vignettes and generally updated documentation
  • Notice: The changes may have created problems for iDAI.field 2, and I did not test using the package with iDAI.field 2, as I assume it is not used anymore. get_idaifield_docs() should still work.

What's Changed

Full Changelog: v0.2.2...v0.2.3

idaifieldR 0.2.2

18 Feb 12:31
9a8ccbb
Compare
Choose a tag to compare

idaifieldR 0.2.2 2023-02-18

  • config specific names now removed everywhere
  • fixed problem with if-condition when config exists
  • fixed problem with the calculation of means for ranged measurements
  • comments in the code in some places
  • speed up find_layer(), replace_uid() and check_if_uid()
  • more tests

idaifieldR 0.2.1

23 Oct 13:50
Compare
Choose a tag to compare

idaifieldR 0.2.1 2022-10-23

  • Fixed find_layer() (internal), seems to work as intended now.
  • With the editor for the project configuration in iDAI.field 3, new fields and objects started to be named according to their configurations, e.g. "milet:temperType" etc., if the fields have been newly created. From now on those config specific names are removed from all fields, so that only the part after the double dot remains (e.g. "milet:temperType" becomes "temperType").
  • check_if_uid() now handles vectors
  • Speed up get_uid_list(), replace_uid(), convert_to_onehot(), and fix_relations() (a lot)
  • split up import with get_idaifield_docs() and processing to be more usable with simplify_idaifield(), with advice to use the latter only on subsets so the time is more manageable.
  • add check_and_unnest() to export

Full Changelog: v0.2.0...v0.2.1

idaifieldR 0.2.0

15 May 16:55
Compare
Choose a tag to compare

idaifieldR 0.2.0 2022-05-15

The changes are a bit dramatic, and scripts using the older versions will probably not work anymore without intereference.

  • Faster get_uid_list() using lapply()
  • Added idf_query() to specifically query the db for field values without first downloading everything
  • Added idf_index_query() to specifically query the database for things that are only available via the uidlist (the function needs a uidlist to do that)
  • simplified = TRUE (simplify_idaifield()) will now convert checkbox fields to multiple columns. This should probably be an option in the future, not the default, but the function itself needs cleaning up first.
  • it is now possible to import the configuration file, and it is needed for some functions; however, this will only work with idaifield3; connection and projectname are now attributes of the "idaifield_docs" and "idaifield_resources" objects.
  • idaifield_as_matrix() now returns a matrix with character values, not lists
  • dimension lists will be imported as a single value - this is still a work in progress, actually, but it has to suffice for the moment.
  • There are now two vignettes: Demo.Rmd with essential workflow, about.Rmd explaining the package functions a bit more.

Full Changelog: v0.1.4...v0.2.0