Skip to content

Releases: watson-developer-cloud/java-sdk

java-sdk-8.0.0-rc1

29 Aug 18:35
53ea7db

Choose a tag to compare

java-sdk-8.0.0-rc1 Pre-release
Pre-release

Breaking changes

There are some small breaking changes present, like some methods dropping a parameter or two or some parameters being renamed, but below are the big changes throughout the SDK.

Authentication methods

Authentication methods have changed to make things more extensible for the future. There are 5 authentication variants supplied in the SDK (shown below), and it's possible now to create your own authentication implementation if you need something specific by implementing the Authenticator implementation.

Basic

You can authenticate with basic auth using the BasicAuthenticator. This allows you to pass in a username and password.

Authenticator authenticator = new BasicAuthenticator("<username>", "<password>");

Bearer token

Use the BearerTokenAuthenticator. This one accepts just the bearer token.

Authenticator authenticator = new BearerTokenAuthenticator("<bearer_token>");

Cloud Pak for Data

This class helps you authenticate with your services on (Cloud Pak for Data)[https://www.ibm.com/analytics/cloud-pak-for-data).

// constructor with required parameters
Authenticator authenticator = new CloudPakForDataAuthenticator(
  "<url>", 
  "<test_username>",
  "<test_password>"
);

There's also another constructor to disable SSL verification or send request headers on the token exchange.

IAM

Like the CloudPakForDataAuthenticator, there's a basic constructor

Authenticator authenticator = new IamAuthenticator("<token>");

and another one to supply additional arguments like a particular token exchange URL, a client ID and secret, and the same options to disable SSL verification and send headers.

None

Finally, there's the NoAuthAuthenticator, which is pretty self-explanatory. Pass this when you don't need any authentication to happen.

Assistant service = new Assistant("2019-02-28", new NoAuthAuthenticator());

More model builders

If you've used the SDK before, you're probably familiar with the use of the builder pattern across the board. With this release, we've tweaked the generation process to capture better which are models that are being constructed to be sent to the service. These are models we'd prefer to have builders, making it easier to put them together.

There are unfortunately a decent number of models which move to this pattern, but it's one we expect to use well into the future.

Features

Better control over HTTP logging

Logging used to be controlled with a .properties file somewhere in the namespace, but it was confusing to many people. We also didn't leave an option to shut them off!

We've added control over this to the existing HttpConfigOptions class. Information on usage can be found here.

Ability to cancel an API call

It's possible that in your code, you may want to cancel an API call you made. Some reasons for this might be requests exceeding some response time threshold or sending multiple async requests and just wanting to keep the fastest one, canceling the rest.

Regardless, this feature has been added for this release. You can see more information here.

java-sdk-7.4.0

21 Aug 22:21

Choose a tag to compare

7.4.0 (2019-08-21)

Bug Fixes

  • Compare and Comply: Fix definition for BodyCells (36ac4e7)

Features

  • Compare and Comply: Add ContractCurrencies model (985b052)

java-sdk-7.3.1

13 Aug 18:54

Choose a tag to compare

7.3.1 (2019-08-13)

Bug Fixes

  • Compare and Comply: Fix property definition to avoid serialization errors (0bd8fcc)

java-sdk-7.3.0

25 Jul 12:52

Choose a tag to compare

7.3.0 (2019-07-25)

Bug Fixes

  • Compare and Comply: Add correct getter for contract types and additional props (f16dfd9)

Features

  • Assistant v2: Add search skill support (3a4ceb8)
  • Compare and Comply: Add Contexts and TableTitle models (b2da66d)
  • Compare and Comply: Add ContractTerms, ContractTypes, Interpretation, and PaymentTerms models (b72aa8f)
  • Compare and Comply: Add Mention model (b3675fd)
  • Compare and Comply: Add new constant values (d534fc2)
  • Compare and Comply: Add Paragraphs model (be85232)
  • Compare and Comply: Add text and provenance ID info to various models (133db0e)
  • Natural Language Understanding: Add confidence prop to EntitiesResult and EntityMention (4bf11b8)
  • Speech to Text: Add updated prop to AcousticModel and LanguageModel (b6dc3ac)

java-sdk-7.2.0

16 Jul 18:58

Choose a tag to compare

7.2.0 (2019-07-16)

Features

  • Update core dependency to allow for proxy authentication (b91bf78)

java-sdk-7.1.1

18 Jun 16:26

Choose a tag to compare

7.1.1 (2019-06-18)

Bug Fixes

  • Speech To Text: Can not get Audio Metrics with WebSocket (21db159)

java-sdk-7.1.0

07 Jun 20:46

Choose a tag to compare

7.1.0 (2019-06-07)

Bug Fixes

  • Discovery: Fix response model nesting of Collection to match API response (84cc23f)
  • Discovery: Fix typo in constant string name (NTML_V1 -> NTLM_V1) (0e6e7f2)

Features

  • Assistant v1: Add intents and entities props to DialogNodeOutputOptionsElementValue (0d9102e)
  • Assistant v2: Add builder to DialogRuntimeResponseGeneric (d80d28d)
  • Assistant v2: Add MessageContextSkill model (4b0afb3)
  • Compare and Comply: Return FeedbackDeleted model from deleteFeedback method (48d07f4)
  • Discovery: Add annotatedFields prop to SegmentSettings (861cfae)
  • Discovery: Add blacklist prop to SourceOptionsWebCrawl (187e2f2)
  • Discovery: Add constants to Fequency interface in SourceSchedule (d29ccac)
  • Discovery: Add imageTextRecognition prop to Conversions (2370e83)
  • Discovery: Add new constant and nextCrawl prop to SourceStatus (ee092dc)
  • Discovery: Add response models for delete methods (1274e5b)
  • Discovery: Add smartDocumentUnderstanding field to Collection (f200d11)
  • Discovery: Add status prop to CreateCredentialsOptions (c095725)
  • Discovery: Add status prop to Credentials (22d905c)
  • Discovery: Add status prop to UpdateCredentialsOptions (9509f75)
  • Language Translator: Add deleteDocument method (4976f12)
  • Language Translator: Add getDocumentStatus method (c4d939b)
  • Language Translator: Add getTranslatedDocument method (d57e263)
  • Language Translator: Add listDocuments method and return model for deleteModel (dfaf664)
  • Language Translator: Add translateDocument method (33a1f51)
  • Natural Language Understanding: Add explanation param (806f923)
  • Natural Language Understanding: Add explanation prop and related models (6c1ffec)
  • Natural Language Understanding: Add response model for deleteModel (7f8772d)
  • Speech to Text: Add new metrics-related models (39b9478)
  • Speech to Text: Add processingMetrics and audioMetrics props to SpeechRecognitionResults (ef9bc74)
  • Speech to Text: Add processingMetrics, processingMetricsInterval, and audioMetrics params to CreateJobOptions (f1da445)
  • Speech to Text: Add processingMetrics, processingMetricsInterval, and audioMetrics params to RecognizeOptions (da7d4a7)
  • Speech to Text: Add response model to trainLanguageModel method (ced6621)
  • Speech to Text: Add strict param to TrainAcousticModelOptions (9a2fb6a)
  • Speech to Text: Add strict param to TrainLanguageModelOptions (128559d)

7.0.0

13 May 13:00

Choose a tag to compare

7.0.0 (2019-03-28)

Breaking changes

General

  • Some big things in the migration guide
  • All properties of the type Map have been changed to Map<String, Object>

Assistant v1

Model changes

  • CreateCounterexample renamed to Counterexample
  • CreateDialogNode renamed to DialogNode
  • CreateExample renamed to Example
  • EntityExport renamed to Entity
  • InputData renamed to MessageInput
  • IntentExport renamed to Intent
  • LogExport renamed to Log
  • Mentions renamed to Mention
  • ValueExport renamed to Value
  • WorkspaceExport renamed to Workspace

Property changes

  • DialogNode
    • dialogNodeId renamed to dialogNode
  • Entity
    • entityName renamed to entity
  • EntityMention
    • exampleText renamed to text
    • intentName renamed to intent
  • Example
    • exampleText renamed to text
  • Intent
    • intentName renamed to intent
  • Synonym
    • synonymText renamed to synonym
  • Value
    • valueText renamed to value

Other

  • Counterexample getters have been renamed (e.g. getText() -> text())
  • MessageInput is now dynamic
  • addValue() method in CreateEntityOptions.Builder renamed to addValues()

Assistant v2

Model changes

  • MessageContextSkill has been deleted

Compare and Comply

Model changes

  • Category renamed to CategoryComparison
  • TypeLabel renamed to TypeLabelComparison

Property changes

  • Attribute
    • ADDRESS constant removed from Type interface
  • BodyCells
    • rowHeaderIds type changed from List<String> to List<RowHeaderIds>
    • rowHeaderTexts type changed from List<String> to List<RowHeaderTexts>
    • rowHeaderTextsNormalized type changed from List<String> to List<RowHeaderTextsNormalized>
    • columnHeaderIds type changed from List<String> to List<ColumnHeaderIds>
    • columnHeaderTexts type changed from List<String> to List<ColumnHeaderTexts>
    • columnHeaderTextsNormalized type changed from List<String> to List<ColumnHeaderTextsNormalized>
  • ClassifyElementsOptions
    • modelId renamed to model
    • filename has been deleted
    • ModelId interface renamed to Model
  • CompareDocumentsOptions
    • modelId renamed to model
    • file1Filename has been deleted
    • file2Filename has been deleted
    • ModelId interface renamed to Model
  • ConvertToHtmlOptions
    • modelId renamed to model
    • ModelId interface renamed to Model
  • CreateBatchOptions
    • modelId renamed to model
    • inputCredentialsFilename has been deleted
    • outputCredentialsFilename has been deleted
    • ModelId interface renamed to Model
  • DeleteFeedbackOptions
    • modelId renamed to model
    • ModelId interface renamed to Model
  • ExtractTablesOptions
    • modelId renamed to model
    • filename has been deleted
    • ModelId interface renamed to Model
  • GetFeedbackOptions
    • modelId renamed to model
    • ModelId interface renamed to Model
  • UpdateBatchOptions
    • modelId renamed to model
    • ModelId interface renamed to Model

Discovery

Model changes

  • QueryResultResultMetadata renamed to QueryResultMetadata

Property changes

  • CreateConfigurationOptions
    • name is now required
  • CreateExpansionsOptions
    • expansions is now required
  • DiskUsage
    • percentUsed has been deleted
    • total has been deleted
    • totalBytes has been deleted
    • used has been deleted
  • DocumentStatus
    • created has been deleted
    • updated has been deleted
  • FederatedQueryOptions
    • collectionIds type changed from List<String> to String
    • passagesFields type changed from List<String> to String
    • returnFields type changed from List<String> to String
    • similarDocumentIds type changed from List<String> to String
    • similarFields type changed from List<String> to String
    • sort type changed from List<String> to String
  • Field
    • BOOLEAN constant renamed to XBOOLEAN in FieldType interface
    • BYTE constant renamed to XBYTE in FieldType interface
    • DOUBLE constant renamed to XDOUBLE in FieldType interface
    • FLOAT constant renamed to XFLOAT in FieldType interface
    • LONG constant renamed to XLONG in FieldType interface
    • SHORT constant renamed to XSHORT in FieldType interface
  • IndexCapacity
    • memoryUsage has been deleted
  • QueryResult
    • score has been deleted
  • QueryNoticesResult
    • score has been deleted
  • QueryOptions
    • collectionIds type changed from List<String> to String
    • passagesFields type changed from List<String> to String
    • returnFields type changed from List<String> to String
    • similarDocumentIds type changed from List<String> to String
    • similarFields type changed from List<String> to String
    • sort type changed from List<String> to String
  • SourceStatus
    • COMPLETE_WITH_NOTICES constant removed from Status interface
    • STOPPED constant removed from Status interface
  • UpdateConfigurationOptions
    • name is now required

Other

  • CreateConfigurationOptions
    • Builder(String environmentId) changed to Builder(String environmentId, String name)
    • addEnrichments() renamed to addEnrichment()
    • addNormalizations() renamed to addNormalization()
  • CreateExpansionsOptions
    • Builder(String environmentId, String collectionId) changed to Builder(String environmentId, String collectionId, List<Expansion> expansions)
  • UpdateConfigurationOptions
    • Builder(String environmentId, String configurationId) changed to Builder(String environmentId, String configurationId, String name)
    • addEnrichments() renamed to addEnrichment()
    • addNormalizations() renamed to addNormalization()

Language Translator

Property changes

  • CreateModelOptions
    • forcedGlossaryFilename has been deleted
    • parallelCorpusFilename has been deleted

Natural Language Classifier

Property changes

  • CreateClassifierOptions
    • metadataFilename has been deleted
    • trainingDataFilename has been deleted

Other

  • Old versions of classify(), createClassifier(), deleteClassifier(), getClassifier(), and getClassifiers() without options model parameters have been removed

Natural Language Understanding

Model changes

  • CategoriesOptions is no longer dynamic
  • MetadataOptions is no longer dynamic
  • MetadataResult renamed to AnalysisResultsMetadata
  • SemanticRolesAction renamed to SemanticRolesResultAction
  • SemanticRolesObject renamed to SemanticRolesResultObject
  • SemanticRolesSubject renamed to SemanticRolesResultSubject
  • Usage renamed to AnalysisResultsUsage

Other

  • CategoriesOptions
    • getLimit() has been renamed to limit()

Personality Insights

Other

  • profileAsCsv() now just accepts a single ProfileOptions profileOptions parameter

Speech to Text

Property changes

  • AddCorpusOptions
    • corpusFilename has been deleted
  • AudioListing
    • duration type changed from Double to Long
  • AudioResource
    • duration type changed from Double to Long

Other

  • CreateJobOptions.Builder constructor with InputStream audio and String contentType parameters removed
  • RecognizeOptions.Builder constructor with InputStream audio and String contentType parameters removed

Text to Speech

Property changes

  • AddWordOptions
    • translation is now required
  • AddWordsOptions
    • words is now required

Visual Recognition

Property changes

  • ClassifyOptions
    • parameters property has been deleted
    • imagesFilename now required if imagesFile is specified
  • CreateClassifierOptions
    • positiveExamplesFilename property has been deleted
  • DetectFacesOptions
    • parameters property has been deleted
    • imagesFilename now required if imagesFile is specified
  • UpdateClassifierOptions
    • positiveExamplesFilename property has been deleted

Other

  • Old API key authentication is no longer supported
  • CreateClassifierOptions
    • addClass() method renamed to addPositiveExamples()
  • UpdateClassifierOptions
    • addClass() method renamed to addPositiveExamples()

Non-breaking changes

General

  • The core portion of the SDK has been moved to its own repo
  • Added reactiveRequest() execution method (see README section and migration guide)
  • Null values are returned from the APIs (#959)
  • com.ibm.jsse2.overrideDefaultTLS is no longer changed (#1020)
  • IAM authentication is done on a separate thread to play better with Android (#1041)

Assistant v1

###...

Read more

6.14.1

04 Apr 21:37

Choose a tag to compare

This is the last release for v6.x.x of the SDK 😢 If you'd like to continue getting updates, please migrate to the latest version. You can read about changes here.

Note that as part of the latest release, you'll need to target a different package in Maven/Gradle. See the new installation instructions for more information.

6.14.0

07 Feb 22:37

Choose a tag to compare