<commit_before>homepage: http://www.yesodweb.com/book/persistent
changelog-type: markdown
hash: 336e9cf8b2d74307a5d39fa98dee09f081bb3c98354243591101bd1a046aff6b
test-bench-deps:
  bytestring: -any
  mysql: -any
  base: '>=4.9 && <5'
  time: -any
  persistent: -any
  hspec: '>=2.4'
  text: -any
  persistent-qq: -any
  persistent-template: -any
  HUnit: -any
  fast-logger: -any
  containers: -any
  quickcheck-instances: -any
  unliftio-core: -any
  persistent-mysql: -any
  monad-logger: -any
  transformers: -any
  QuickCheck: -any
  resourcet: -any
  persistent-test: -any
maintainer: <NAME> <<EMAIL>>
synopsis: Backend for the persistent library using MySQL database server.
changelog: "# Changelog for persistent-mysql\n\n## 2.10.3\n\n* Compatibility with
  latest persistent\n\n## 2.10.2.3\n\n* Fix issue with multiple foreign keys on single
  column. [#1025](https://github.com/yesodweb/persistent/pull/1025)\n\n## 2.10.2.2\n\n*
  Compatibility with latest persistent-template for test suite [#1002](https://github.com/yesodweb/persistent/pull/1002/files)\n\n##
  2.10.2.1\n\n* Changed persistent-mysql to use 'utf8mb4' instead of 'utf8' in migrations
  [#980](https://github.com/yesodweb/persistent/pull/980) @charukiewicz\n\n## 2.10.2\n\n*
  Added support for GHC 8.8 [#977](https://github.com/yesodweb/persistent/pull/977)\n\n##
  2.10.1\n\n* Added `constraint=` attribute to allow users to specify foreign reference
  constraint names.\n\n## 2.10.0\n\n* Remove deprecated `SomeField` type and pattern
  synonym. Use `HandleUpdateCollision` type instead and the `copyField` function instead
  of `SomeField` constructor/pattern. [#894](https://github.com/yesodweb/persistent/pull/894)\n\n##
  2.9.0\n\n* Added support for SQL isolation levels to via SqlBackend. [#812]\n* Fix
  [832](https://github.com/yesodweb/persistent/issues/832): `repsertMany` now matches
  `mapM_ (uncurry repsert)` and is atomic.\n\n## 2.8.1\n\n* Implemented `connPutManySql`
  to utilize batched `putMany`. [#770](https://github.com/yesodweb/persistent/pull/770)\n\n##
  2.8.0\n\n* Switch from `MonadBaseControl` to `MonadUnliftIO`\n* Fix duplicate migrations
  when using `mediumtext`, `longtext`, `mediumblob`, `longblob`, and `double`s using
  a custom precision. [#754](https://github.com/yesodweb/persistent/pull/754)\n\n--
  This can be released as a minor change on the next update. Currently persistent-mysql
  can't be released because 2.6.2.2 depends on persistent-2.7.2 being released.\n\n*
  The `SomeField` type was renamed to `HandleUpdateCollision` and deprecated. Please
  migrate to using `HandleUpdateCollision`.\n* The `SomeField` constructor was deprecated,
  and a temporary pattern synonym introduced. Please migrate to using `copyField`.\n\n##
  2.6.2.2 [UNRELEASED ON HACKAGE]\n\n-- This version depends on persistent 2.7.2,
  which introduced breaking changes and is deprecated on hackage.\n\n* Fix ambiguous
  type errors introduced by `persistent-2.7.2` [#723](https://github.com/yesodweb/persistent/pull/723)\n\n##
  2.6.2.1\n\n* Fix haddock documentation [#725](https://github.com/yesodweb/persistent/pull/725)\n\n##
  2.6.2\n\n* Extend the `SomeField` type to allow `insertManyOnDuplicateKeyUpdate`
  to conditionally copy values.\n* Depend on `mysql-simple >= 0.4.3` to fix encoding
  and decoding of date/time values with fractional seconds (when a column is specified
  using something like `sqltype=TIME(6)`).  See also [#705](https://github.com/yesodweb/persistent/issues/705)\n*
  Fix behavior of `insertManyOnDuplicateKeyUpdate` to ignore duplicate key exceptions
  when no updates specified.\n\n## 2.6.1\n\n* Add functions `insertOnDuplicateKeyUpdate`,
  `insertManyOnDuplicateKeyUpdate` to `Database.Persist.MySQL` module.\n\n## 2.6.0.2\n\nPrevent
  spurious no-op migrations when `default=NULL` is specified - revised version [#672](https://github.com/yesodweb/persistent/pull/672)
  (which fixes bug [#671](https://github.com/yesodweb/persistent/issues/671) introduced
  by the earlier attempt [#641](https://github.com/yesodweb/persistent/pull/641))\n\n##
  2.6\n\nCompatibility for backend-specific upsert functionality.\nA lucky contributor
  could add upsert to the MySQL backend now, i.e.:\nINSERT ... ON DUPICATE ...\n\n##
  2.5\n\n* changes for read/write typeclass split\n\n## 2.3.0.1\n\nSupport usign default=
  for changing the id field type\n\n## 2.3\n\n* Distinguish between binary and non-binary
  strings in MySQL [#451](https://github.com/yesodweb/persistent/pull/451)\n\t* Previously
  all string columns (VARCHAR, TEXT, etc.) were being returned from Persistent as
  `PersistByteString`s (i.e. as binary data). Persistent now checks character set
  information to determine if the value should be returned as `PersistText` or `PersistByteString`.\n\t*
  This is a **breaking change** if your code is relying on a `PersistByteString` being
  returned for string-like MySQL values; persistent-mysql itself had several runtime
  errors that needed to be fixed because of this patch. High-level code dealing purely
  with `PersistEntities` should be unaffected.\n\n## 2.2\n\n* Update to persistent
  2.2\n\n## 2.1.3\n\n* Added a `Show` instance for `MySQLConf`.\n\n## 2.1.2.1\n\nDocumentation
  typo fix\n\n## 2.1.2\n\nProvide a `FromJSON` instance for `MySQLConf`.\n"
basic-deps:
  bytestring: '>=0.10.8'
  mysql: '>=0.1.4 && <0.2'
  base: '>=4.9 && <5'
  persistent: '>=2.11 && <3'
  text: '>=1.2'
  resource-pool: -any
  conduit: '>=1.2.12'
  containers: '>=0.5'
  blaze-builder: -any
  unliftio-core: -any
  monad-logger: -any
  transformers: '>=0.5'
  resourcet: '>=1.1'
  aeson: '>=1.0'
  mysql-simple: '>=0.4.4 && <0.5'
all-versions:
- 0.8.0
- 0.8.1
- 0.8.2
- 0.8.3
- 0.8.4
- 0.9.0
- 0.9.0.1
- 0.9.0.2
- 0.9.0.3
- 1.0.0
- 1.0.1
- 1.0.2
- 1.1.0
- 1.1.2
- 1.1.3
- 1.1.4
- 1.2.0
- 1.2.1
- 1.3.0
- 1.3.0.1
- 1.3.0.2
- 1.3.1
- '2.1'
- 2.1.1
- 2.1.2
- 2.1.2.1
- 2.1.3
- 2.1.3.1
- '2.2'
- '2.3'
- 2.3.0.1
- 2.3.0.2
- '2.5'
- '2.6'
- 2.6.0.1
- 2.6.0.2
- 2.6.1
- 2.6.2
- 2.6.2.1
- 2.8.0
- 2.8.1
- 2.9.0
- 2.10.0
- 2.10.1
- 2.10.2
- 172.16.58.3
- 172.16.31.10
- 172.16.58.3
- 2.10.3
author: <NAME> <<EMAIL>>, <NAME>
latest: 2.10.3
description-type: haddock
description: |-
  This package contains a backend for persistent using the
  MySQL database server.  Internally it uses the @mysql-simple@
  and @mysql@ packages in order to access the database.

  This package supports only MySQL 5.1 and above.  However, it
  has been tested only on MySQL 5.5.
  Only the InnoDB storage engine is officially supported.

  Known problems:

  * This package does not support statements inside other
  statements.
license-name: MIT<commit_msg>Update from Hackage at 2020-12-10T20:35:30Z<commit_after>homepage: http://www.yesodweb.com/book/persistent
changelog-type: markdown
hash: 205ac868c73f7fe4937548bb0ca7ab03db7fdbcad1b325751851c6aeebcc9148
test-bench-deps:
  bytestring: -any
  mysql: -any
  base: '>=4.9 && <5'
  time: -any
  persistent: -any
  hspec: '>=2.4'
  text: -any
  persistent-qq: -any
  persistent-template: -any
  HUnit: -any
  fast-logger: -any
  containers: -any
  quickcheck-instances: -any
  unliftio-core: -any
  persistent-mysql: -any
  monad-logger: -any
  transformers: -any
  QuickCheck: -any
  resourcet: -any
  persistent-test: -any
maintainer: <NAME> <<EMAIL>>
synopsis: Backend for the persistent library using MySQL database server.
changelog: "# Changelog for persistent-mysql\n\n## 2.10.3.1\n* Fix foreign key migrations
  [#1167] https://github.com/yesodweb/persistent/pull/1167\n  * Fix a bug where a
  foreign key of a field to its table was ignored.\n\n## 2.10.3\n\n* Compatibility
  with latest persistent\n\n## 2.10.2.3\n\n* Fix issue with multiple foreign keys
  on single column. [#1025](https://github.com/yesodweb/persistent/pull/1025)\n\n##
  2.10.2.2\n\n* Compatibility with latest persistent-template for test suite [#1002](https://github.com/yesodweb/persistent/pull/1002/files)\n\n##
  2.10.2.1\n\n* Changed persistent-mysql to use 'utf8mb4' instead of 'utf8' in migrations
  [#980](https://github.com/yesodweb/persistent/pull/980) @charukiewicz\n\n## 2.10.2\n\n*
  Added support for GHC 8.8 [#977](https://github.com/yesodweb/persistent/pull/977)\n\n##
  2.10.1\n\n* Added `constraint=` attribute to allow users to specify foreign reference
  constraint names.\n\n## 2.10.0\n\n* Remove deprecated `SomeField` type and pattern
  synonym. Use `HandleUpdateCollision` type instead and the `copyField` function instead
  of `SomeField` constructor/pattern. [#894](https://github.com/yesodweb/persistent/pull/894)\n\n##
  2.9.0\n\n* Added support for SQL isolation levels to via SqlBackend. [#812]\n* Fix
  [832](https://github.com/yesodweb/persistent/issues/832): `repsertMany` now matches
  `mapM_ (uncurry repsert)` and is atomic.\n\n## 2.8.1\n\n* Implemented `connPutManySql`
  to utilize batched `putMany`. [#770](https://github.com/yesodweb/persistent/pull/770)\n\n##
  2.8.0\n\n* Switch from `MonadBaseControl` to `MonadUnliftIO`\n* Fix duplicate migrations
  when using `mediumtext`, `longtext`, `mediumblob`, `longblob`, and `double`s using
  a custom precision. [#754](https://github.com/yesodweb/persistent/pull/754)\n\n--
  This can be released as a minor change on the next update. Currently persistent-mysql
  can't be released because 2.6.2.2 depends on persistent-2.7.2 being released.\n\n*
  The `SomeField` type was renamed to `HandleUpdateCollision` and deprecated. Please
  migrate to using `HandleUpdateCollision`.\n* The `SomeField` constructor was deprecated,
  and a temporary pattern synonym introduced. Please migrate to using `copyField`.\n\n##
  2.6.2.2 [UNRELEASED ON HACKAGE]\n\n-- This version depends on persistent 2.7.2,
  which introduced breaking changes and is deprecated on hackage.\n\n* Fix ambiguous
  type errors introduced by `persistent-2.7.2` [#723](https://github.com/yesodweb/persistent/pull/723)\n\n##
  2.6.2.1\n\n* Fix haddock documentation [#725](https://github.com/yesodweb/persistent/pull/725)\n\n##
  2.6.2\n\n* Extend the `SomeField` type to allow `insertManyOnDuplicateKeyUpdate`
  to conditionally copy values.\n* Depend on `mysql-simple >= 0.4.3` to fix encoding
  and decoding of date/time values with fractional seconds (when a column is specified
  using something like `sqltype=TIME(6)`).  See also [#705](https://github.com/yesodweb/persistent/issues/705)\n*
  Fix behavior of `insertManyOnDuplicateKeyUpdate` to ignore duplicate key exceptions
  when no updates specified.\n\n## 2.6.1\n\n* Add functions `insertOnDuplicateKeyUpdate`,
  `insertManyOnDuplicateKeyUpdate` to `Database.Persist.MySQL` module.\n\n## 2.6.0.2\n\nPrevent
  spurious no-op migrations when `default=NULL` is specified - revised version [#672](https://github.com/yesodweb/persistent/pull/672)
  (which fixes bug [#671](https://github.com/yesodweb/persistent/issues/671) introduced
  by the earlier attempt [#641](https://github.com/yesodweb/persistent/pull/641))\n\n##
  2.6\n\nCompatibility for backend-specific upsert functionality.\nA lucky contributor
  could add upsert to the MySQL backend now, i.e.:\nINSERT ... ON DUPICATE ...\n\n##
  2.5\n\n* changes for read/write typeclass split\n\n## 2.3.0.1\n\nSupport usign default=
  for changing the id field type\n\n## 2.3\n\n* Distinguish between binary and non-binary
  strings in MySQL [#451](https://github.com/yesodweb/persistent/pull/451)\n\t* Previously
  all string columns (VARCHAR, TEXT, etc.) were being returned from Persistent as
  `PersistByteString`s (i.e. as binary data). Persistent now checks character set
  information to determine if the value should be returned as `PersistText` or `PersistByteString`.\n\t*
  This is a **breaking change** if your code is relying on a `PersistByteString` being
  returned for string-like MySQL values; persistent-mysql itself had several runtime
  errors that needed to be fixed because of this patch. High-level code dealing purely
  with `PersistEntities` should be unaffected.\n\n## 2.2\n\n* Update to persistent
  2.2\n\n## 2.1.3\n\n* Added a `Show` instance for `MySQLConf`.\n\n## 2.1.2.1\n\nDocumentation
  typo fix\n\n## 2.1.2\n\nProvide a `FromJSON` instance for `MySQLConf`.\n"
basic-deps:
  bytestring: '>=0.10.8'
  mysql: '>=0.1.4 && <0.2'
  base: '>=4.9 && <5'
  persistent: '>=2.11 && <3'
  text: '>=1.2'
  resource-pool: -any
  conduit: '>=1.2.12'
  containers: '>=0.5'
  blaze-builder: -any
  unliftio-core: -any
  monad-logger: -any
  transformers: '>=0.5'
  resourcet: '>=1.1'
  aeson: '>=1.0'
  mysql-simple: '>=0.4.4 && <0.5'
all-versions:
- 0.8.0
- 0.8.1
- 0.8.2
- 0.8.3
- 0.8.4
- 0.9.0
- 0.9.0.1
- 0.9.0.2
- 0.9.0.3
- 1.0.0
- 1.0.1
- 1.0.2
- 1.1.0
- 1.1.2
- 1.1.3
- 1.1.4
- 1.2.0
- 1.2.1
- 1.3.0
- 1.3.0.1
- 1.3.0.2
- 1.3.1
- '2.1'
- 2.1.1
- 2.1.2
- 2.1.2.1
- 2.1.3
- 2.1.3.1
- '2.2'
- '2.3'
- 2.3.0.1
- 2.3.0.2
- '2.5'
- '2.6'
- 2.6.0.1
- 2.6.0.2
- 2.6.1
- 2.6.2
- 2.6.2.1
- 2.8.0
- 2.8.1
- 2.9.0
- 2.10.0
- 2.10.1
- 2.10.2
- 2.10.2.1
- 2.10.2.2
- 2.10.2.3
- 2.10.3
- 2.10.3.1
author: <NAME> <<EMAIL>>, <NAME>
latest: 172.16.17.32
description-type: haddock
description: |-
  This package contains a backend for persistent using the
  MySQL database server.  Internally it uses the @mysql-simple@
  and @mysql@ packages in order to access the database.

  This package supports only MySQL 5.1 and above.  However, it
  has been tested only on MySQL 5.5.
  Only the InnoDB storage engine is officially supported.

  Known problems:

  * This package does not support statements inside other
  statements.
license-name: MIT
{'fraction_non_alphanumeric': 0.15271117668756917, 'fraction_numerical': 0.07008483954260421, 'mean_word_length': 3.4518883415435138, 'pattern_counts': {'":': 0, '<': 27, '<?xml version=': 0, '>': 45, 'https://': 31, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 51, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1059424', 'n_tokens_mistral': 5588, 'n_tokens_neox': 5157, 'n_words': 1356}