Release notes
v1.10.4 to v1.10.6 2021-12-31 ("Happy Log4J" release)
- Log4J vulnerability
- Update of some SICG core components
v1.10.3 2021-02-09 ("Alain" release)
- Bug correction: ApplicationDate when compilation and web application are not in the same timezone
- doc list: /docs?longer=true returns also model's label, order, and validity date in addition to doc data
v1.10.2 2020-09-07 ("colombiana release")
- support a pricelist without any option price
v1.10.1 2020-09-01 ("Mask4All" release)
- "critères convergés": eg. "APL03", "BRA03" and "RENAULT", used to filter MMCs by brand, are considered as synonyms
v1.9.15 2020-06-12 ("Gone with the wind" release)
- Allowing some lax behaviour in the handling of query parameters in configurations.
- With schoice query param, you normally get a 400 when you pass a spec that is unknown. New "lax-schoice" query param. If set to 1 (instead of 0 default value),
unknown spec choice is simply ignored.
- 1.9.12 had introduced, in the same vein, a "strict" query param related to
unknown speccats in the sc-i query param. This "strict" param is now deprecated
and replaced by a "lax-sc-i" param (with inverse values: "strict=0" replaced by "lax-sc-i=1".
Old "strict" param still supported but will soon be removed.
- Solved a NPE that was occurring when adding query parameters to a configuration URI returning a 500. You now get a 404.
- Solved a NPE that was occurring when querying a product URI that is offline. . You now get a 404.
- Bug correction: embedded configurator was working correctly only with configurations related to the current offer.
v1.9.14 2020-03-11 ("White Giraffe release")
- Bug correction: "best offer" for a product, ordering of configurations matching a product
v1.9.13 2020-01-10 ("Bushfires release")
- Better handling of the computation of combinations in case of very high diversity
v1.9.12 2019-10-04 ("Salwa Eid Naser 48.14 release")
- Improvements in the handling of product models that use MTC restrictions.
Returned offers (actual configurations) are now checked against these restrictions
- Documentation: description of product was missing.
- Configuration "sc-i" param: unknown speccats were prohibited. This is still the case by default,
but a new "strict" param can be used in complement in the query. If set to 0, (default being 1),
then unknown speccats in "sc-i" are just ignored.
- Corrects several 500 returns where 4xx should have been used
v1.9.12-SNAPSHOT 2019-06-06 ("D-Day release") (never actually released)
Bug fix
- URI of products, when using a MTC restriction including slashes: the slash (in the matrix param) must be encoded
(we had a 404 when accessing the product returned in the description of a configuration built on a documentation filtered by such as MTC)
v1.9.11 2018-08-24
Improvements
- Configuration, "du" query param: new values, allowing to filter out specifications that are completely impossible
within a documentation from the list of impossible specs
v1.9.10 2018-05-28
Improvements
- Embedded configurator: param "embed=true" was used to switch to "embedded configurator" mode. This param
can now also be set to "product", to get an embedded configurator that only displays links to products
Clicking the product URI (displayed in the page)
automatically selects it, allowing to easily copy it.
v1.9.9 2018-01-26
Improvements
- Product: new "seo" node that contains a schema.org compliant description of the product. Note however
that schema.org's support for configurable products such as new cars is inexistent (despite very good
proposals such as "Automotive Ranges as eCommerce Data")
(Of course, the complete description of products and confs as JSON-LD remain available
for the ld+json mime type, or using ?as=jsonld). This data for schema.org is included in the pages of the embedded configurator.
- "Unselection of implied specifications": the conflict resolution now supports a "schoicemode" param,
with possible values "include" (the default) and "exclude" (similar to what we have with the schoice for configurations).
Using "exclude", you can state that you don't want the implied spec. When "unselecting an implied spec",
you generally don't want to really exclude the spec, but just to get back to a situation where it is not implied.
A new "confWithConflictingChoicePossible" node has therefore been added to the returned json. (While the "nextConf"
node links to a conf with the conflict solved AND the conflicting choice made,
the (ex-)conflicting choice has not been made in "confWithConflictingChoicePossible" - but it now possible)
- Embedded Configurator: the "model spec code" is now more included in the choices of a configuration
(in order to avoid to have 2 different URIs for an empty conf)
v1.9.8-SNAPSHOT
improvements
- Products: several small changes in order to improve their usability. Among them:
- From Configuration to Product: in the JSON description of a Configuration, the "product" node gives the URI of the corresponding product (if it exists)
- confUri?prod=true: in json, returns a description of the configuration where the linkedconfs are given using product URIs
- changes in the json representation of a product
- Embedded configurator: version groups are now also displayed as a choice (which gives
an easy way to get the corresponding product URIs)
Bug Fixes
- Product configurations on documentation filtered by a MTC: the filter could be lost
- Embedded configurator now supports documentation filtered by a MTC
- JSON-LD: corrections in the @context
v1.9.7 2017-09-15
Bug Fixes
- Many improvements and fixes regarding the resolve of configuration on documentations using filters ("mtc de rectriction")
(1.9.5 had not solved the problem in case of old configurations)
v1.9.5 2017-05-19
Bug Fixes
- resolve on a filtered configuration (depending on cache, the filter could be lost)
v1.9.4 2016-12-01
improvements
- "/specs2eim" resource now handles filtered model.
- c2g-eim-api dependency bumped to 1.1.4
v1.9.3 2015-03-09
improvements
- EIM mapping resource : rollback to full EIM length driven by data.
v1.9.2 2015-02-26
improvements
- "product/gen" and "/product/model" now provides contextual URIs
instead of canonical URIs (except where an explicit canonical URIs is
provided, i.e. where JSON node key is “canonicalURI”).
- "/product/gen" can be filtered by brand, using query param "brand".
- Enhanced "/versioncategory" resource to not dump statuses for impossible versions (could be the case for filtered models).
- "/doc" resource provide a null URI for localSemiClair data where
no localsemiclair is available at all (case for AllianceMMC data;
Nissan and Infiniti).
Bug Fixes
- "/combinations" resource now takes into account filters of filtered model.
v1.9.1 2015-01-09
New feature
- Model Product resource now supports creation of subsets of model.
Filters are automatically forwarded to matching offer documentations.
improvements
- JSON-LD representations of configurations include now minum prices of next configurations.
- Adding totalPrice Json node for /confprice resource.
v1.9.0-2014-12-09
New feature
- EIM mapping Resource : still in beta, this resource provides
mapping from configuration (equivalent to VCD) to an EIM, if such EIM
data exists.
- RDF serialization now supports JSON-LD.
- Two new completion mechanisms to automatically select one version : minpriceversion and maxminpriceversion.
improvements
- C2GWeb minimum requirements now include Java 7.
- C2GWeb now supports that a spec code belongs to two different
spec cats in different models. Still, transversal configuration on such
spec cats is not possible.
v1.8.1-2014-09-17
Bug Fixes
- /pricelist and /confprice resources had a bug since v1.8.0 with prices on quality colors.
- Unknown values of prices are represented with "NaN" instead of null in price list json.
v1.8.0-2014-09-10
New feature
-
ConfPriceResource: new resource providing details on completely defined configuration
- Support of Alliance MMC (compiled by c2g alliance compiler).
This includes support of metadata for marketing model, presentation
item, spec categories and specifications structure. In price lists,
alternative prices can also appear for options.
improvements
- Conflict diagnostic resource: also resolve conflict with max price choice.
v1.7.0-2014-05-27
Bug Fixes
- The display of a spec as HTML (handled only by the "embedded
configurator" - there's nothing like that in today's rsite) was
displaying a list of product configurations
(eg. the list "laguna diesel, clio diesel, etc."" for the product
"diesel"). But the link URL was the conf URI without the necessary
"?embed=true"
- Old configuration URIs were not redirecting to Renault Site for
normal user agents (for completely obsolete URIs, was returning a 404).
improvements
- RDF multilingue : le RDF contient toutes les langues (ce n'était
pas le cas du label de la conf, ni des modèles sur la liste des modèles). Le RDFa, lui, continue à ne contenir
que ce qui correspond au HTTP header)
- Embedded : le lien vers le modèle (partie haute) contient bien "?embed=true", quand il faut
v1.6.2- 2014-01-17
Internal release
v1.6.1- 2014-01-15
Improvements
New feature
- Embedded HTML configurator that can be activated with query param "embed=true" or always activated using redirection mechanisms. See install notes for further details.
v1.6.0- 2013-12-13
Internal release
v1.5.2- 2013-10-16
Bug Fixes
- Clear HTTP cache service was buggy in previous version.
v1.5.1- 2013-10-15
Improvements
- DocumentationResource : creating a virtual framed documentation with an unknown specification category code fails with an HTTP error 400 instead of a 500
- Stable Product URIs : still in beta test, this feature now links Product Resources (Model like "TW2/twingo", Specification like "CAREG/automatic-climate-control") to Offer resources (configurations with a price).
New feature
- DocListResource: Add shortcuts to filtered list of documentation (usually /docs with some query param): /range list models of type "GP", /renaultrange models of brand Renault and type "GP", and /daciarange models of brand Dacia and type "GP".
v1.5.0- 2013-07-05
Bug Fixes
- When clients asks for only */* in the "Accept" header, c2gweb gives now priority to media type html (and so redirection to web site, application, etc..).
Improvements
- Multiple optimizations on memory footprint. Needed "old generation" java memory is divided by two (average).
- add "disclaimer" link in JSON response on "/docs" (See install notes for further information).
New feature
- Content negociation can be done through query param "as". It will override value of HTTP Header "Accept". Here is the mapping between value of this query param and media type :
- "json" for JSON.
- "html" for text/html.
- "rdf" for RDF serialized as XML (RDF-XML).
- "ttl" for RDF serialized as Turtle.
- "jld" for RDF serialized as JSON-LD.
- "jtal" for RDF serialized as JSON-TALIS.
- Generic mechanism for redirections to configuration web-site/applications through highly flexible parameters (See install notes for further information).
- New service "semantizedhtml" providing fragments of taggedHTML to be inserted within html pages of any web sites that deals with a given configuration. (See API for further information).
v1.4.2- 2013-04-24
Bug Fixes
- /docs manage empty lists of tariffs (instead of responding a 500 error).
Improvements
- Malformed query param of Cas d'Emploi or ShortBoolean (query params with "1" or "0" as possible values) return an explicit 400 error(Bad URI) instead of a 404 (Not Found).
New feature
- Beta version: introduction of stable URIs for products and specifications. See "/product/gen".
v1.4.1- 2013-01-22
Bug Fixes
- refactoring of URI builders to manage correctly canonical URIs(concerns especially RDF).
- Enable building of URIs for old configurations (eg : "proposedconf" in the /resolve resource).
- Resolving configurations on inactiv documentation was KO.
Improvements
- Do not use 303 redirections anymore as responses for some resources. It still supported until end of year 2013 through use of version protocol 1. This concerns :
- C2GDocumentationResource when using query param "mtc" or "scc".
- C2GConfigurationResource when using query param "maxprice", "schoice", "complete" or "proposedconfuri".
- /resolve resource provides additionnal data on default strategy results (see ResolveConfURIRepresentation in API).
- "/docs" is now much faster by using cache of virtual documentations (filtered and grouped ones) and by refactoring documentation id mechanism.
- Manage redirections to iPad resource (cf installation document).
- Force Facebook "Accept" header to media type "text/html".
- Check the website uri param at startup.
- Add a new completion strategy: versionbase-fgp. It is like versionbase, except that it chooses only specification of spec categories with a FGP origin.
- RDF :
- Configuration ontology: the property used to define the license was deprecated. Replaced by the new one. co:specId and co:confVarId.
- Possibility to choose an implied spec
- Conflict resolution now available
- URIs of the spec cats now of the form specCatNS + "var_" + specCatCode
- Description of specs and spacCats now include their short code (co:specId and co:confVarId - should use another ns, probably)
- RDFDocList now contains the lexicon attached to the linked confs
- Handling of the currency, gr:validFrom (cf priceList.applicationDate), gr:validThrough (documented with today + 7
day -- this prop is necessary if we want to have a chance to be in the google riche snippets), gr:priceType ('SRP', for Suggested Retail Price)
- Added the description of Renault as a gr:BusinessEntity, identified with Renault's URI in dbPedia.
- The configuration (or the list of docs in the case of the "empty configuration") are linked to the BusinessEntity Renault:
dppedia:renault gr:offers :confUri. Martin Hepp would say that this breaks GoodRelations' model, as we state here that a Configuration is a
gr:Offering, while we describe it as a Product.
- Link requestedUri FOAF:primaryTopic canonicUri (and NO canonicUri prop, no owl:sameAs)
- media type for turtle changed from "text/rdf+n3" to "text/turtle".
New feature
- Beta version: support of JSONP though queryparam "jsonpcallback".
v1.4.0- 2012-09-21
Improvements
- Added CORS(Cross-Origin Resource Sharing) support. This allows modern browsers to address
cross-domains requests directly to a C2GWeb instance.
- Version and context of the instance (properties and features) are logged when instance starts.
- RDF :
- It's now possible to query for RDF serialized as JSON-LD, using "application/ld+json", and as "JSON/RDF" (Talis format) using "application/rdf+json".
- Labels returned now in all languages available in the documentation.
- The "empty configuration" (list of models) now include the specifications of the models in the ConfLink.
- ontology is licensed under creative commons.
New feature
- Added support for computing negation of cas d'emploi in the "/evalcas" resource. See resource documentation for further details.
- For each configuration, a proposal can be provided. Indeed, once user has made some choices, configurator application should propose him
a completely defined product that can be also identified with a configuration uri. To get an URI where proposal contains application
proposition, add the "proposedconfuri" query param to main configuration uri (See API documentation for further details).
v1.3.1- 2012-07-04
Bug Fixes
- Minor bugs when providing RDF
- Months in the field "date of application" for tariffs are wrong.
- False or true Mtcs are not correctly handled by evalcas resource.
Improvements
- Conflict diagnostic resource can handle several wanted choices as input.
- Added advanced gzip filter, ensuring complete compatibility with HTTP cache mechanism.
- In beta test: "resolve" resource can resolve external configuration uris to local configuration uris.
New feature
- In beta test: "matchmtc" resource is a standalone service that provides matching of several MTCs against a single VCD.
v1.3.0 - 2012-05-10
Bug Fixes
- evalcas do manage the parameter: replaceunknowncritsbyfalse
- Cache headers and etags were false since providing data in rdf formats, screwing up intermediary http caches.
- Added http cache headers to "/docs" to prevent caching of this data.
Improvements
- VCDPriceResource: Added support for completing provided vcds
v1.2.3 - 2012-04-19
Bug Fixes
- VCDPricing was KO since 1.2.0
- spec categories are now ordered since problems detected on transversal documentations.
- several technical memory optimizations.
v1.2.2 - 2012-04-13
Bug Fixes
- Publishing of RDF data for "/docs".
v1.2.1 - 2012-04-03
Bug Fixes
- several bugs fixes in publishing of RDF data.
v1.2.0 - 2012-04-02
Bug Fixes
- URI encoding problems. Solved with a major re engineering of codec management.
Improvements
- Add support of multiple completion strategies in only one request.
- Add support for multiple choice of specifications of different specification categories at once.
New feature
- Virtual Documentations: some documentations can be restricted and other grouped, forming virtual documentations.
- In beta version : support for providing RDF data compliant with the ConfigurationOntology.
- Redirecting configuration uris to web site.
v1.1.1 - 2012-01-25
Bug Fixes
- Incorrect encoding of diagnostic uris.
Improvements
- Add an "implied" status for possible specifications while configuring.
- Add an "arbitrary" strategy for completion.
- additionnal query parameter in conflict diagnostic resource to definitely fix some choices.
v1.1.0 - 2012-01-06
Bug Fixes
- 2 minor bugs in semiclair resource.
- bug in encoding configuration uris with a lot of choices (usually the case when completing).
Improvements
- added several query params to filter available documentations in the doc list resource.
New feature
- VCD pricing resource : this service is in beta version and might be disabled.