CHANGELOG

All notable changes to this project will be documented in this file.

The format follows Keep a Changelog, and the project versioning adheres to Semantic Versioning.

[1.12.0] - UNRELEASED

Added

  • #134 Overload RandomService#randomSublist and RandomService#randomSubset with sizeRange parameter

  • #144 Add index and punctuation chars support to RandomService#randomString

Changed

  • #135 Initialize Faker data providers lazily

Fixed

  • #140 Fix NPE when generating CurrencySymbol with non 'en' locale

  • #142 Fix unique localized category keys missing from dictionary

  • #136 Parameter 'streets' not found in 'ADDRESS' category

  • #137 Parameter 'category' not found in 'COMPANY' category for 'ja' locale

  • #146 Fix RandomService#randomString for some eng-lang locales

Docs

  • #130 Document how to add new data providers

[1.11.0] - 2022-05-22

Added

  • #122 [core] Add (unique) numerify, letterify, bothify and regexify functions through StringProvider

  • #129 [core] Update dictionary files, including:

  • New data and functions in existing data providers

  • Updates to existing localized dictionaries

    • Especially notable for fr and ja locales as they now, similarly to en locale, contain multiple dict files per locale

  • New localized dictionaries for es-AR, lt and mi-NZ locales

New Data Providers

  • adjective

  • australia

  • bible

  • bird

  • brooklynNineNine

  • camera

  • clashOfClans

  • conan

  • doraemon

  • emotion

  • finalSpace

  • fmaBrotherhood

  • hobby

  • howToTrainYourDragon

  • jackHandey

  • kamenRIder

  • mountain

  • naruto

  • room

  • studioGhibli

  • superMario

  • supernatural

  • tea

  • theKingkillerChronicle

  • theOffice

  • tolkien

  • touhou

  • tron

  • volleyball

Changed

  • Some functions will now accept enum-typed parameters instead of strings

  • Add deprecation warnings to some functions due to upstream changes in yml dict files

Fixed

  • #125 [core] Generating postcode with locale "nl" gives back expression rather than result

[1.10.0] - 2022-02-20

Added

  • #115 [core] Add Crossfit® provider to Faker

  • #117 [core] Add namedParameterGenerator for RandomProvider#randomClassInstance

  • #118 [core] Add support for chained parameter expressions in yml dicts

  • #55 [core] Add missing 'Educator' functionality

  • #53 [core] Implement 'Finance' functions

Fixed

  • #54 [core] Incorrect return values for Vehicle#licence_plate(_by_state)

[1.9.0] - 2021-11-19

Added

  • #103 [core] Add support for Collection types in RandomProvider#randomClassInstance

  • #96 [core] Add randomSubset and randomSublist to RandomService

  • #92 [core] Add randomString function to RandomService

  • #86 [core] Generate birth-date based on the age

Changed

  • #108 Update kotlin to 1.6.0

  • #100 [core] Add deprecation warning for RandomService#nextString since it’s going to be replaced with RandomService#randomString

  • #97 [core] Change RandomService#nextString to generate strings only within given locale

Fixed

  • #104 [core] RandomProvider#randomClassInstance : 'No suitable constructor found' for primitive classes

[1.8.0] - 2021-10-03

Added

  • #67 [core] Access to RandomService through Faker for generating random Int, Double, Float, etc.

  • #77 [core] Extra functionality to RandomService - nextEnum(), nextUUID(), nextLong(bound) functions.

  • #69 [core] Passing seed directly to FakerConfig instead of through java.util.Random instance

  • #71 [core] DSL for creating and configuring Faker

  • #78 [core] Support sealed classes in RandomProvider#randomClassInstance fun

  • #88 [core] Postpone initialization of FakerConfig through the Builder

Changed

  • Configurable length of the string generated with RandomService#nextString

Fixed

  • #65 [core] Could not initialize class io.github.serpro69.kfaker.Mapper with SpringBoot 2.4.x

  • #60 [core] Move out of Bintray/Jcenter

  • #79 [core] java.lang.NoClassDefFoundError: org/yaml/snakeyaml/error/YAMLException

  • #81 [core] RandomProvider#randomClassInstance fails for object types

  • #90 [core] Android java.lang.NoClassDefFoundError: FakerService$$ExternalSyntheticLambda1

  • #87 [core] Parameter 'city_root' not found in 'address' category

  • #89 [core] Parameter 'male_last_name' not found in 'name' category for "ru" locale

[1.7.1] - 2021-04-28

