Speedment is a Stream ORM Java Toolkit and Runtime
APACHE-2.0 License
Bot releases are visible (Hide)
Published by minborg over 7 years ago
This release contains the following new features:
countries.stream()
.filter(Country.ISO3.greaterThan("B"))
.filter(Country.ISO3.isNotEmpty())
.sorted(Country.ISO3.comparator().reversed())
.sorted(Country.ISO3.comparator())
.skip(2)
.skip(1)
.limit(10)
.count(),
will be rendered to :
SELECT count(*) from (
SELECT `id`,`abbrevation`,`name`,`full_name`,`iso3`,`number`,`region`
FROM `speedment_test`.`country`
WHERE
(`speedment_test`.`country`.`iso3` > ? COLLATE utf8_bin) AND
(`speedment_test`.`country`.`iso3` <> '')
ORDER BY `speedment_test`.`country`.`iso3` ASC
LIMIT ? OFFSET ?
) AS A, values:[B, 10, 3]
#369 Verify Speedment with Java9
#263 Tool: Remove FontAwesome Dependency
#384 Consumed Streams can be re-used
#421 Add package-info.java files to new packages
#426 count() optimization does not take other optimizers into account
#385 Override asFunction() in primitive classes like IntGetter and LongGetter
Published by minborg over 7 years ago
This release contains the following new features:
countries.stream()
.filter(Country.ISO3.greaterThan("B"))
.filter(Country.ISO3.isNotEmpty())
.sorted(Country.ISO3.comparator().reversed())
.sorted(Country.ISO3.comparator())
.skip(2)
.skip(1)
.limit(10),
will be rendered to :
SELECT `id`,`abbrevation`,`name`,`full_name`,`iso3`,`number`,`region`
FROM `speedment_test`.`country`
WHERE
(`speedment_test`.`country`.`iso3` > ? COLLATE utf8_bin) AND
(`speedment_test`.`country`.`iso3` <> '')
ORDER BY `speedment_test`.`country`.`iso3` ASC
LIMIT ? OFFSET ?, values:[B, 10, 3]
Note how consecutive skips are added and how redundant comparators that refer to the same column are eliminated.
#404 Port don't update in GUI
#412 Update and Delete may succeed without error, even if nothing was changed
#403 Java9: Test Stream::takeWhile and Stream::dropWhile
#417 How to deal with crowded tables (a.k.a actual tables on production systems)
#411 Generated fields and primary key fields are not in ordinalPosition order
#418 Make AbstractPredicate immutable
#413 Add limit() to the stream optimizer FilterSortedSkipOptimizer
#390 Java9: Allow Stream::iterator and Stream::spliterator in Speedment Streams
#389 Optimize Predicate::or SQL rendering
#195 Predicate combination improvement request
Published by minborg over 7 years ago
This release contains the following new features:
countries.stream()
.filter(Country.ISO3.greaterThan("B"))
.filter(Country.ISO3.isNotEmpty())
.sorted(Country.ISO3.comparator().reversed())
.sorted(Country.ISO3.comparator())
.skip(2)
.skip(1),
will be rendered to :
SELECT `id`,`abbrevation`,`name`,`full_name`,`iso3`,`number`,`region`
FROM `speedment_test`.`country`
WHERE
(`speedment_test`.`country`.`iso3` > ? COLLATE utf8_bin) AND
(`speedment_test`.`country`.`iso3` <> '')
ORDER BY `speedment_test`.`country`.`iso3` ASC
LIMIT 223372036854775807 OFFSET ?, values:[B, 3]
Note how consecutive skips are added and how redundant comparators that refer to the same column are eliminated.
#399 Count Pipeline not Always Optimized
#378 Logger formatting error
#387 Speedment Plugin does not use proper JSON file location
Published by minborg over 7 years ago
This release contains the following new features:
#370 Error building Speedment in JDK 9
#362 Out of range value for column (UNSIGNED)
#336 withSchema() does not work
#372 withConnectionUrl() does not work
#291 Speedment with TomEE
Published by minborg over 7 years ago
This release contains the following new features:
#361 FieldComparator is not immutable
#288 Stale Blob and Clob
#272 Static imports to the same package gets removed by CodeGen
#358 FieldComparator.reversed() should always return a FieldComparator
#234 Spurious fail in test
#356 NullPointerException when "reloading" in GUI(TOOL)
#339 Reload database fails
#355 NullPointerException when not including ".withPassword("1234")"
#353 Wrong Port is used when connecting to MySql database
#313 Optimize SqlAdapter code generation
#238 Indeterministic order of generated interface methods
#348 Tests fail if executed from Travis server
#345 Got exception when generating new table in existing database MariaDB
Published by minborg over 7 years ago
This release contains the following new features:
#332 Better naming of Injector methods
#328 Json: Error parsing negative numbers
#319 Very large ResultSets can result in out of memory
#330 Methods like withSchema() does not take effect
#320 Old MySQL driver is used even if 6.0.x is specified
#321 Tool saves config even if an issue was discovered bug fixed
#322 A Timer thread prevents the Speedment instance from being closed automatically
#315 Can't connect without a password
#316 Exceptions in AbstractDbmsMetadataHandler are not thrown
#314 Some API packages lack documentation
Published by minborg over 7 years ago
This release contains the following new features:
#309 Make it possible to configure Injector parameters in the pom.xml
#307 Injector.inject() does not set @Config-parameters
#306 Make classloader configurable in injector
#305 Can't use project as dependency in speedment-maven-plugin
#300 UI warns when schema is named "Speedment" enhancement fixed
#299 Error when outputting to log
#297 SqlAdapter is generated with compilation error when using custom primitive TypeMapper
#295 Bug where injector is not run until after decorators have been applied to translators
#294 CodeGen: Make it possible to override methods in Enum Constants
#289 postgresql autoIncrement bug
#286 count() is optimized when there is a filter with a general lambda predicate in the pipeline
#279 ApplicationBuilder, with-configs should use identifier
#221 org.postgresql.util.PSQLException: Bad value for type long
#261 JavaLanguageNamer missing JavaDoc
#259 Compability issue with later versions of MySQL connector
#28 .equals and .equalsIgnoreCase in SQL does not match correctly
Published by minborg about 8 years ago
This release contains the following new features:
None
Fixed bugs:
#276 spring-generator-plugin generated Beans creates manager via app.managerOf
Published by Pyknic about 8 years ago
This release contains the following new features over 2.3.7:
Reworked API - Entities are stand-alone and does not have to have a Speedment instance - Easier integration with other tools (e.g. gson) and reduced complexity.
Modularized system - Easier to understand and maintain the code and makes it possible to depend on the parts your application need.
Single JAR dependency with runtime-deploy
Support for primitive types in entities. Even for nullable columns, for example using OptionalLong or OptionalInt.
More advanced UI showing warnings and tips as well as an issue dialog to resolve potential config issues
New withLogging() methods for easy SQL logging of database operations
Updated wikis on GitHub
New Maven goals:
clear - Allows the user to remove all generated code from the project (e.g. for versioning)
reload - Makes it possible to re-load metadata from the database with no UI (e.g. command line)
Track changes in generated files using hash codes. This allows protection for manually overridden classes and allows renaming of tables in the UI and they will be appropriately moved to the new location.
Custom packaging: Entities, Managers and Application classes can be placed anywhere individually.
New type system allowing mapping to primitive types, arrays, enums etc.
Fixed bugs:
#274 Remove .stream()-method from Document interface
#271 Improve tests of generated fields
#270 Generated primitive field predicates produce erronous operators
#269 Generated field declaration is too wide
#268 Go through all fonts to make sure only bundles fonts are used
#267 Add checkmarks to active options in the Window menu
#266 Problematic usage of app.configure()
#260 LongForeignKeyFieldImpl does not have trait HasFinder - needed by JsonEncoderImpl.put
#256 Update the Spring plugin to latest version of Spring
#255 Consider making DefaultJavaClassTranslator public in the API
#254 Problematic namespace for runtime shader map
#251 Nullable int foreign key gives error in generated code bug
#250 JDBC type is not seen in Tool
#248 Fix wikis so that they are updated to 3.x
#246 Expose import com.speedment.runtime.internal.stream.parallelstrategy.ConfigurableIteratorSpliterator in the API
#243 JavaDoc not updated to 3.0.0-EA version on github
#242 Remove icon dependencies
#241 SpeedmentVersion and InfoComponent does not always specify the same version
#240 checkDatabaseConnectivity() doesn't actually check connectivity
#237 When using the standard ConnectionPool, stale data can be seen for MySQL
#235 Add way to see what SQL queries are sent in a simple way enhancement fixed
#233 Disable editing of database details by misstake
#232 Decide if nullable column should be Optional or Wrapper in the UI
#231 More String Comparison Operators
#230 Create maven goal that clears any generated files
#229 UI Workspace area should show name of document being edited
#228 Logger listeners might not be transferred to loggers
#227 Investigate if TypeMapperComponent can be moved to Generator
#226 If table starts with protected name, show warning
#225 If alias is not auto and database name is changed, the alias is changed anyway
#223 If translator is removed, a null pointer exception might be thrown during generation
#222 Print better error messages when primary key is missing
#217 Inconsistent label naming in UI and label not shown
#213 Clean up the SpeedmentImpl class
#212 Speedment.get should return Optional
#211 Rethink the listener system
#209 Remove speedment()-method from entities
#208 CodeGen: Interface methods can't have generic types
#203 Cancel button does not work when parsing database metadata
#202 The default database name is not used in the UI
#201 Separate Application into builder and instance
#198 Uncompilable code when using arrays in type mappers
#196 count() does not optimize pipelines with filters
#189 Add getDescription() to the Component interface
#181 Use Java 8 Instant for time mapping
Published by minborg about 8 years ago
This release contains the following new features over 2.3.7:
Reworked API - Entities are stand-alone and does not have to have a Speedment instance - Easier integration with other tools (e.g. gson) and reduced complexity.
Modularized system - Easier to understand and maintain the code and makes it possible to depend on the parts your application need.
Single JAR dependency for runtime
More advanced UI showing warnings and tips as well as an issue dialog to resolve potential config issues
JDBC type can be seen in the UI when clicking a column
New withLogging() methods for easy SQL logging of database operations
Updated wikis on GitHub
New Maven goals:
clear - Allows the user to remove all generated code from the project (e.g. for versioning)
reload - Makes it possible to re-load metadata from the database with no UI (e.g. command line)
Track changes in generated files using hash codes. This allows protection for manually overridden classes and allows renaming of tables in the UI and they will be appropriately moved to the new location.
Custom packaging: Entities, Managers and Application classes can be placed anywhere individually.
New type system allowing mapping to primitive types, arrays, enums etc.
Support for primitive types in entities. Even for nullable columns, for example using OptionalLong or OptionalInt.
Fixed bugs:
#260 LongForeignKeyFieldImpl does not have trait HasFinder - needed by JsonEncoderImpl.put
#256 Update the Spring plugin to latest version of Spring
#255 Consider making DefaultJavaClassTranslator public in the API
#254 Problematic namespace for runtime shader map
#251 Nullable int foreign key gives error in generated code bug
#250 JDBC type is not seen in Tool
#248 Fix wikis so that they are updated to 3.x
#246 Expose import com.speedment.runtime.internal.stream.parallelstrategy.ConfigurableIteratorSpliterator in the API
#243 JavaDoc not updated to 3.0.0-EA version on github
#242 Remove icon dependencies
#241 SpeedmentVersion and InfoComponent does not always specify the same version
#240 checkDatabaseConnectivity() doesn't actually check connectivity
#237 When using the standard ConnectionPool, stale data can be seen for MySQL
#235 Add way to see what SQL queries are sent in a simple way enhancement fixed
#233 Disable editing of database details by misstake
#232 Decide if nullable column should be Optional or Wrapper in the UI
#231 More String Comparison Operators
#230 Create maven goal that clears any generated files
#229 UI Workspace area should show name of document being edited
#228 Logger listeners might not be transferred to loggers
#227 Investigate if TypeMapperComponent can be moved to Generator
#226 If table starts with protected name, show warning
#225 If alias is not auto and database name is changed, the alias is changed anyway
#223 If translator is removed, a null pointer exception might be thrown during generation
#222 Print better error messages when primary key is missing
#217 Inconsistent label naming in UI and label not shown
#213 Clean up the SpeedmentImpl class
#212 Speedment.get should return Optional
#211 Rethink the listener system
#209 Remove speedment()-method from entities
#208 CodeGen: Interface methods can't have generic types
#203 Cancel button does not work when parsing database metadata
#202 The default database name is not used in the UI
#201 Separate Application into builder and instance
#198 Uncompilable code when using arrays in type mappers
#189 Add getDescription() to the Component interface
#181 Use Java 8 Instant for time mapping
Published by minborg about 8 years ago
This release contains the following new features:
Reworked API - Entities are stand-alone and does not have to have a Speedment instance - Easier integration with other tools (e.g. gson) and reduced complexity.
Modularized system - Easier to understand and maintain the code and makes it possible to depend on the parts your application need.
Single JAR dependency for runtime
More advanced UI showing warnings and tips as well as an issue dialog to resolve potential config issues
New Maven goals:
clear - Allows the user to remove all generated code from the project (e.g. for versioning)
reload - Makes it possible to re-load metadata from the database with no UI (e.g. command line)
Track changes in generated files using hash codes. This allows protection for manually overridden classes and allows renaming of tables in the UI and they will be appropriately moved to the new location.
Custom packaging: Entities, Managers and Application classes can be placed anywhere individually.
New type system allowing mapping to primitive types, arrays, enums etc.
Support for primitive types in entities. Even for nullable columns, for example using OptionalLong or OptionalInt.
Fixed bugs:
#233 Disable editing of database details by misstake
#232 Decide if nullable column should be Optional or Wrapper in the UI
#231 More String Comparison Operators
#230 Create maven goal that clears any generated files
#229 UI Workspace area should show name of document being edited
#228 Logger listeners might not be transferred to loggers
#227 Investigate if TypeMapperComponent can be moved to Generator
#226 If table starts with protected name, show warning
#225 If alias is not auto and database name is changed, the alias is changed anyway
#223 If translator is removed, a null pointer exception might be thrown during generation
#222 Print better error messages when primary key is missing
#217 Inconsistent label naming in UI and label not shown
#213 Clean up the SpeedmentImpl class
#212 Speedment.get should return Optional
#211 Rethink the listener system
#209 Remove speedment()-method from entities
#208 CodeGen: Interface methods can't have generic types
#203 Cancel button does not work when parsing database metadata
#202 The default database name is not used in the UI
#201 Separate Application into builder and instance
#198 Uncompilable code when using arrays in type mappers
#189 Add getDescription() to the Component interface
#181 Use Java 8 Instant for time mapping
Published by minborg about 8 years ago
his release contains the following new features:
Fixed bugs:
#236 Speedment crashes in latest version of Java
Published by minborg about 8 years ago
This release contains the following new features:
Fixed bugs:
notBetween became between
Published by minborg over 8 years ago
This release contains the following new features:
Added a new TypeMapper for Integer (0|1) to Boolean
Fixed bugs:
#219 column "PUBLIC" of relation "ADINFO" does not exist (prevented PostgreSQL tables to be updated)
Published by minborg over 8 years ago
This release contains the following new features:
None
Fixed bugs:
#210 Json fileld are not named correctly
#207 Generated newEntityFrom()-method in manager contains disabled columns
#206 Dbms Port can only be spinned, not set
#204 ManagerImpl does not take disabled columns into account
#199 Code is generated when you press Return-key
#192 Make sure all translators use builder pattern
#96 CodeGen importer removes static member imports
#95 Static imports in CodeGen with the same package name are filtered away
Published by minborg over 8 years ago
This release contains the following new features:
Responsibility for entity copy moved to manager
Fixed bugs:
None
API version: 2.3
Published by minborg over 8 years ago
This release contains the following new features:
Fixed bugs:
#193 java: code too large
#180 Generated copy()-method erases the original entity
#172 Report progress in UI for each Column rather than each Table
#170 When referencing an inner class, config file will use dollar sign ($) instead of dot (.)
#168 Dbms doesn't have a Java Alias
#167 If a project name contains a space, it should be removed in package names
#166 Auto-field preview isn't visible until you toggle it
#165 If a company name contains a space, the previewed package name will be wrong
#164 Company Name isn't used in generated code
#148 If you press "Reload" and write the wrong password, the entire project is cleared
#145 EntitySupport() fails for 2 digit entity names
API version: 2.3
Published by minborg over 8 years ago
This release contains the following new features:
None
NOTE : If you are upgrading from a Speedment version prior to 2.3.0 then: Because the migration from Groovy to JSON, users need to re-run the UI to read the schema metadata from scratch.Because the layout of the generated files has changed, users are advised to delete generated files generated by previous Speedment version and re-generate all the Java classes from scratch. Speedment no longer depends on JDBC drivers like MySQL and MariaDB. Users with existing projects must therefore add these dependencies directly in the project’s POM.
Fixed bugs:
#162 Autoincrement metadata is not detected for MySQL and MariaDB
API version: 2.3
Published by minborg over 8 years ago
This release contains the following new features:
NOTE 1: Because the migration from Groovy to JSON, users need to re-run the UI to read the schema metadata from scratch.
NOTE 2: Because the layout of the generated files has changed, users are advised to delete generated files generated by previous Speedment version and re-generate all the Java classes from scratch.
NOTE 3: Speedment no longer depends on JDBC drivers like MySQL and MariaDB. Users with existing projects must therefore add these dependencies directly in the project’s POM.
Fixed bugs:
#101 AbstractBaseEntiry.getEntityClass() shows up in some JSON libs
#106 Potential risk for dropped listeners in UI
#108 UI doesn't start when .json file is missing
#110 Port number is not set for auto settings on new project
#111 Icon is not shown on error messages
#112 Wrong file name is used for speedment.json when dir is initially created
#113 getDbmsNameMeaning() not visible in gui
#114 Databases that are plugged in are lost in GUI
#115 Some settings are lost in the UI
#120 Auto-increment columns fails for Postgres
#122 No response is given if a Schema is entered that doesn't exist
#127 PostgreSQL boolean column is mapped to int
#137 Table with exotic names may fail to load its columns
#141 Table with 2 characters results in error in GeneratedImpl class
#142 generated code doesnt work
#144 Underscores (_) are stripped from column name constants
#147 Potential concurrency issue when loading projects
#152 When loading from json-file and pressing Dbms, an exception is thrown
API version: 2.3
Published by minborg almost 9 years ago
This release contains the following new features:
Performance improvements:
Fixed bugs:
#74 Parallel stream does not work for managers bug
#67 @External param that takes boolean will not work with Boolean bug
#63 Table names that begin with a number isn't allowed bug
#54 Unnecessary imports in generated application file bug enhancement
#44 Schema names that contains dots (.) does not work bug
#20 No specific message in GUI if error during generation bug
API version: 2.2