Slick 2.1.0-RC1
July 10 2014
We are happy to announce the release of Slick 2.1.0-RC1. This is a Release Canditate. If no regressions are found, we will release 2.1.0 final after 7 days.
The artifacts are available on Maven Central, as usual. You can find the source code here: https://github.com/slick/slick/tree/2.1.0-RC1. Please see http://slick.typesafe.com/doc/2.1.0-RC1/ for documentation.
Fixes and features
This is a feature release.
- Official support for Scala 2.11 and 2.10, cross-built from the same codebase.
- New documentation in the user manual, including a chapter for migrating from SQL to Slick.
- Improved and more comprehensive API documentation.
- Insert-or-update support which makes use of native databases features where possible, falling back to a client-side emulation otherwise.
- Parameters for
take
anddrop
calls (required for pagination) can now be used in precompiled queries. - We don’t use sample projects like
slick-examples
anymore. All samples come in the form of Activator templates with an integrated tutorial. They are tied to a Slick major version but evolve separately from minor releases. - Configure database connections through Typesafe Config using
Database.forConfig
, in a format which is compatible with Play’s database configuration (but no support for connection pools yet) - Outer join emulation: All types of outer joins are now available on all databases. You can check for the corresponding capability flags to see if the support is native or emulated (with different joins and unions).
- OSGi support: Slick and Slick Extensions are now proper OSGi bundles.
- Improved performance when reading JDBC ResultSets, including the option to define even more efficient custom mappings which can completely avoid boxing. See JdbcMapperTest and UnboxedBenchmark for examples.
- Collection type constructor encoding in queries: All collection-valued queries now
contain a type constructor (the default for tables being
Seq
, as before) that can be changed with a call to.to[...]
(like in Scala Collections) at any point in a query, thus allowing arbitrary collections (including arrays) to be built with.run
- Additional string methods like
substring
can now be used in queries. - Insert queries can now be pre-compiled using
Compiled
, just like other queries. - Model reverse-engineering from the database schema has been made customizable as
the
ModelBuilder
class. This allows to make up for non-standard conformant jdbc drivers and driver specific-extensions, when generating the model. - Code generator improvements.
- TestKit is more flexible and easier to use. You can now use it to test your own extensions for Slick against the standard databases supported by Slick. Less configuration is required due to the use of Typesafe Config with sensible defaults.
- All bug fixes from the Slick 2.0.x series
The Slick Extensions package with closed-source drivers for Oracle, DB/2 and SQL Server will be published to the Typesafe repository within a few days.
The Slick Example Activator Templates, Slick Codegen Example, Slick Customized Codegen Example will be updated within a few days.
Complete list of changes since Slick 2.0.0
aebc16f
Release 2.1.0-RC1b05b411
Add Float support to ModelBuilder / Fix MetaModelTest for jtds7ade0e8
Prepare model for binary compatibility with potential future extensionfd22e84
Improve reverse engineer to work with slick-extensions - support for Char and BigDecimal caveats: - Boolean mapping still flawed - DBType mapping still flawed and non-portable65c4544
Add a test for Array[Byte] literals.0b9d8d2
Enhance model reverse engineering2acc05d
Add new ColumnOption Length for string columnsd659d09
Move code generator into its own subprojectea0589a
Update custom shape docs.bb4ae81
Add scaladoc link checker and fix the currently broken linksc8a28bb
Add the CaseClassShape from #692.78f543f
Move JDBC Meta data API tests into TestKit.953ccc0
Improve new String operations introduced in #843.2ee426c
Generate table of driver capabilities for the user manual.39e4fe5
Use BIGSERIAL for auto-generated BIGINT columns in PostgresDriver.b6a4df3
Improve error message for unsupported DELETE queries.3939bb0
Expose “open” and “transaction” flags in BaseSession.b434e8f
Add hashCode/equals methods to the DDL trait490f7bd
Ignore follow-up exceptions when closing a withSession block.ba71aff
Add test case for issue #511190c50e
Set type when inlining aggregation functions.0ce4f51
Add a complete snippet to paste to buildbeafa0c
Better scaladoc for extension methods for Column and Query.885ff9f
Fix result set debug logging, broken by the previous commit29a1784
Add result set debug logging5289c0a
Added few string functions5e331df
Add performance benchmark logging for JDBC statement execution1c7c6f5
Mark AccessDriver as deprecated.50fb6a6
Improve logginge7585e2
Table constraints and indexes ordered by name. Generated DDL are then unique and thus, difference in DDL can only be the result of a change in the table. Fixes playframework/play-slick#146.22cdcc2
Add some missing cases to Compilable/Executable9baf84f
Fix the Shape for Query.ad50505
Remove UnshapedQueryExecutor56c7fb7
Simplify Rep hierarchy69abcae
Fix docs TOC depthd74adb5
Fix docs TOC depthb937743
Update Scala version to 2.11.160e7e89
User uppercase identifiers in InsertTest.testInsertOrUpdateAutoInc.c823c59
More flexibility for TestKit17c298f
Use Typesafe Config for database configurations542e642
Improve from SQL to Slick documentation, add operators comparison03a3eb4
Various documentation improvements for 2.176efe03
Add from SQL to Slick documentationd1d6a91
Fix the build failure from merging tmp/issue-742 & tmp/insert-or-updatebde4ad2
OSGi bundle improvements:d2ac664
Restrict Shape.provenShape to only allow unpacked types in ProvenShape.5234454
Fix some bugs in comprehension fusion.dd15e41
Support Unit values in Query return types.cfee5bb
Revert the hconsShape workaround.f91370f
Enforce maxRows in PositionedResultIterator.be2ff65
Prevent some initialization order problems4fa915c
Add insertOrUpdate to InsertInvoker.27ba43d
More improvements for Inserts.6992328
Improve Inserts0b77999
Allow non-literal constant values for Query.take and Query.drop21f85e9
Do not escape columns named tag in generated code889dae9
Don’t patch type changes from OptionApply in hoistClientOps.3ca772d
Add some hooks to JdbcMappingCompilerComponent.a10be62
Use Scala specialization for ResultConverter.513c956
Use positional access in JDBC ResultConverters.90cc8bf
Optimize conversion of result and parameter values.935558e
Deprecate more operators:9dccddc
Improve scaladoc comments and clean up API for Slick 2.1.a13e53a
Remove IntrinsicSymbol85d4e00
Clean up dependenciesc8420b2
Improve OSGi integration:57c87f5
Add def size as alias for length to Query for more Scala collections api conformity55c2a01
Fix assertion error for multiple nameless fks or indices (non type-safe equality caught us)047bb07
First cut at OSGi-fun for slick.b2a6dc1
Add docs for MappedColumnType import and hand-written case class companions.3a7f53c
Prevent “no-symbol does not have an owner” when using MappedTo.338e959
Fix identity groupBy with type mappings.18f3cf2
Emulate outer joins where necessary.439305f
Correctly propagate build failures to sbt’s exit code.82316d1
Fix codegen autoinc last as option for HLists (issue #704)76e638c
Add test for outer joins and fix capability declarations.b86cd4b
Fix name collision with columns named ‘tag’ in codegenf1c3737
Fix Scaladoc links2dca474
Scala 2.11 compatibility.e71ed6e
Add alias and documentation for ForeignKeyAction3fc16d8
Allow building of non-erased collections through ClassTags.6e981e5
Provide implicit CollectionTypeConstructorse3ab1d8
Allow Query result type constructors to be changed.0139d27
Simplify Query internals.5c5c657
Encode the type constructor for the unpacked collection type into Query.d0e1e99
Remove zero values from ScalaType.6d1cbd9
Simplify Option handling in JdbcProfile.1b5f1f4
Simplify Invokers70a5a2b
Add test case for nesting mapped entities754660c
Add test for broken mapping to Chare2ab531
Fixed issue #698 (MappedColumnType broken for Char)77a19aa
Fixed issue #554 (ZIP joins)ce04fe8
Modify DDL to run drop phases in LIFO order. Fixes issue #701.c78ed2f
Emulate empty join conditions where needed.7ae79d6
Add JDBC interop docs3555385
Add documentation forinto
method258a6bc
Support casts to boolean and double in Access.e065fcd
Fix initialization order problem in generated code89c3c2e
Reuse “simple” object for “Implicit” in driver implementations.c6bc382
Remove deprecated features7e2d6b4
Update version numbers for 2.1fc5cabe
Enable documentation tests on Travis CI73064e9
Documentation improvements for 2.0.1.8b8ed11
Add test case for issue #645 (to be fixed in slick-extensions)1e5146c
Implement casts for more basic data types in QueryInterpreter.2a54174
Add configuration for MySQL and PostgreSQL tests on Travis CI.386920a
Add basic Travis CI configuratione96132b
Fix self-referencing table in codegen (#619)d944e27
Expand Table refs into columns in “returning” projections.1f87cfb
Add ddl for all tables to codegen4533b0c
Substitute correct versions numbers from the build into the docsb01241d
Remove all special handling for products of size 1.2022107
Infer correct NominalType views even without the NominalType.c59ba50
Fix a smorgasbord of bugs for more robust groupBy.73c9175
Add optional db authentication to default code generator runner1f76f36
Improve codegen docs: address spotted confusions, hlist fix, typos, formatting23e9450
Add row value constructor to codegen output Supersedes #614b870f3d
Generate scaladoc src links and graphs for test kitbe508cc
Fix for #618, codegen single, non-option column tables.6d7610d
Fix for taking Option GetResult from caller scopee436802
Fix for #616, code gen generated wrong default value for Option columns (not using Some)da01462
Fix some codegen docsae51292
Extend codegen HList test to 33 columns to test performanceb5f9144
Change codegen to avoid :: HCons type alias (as a possible workaround for #577)b88337d
Split compound types and compound values in codegen9f274cc
Enable disabled codegen tests after fixing spurious compilation errors0d2e885
Document caching insert invoker217af59
Ensure that CountAll rewriting creates unique column names.5aad43f
Add MiMa for Slick 2.0 stream98af9b6
Support Library.Max in QueryInterpreter.e2ece2f
Pass Slick version properly from sbt into Sphinx.0be0423
Fix for #597, negative int default valueabe9197
Add failing test for #175
Past News Items
Sep 18 2022
Slick 3.4.0 was released and published to Maven Central, with 281 merged pull requests, many from the community. A pull request that could cause issues was then rolled back, so...
Aug 16 2022
If you use Slick, please try 3.4.0-RC3 by changing the version in your build. After a week, if no regressions have been reported we will G-d willing release 3.4.0 (final)....
Apr 23 2021
Slick is community-maintained. Planning for future releases,
including for Scala 3, is in progress. Please help if you can!
For details, visit [this ticket](https://github.com/slick/slick/issues/2198).
Sep 09 2020
We have just released Slick 3.3.3 You can find the source code here: . Builds for Scala 2.11, 2.12 and 2.13 are available from Maven Central, as usual. ## Highlights...
Jan 30 2019
We have just released Slick 3.3.0 You can find the source code here: . Builds for Scala 2.11 and 2.12 are available from Maven Central, as usual. ## These are...
Mar 23 2018
We have just released Slick 3.2.3. You can find the source code here: . Builds for Scala 2.11 and 2.12 are available from Maven Central, as usual. From 3.2.0 on,...
Mar 06 2018
We have just released Slick 3.2.2. You can find the source code here: . Builds for Scala 2.11 and 2.12 are available from Maven Central, as usual. From 3.2.0 on,...
Jul 20 2017
We have just released Slick 3.2.1. You can find the source code here: . Builds for Scala 2.11 and 2.12 are available from Maven Central, as usual. From 3.2.0 on,...