Fixed

  • #45 [core] Parameter 'city_name' not found in 'address'

[1.7.0] - 2021-04-16

Added

  • #59 [core] Random money amount

  • #62 [core] Add nullable types to random provider type generator

[1.6.0] - 2020-12-30

Added

  • #44 [core] Add support for random instance configuration.

  • #47 [core] Publish release candidates to bintray

  • #49 [core] Unique values exclusions with wildcards

  • #46 [core] Support deterministic constructor selection for randomClassInstance

Fixed

  • #26 [core] Parameter '4' not found in 'vehicle' category

  • #48 [core] streetFighter#moves: class java.util.LinkedHashMap cannot be cast to class java.lang.String

  • #50 [core] Horseman spelt wrong

  • #56 [core] Values with single '?' char are not always letterified

Changed

[1.5.0] - 2020-08-30

Added

  • #40 [core] Add enum support for RandomProvider

  • #39 [core] Update dict files.

  • Including new functions in existing providers:

  • aquaTeenHungerForce.quote()

  • dnd.cities()

  • dnd.languages()

  • dnd.meleeWeapons()

  • dnd.monsters()

  • dnd.races() - replaces deprecated species() function.

  • dnd.rangedWeapons()

  • heroesOfTheStorm.classNames() - replaces deprecated classes() function

  • movie.title()

  • name.neutralFirstName()

  • phish.albums()

  • phish.musicians()

  • phish.songs() - replaces deprecated song() function

  • simpsons.episodeTitles()

  • Including new faker providers:

  • barcode

  • bigBangTheory

  • drivingLicense

  • drone

  • futurama

  • minecraft

  • prince

  • rush

  • streetFighter

Changed

  • #32 Upgrade kotlin to 1.4.0

[1.4.1] - 2020-08-22

Added

  • #41 publish to maven central

[1.4.0] - 2020-07-09

Fixed

  • #36 Build native-image before uploading to bintray

Changed

  • #37 Revisit automated builds for patches

Added

  • #34 [core] 8 new providers:

  • warhammerFantasy

  • suits

  • show

  • pearlJam

  • departed

  • control

  • dnd

  • blood

  • #33 [faker-bot] partial matching for provider names

[1.3.1] - 2020-06-07

Fixed

  • #27 Resolving partially-localized provider functions with secondary_key

[1.3.0] - 2020-06-03

Added

  • #24 faker-bot cli application

  • Automated releases to github

Changed

  • #29 Remove classgraph dependency

  • Split core faker functionality and cli bot application into sub-projects.

[1.2.0] - 2020-05-17

Added

  • 3 new providers: chiquito, computer, and rajnikanth

  • New functions to existing providers:

  • address.cityWithState()

  • address.mailbox()

  • gender.shortBinaryTypes()

  • educator provider changed completely due to new dict file structure

  • Upgrades to existing dict files

  • Automated versioning (patches only) and deploys

Fixed

  • #18 Visibility of randomClassInstance() function in [RandomProvider](core/src/main/kotlin/io/github/serpro69/kfaker/provider/RandomProvider.kt) class

  • #20 Issues with FasterXML Jackson 2.10.1

[1.1.0] - 2019-11-30

Added

  • 3 new providers: game, horse, and opera

  • 2 new locales: th and en-TH

  • New functions to existing providers:

  • cannabis.brands()

  • company.sicCode()

  • internet.email(name)

  • internet.safeEmail(name)

Changed

  • Rename functions as per changes in the dictionary files:

  • drWho.villians()drWho.villains()

  • space.launchVehicule()space.launchVehicle()

  • Updated all dictionary files incl. localizations

Fixed

  • #15 Sources artifact is empty

[1.0.0] - 2019-10-30

Added

  • FakerConfig for configuration of Faker instance

  • #7 Generation of unique values through Faker instance and separate providers

  • #8 Exclusion of generated values for global unique generator

  • #12 Generation of email addresses to Internet provider

Changed

  • Make Faker a class instead of singleton object

  • #13 Rename Internet.safeEmail to Internet.domain

[0.2.0] - 2019-09-30

Added

  • #1 Random class instance generator

  • #2 Support for deterministic random

[0.1.0] - 2019-04-16

Added

  • Generator of fake data for the majority of .yml files

  • Readme containing installation and usage examples

  • This changelog file

  • CI through travis

  • Publishing to bintray

Fixed

  • #3 Initializing faker with invalid locale

  • #4 Resolving "separator" category

  • #5 Reading .yml files from compiled .jar