LLBLGen Pro v2.0 released!

Posts   
1  /  2
 
    
Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 02-Jul-2006 13:45:14   

LLBLGen Pro v2.0 was released today, July 1st 2006!. After 9 months of hard work it was finally done. We would hereby thank all of you who have helped us in some way or the other to get this milestone done and give us the energy and ideas to make it a great release (if I may say so wink )

V2.0 also comes with a new licensing scheme: it's now licensed per seat, instead of per-department. Current customers of v1.0.200x.y can upgrade for EUR 49.- per developer. (Designer using developers need a license, the rest don't). To upgrade, log in to the customer area using your 1.0.200x.y customerid and password and click on the upgrade link.

Of course, every new release brings new features and enhancements, and this version isn't an exception to that simple_smile . Below is a summary of the long list of big and small enhancements and new features packed into v2.0.

What's new?

  • Full .NET 2.0 support in generated code and runtime libraries with separate runtime libraries codebase for .NET 2.0, using .NET specific features like generics internally as well for optimal performance.
  • SqlServer 2005 server side paging queries now use a CTE based query instead of a temptable based query for optimal performance.
  • Support for nullable types for value-type based entity and view fields. (.NET 2.0 targeting code only)
  • Support for System.Transactions transactions when applicable (SqlServer 2005, .NET 2.0)
  • Support for wsdl schema interpretation logic to have wsdl.exe generate typed stubs for webservices instead of DataSet based stubs (.NET 2.0 targeting code only)
  • New feature-rich validation framework.
  • Powerful data-projection framework: project any entitycollection or resultset retrieved from a datareader onto any datastructure of any type using generic code.
  • Ability to specify scalar queries in expressions, so a subquery inside a selectlist or inside expressions in filters is now possible.
  • It's now possible to fetch a query as a datareader. This query can be a stored procedure call, or a query created on the fly. This datareader can then be used further, if required, to project the data onto classes like entity classes, datatables or custom classes using the generic data-projection framework. This makes it possible to fetch entities through a stored procedure call with very a few lines of code.
  • EntityView (SelfServicing) and EntityView2 (Adapter) classes added, which are dataview-style objects for entity collections. They support sorting, and filtering in-memory, data projection onto other entity collections, datatables or custom classes. Filtering and sorting is done through strongly-typed, compile-time checked predicate and sortclause objects, which are also used for filters and sorters in database queries.
  • Expressions now support calls to database functions (UDF's or system functions). Database functions can accept entity fields or normal values you pass to the function or other expressions (like for example scalar queries).
  • Full support for 2-way declarative databinding and design time databinding in ASP.NET 2.0, using the LLBLGenProDataSource (selfservicing) and LLBLGenProDataSource2 (adapter) controls. These controls support (design time) databinding of entity collections, typed lists and typed views and support server-side paging, sorting and filtering. They also support data persistence / retrieval delegation to different methods (by tracking changes into a UnitofWork object), and filtering/sorting based on parameter binding with other controls on an ASP.NET 2.0 webform.
  • Full support for design time databinding in .NET 2.0 windows forms.
  • .NET 2.0/VS.NET 2005: A set of Debugger Visualizers has been added for a lot of classes in the framework to ease debugging your code.
  • support for CF.NET 2.0 and SqlServerCE 3.0
  • Oracle support using the Microsoft Oracle provider. This replaces the DataDirect based Oracle support.
  • SqlServer 2005: support for synonyms for tables and views, support for User Defined Types (UDT) based on CLR classes, support for NEWSEQUENTIALID() so sequential uniqueidentifier values can be generated by the DB and read back into entities.
  • PostgreSql support for PostgreSql v7.4 and up
  • Much lower memory footprint of entity collections in memory.
  • Entity fetch speed has been greatly enhanced.
  • LLBLGen Pro designer is now running on .NET 2.0, using the new Janus Windows controls v3 for windowing and grids.
  • Plug-ins can now open their own docked window in the LLBLGen Pro designer
  • It's now possible to specify in the designer additional namespaces and interfaces to generate into the entity classes
  • Completely new code generation configuration system, which makes it very easy to add/remove/edit the tasks scheduled in the run queue for code generation.
  • New template configuration system which makes it very easy to add your own templates to an existing set of templates to enhance or replace existing templates
  • Much more small enhancements, changes, tweaks and additions. Working towards such a milestone as this is sometimes a challenge but it was and still is well worth it, thanks to you all! smile .

We hope you all will appreciate what we've implemented in v2.0 and we hope it will bring you even more productivity than v1.0 already did.

A housekeeping note: the forums are currently divided between 1.0 and 2.0 forum sections, these will be merged soon. Also: some small things like the MySql 5.x feature support have been postponed till after this release, and will be added in the next weeks by a patch on the MySql driver.

Frans Bouma | Lead developer LLBLGen Pro
Kris
User
Posts: 79
Joined: 27-Oct-2005
# Posted on: 02-Jul-2006 14:06:11   

Dear Frans,

Congratulations with the birth of baby v.2.0 simple_smile

Thank you for giving the programmers' world a great tool!

erichar11
User
Posts: 268
Joined: 08-Dec-2003
# Posted on: 02-Jul-2006 20:30:24   

I'll say it too. Congrads smile

Ad
User
Posts: 19
Joined: 21-Apr-2006
# Posted on: 02-Jul-2006 20:49:27   

We hope you all will appreciate what we've implemented in v2.0 and we hope it will bring you even more productivity than v1.0 already did.

Well V1.0 is already great, so as a (small) leap of faith I'll upgrade allright sunglasses

Scotty
User
Posts: 41
Joined: 24-Jun-2005
# Posted on: 02-Jul-2006 20:59:10   

Congrats Frans! Just purchased the upgrade. Great features in the new version. Nice job!

HaulMark
User
Posts: 24
Joined: 11-Aug-2004
# Posted on: 02-Jul-2006 21:26:21   

Job well done! Can't wait to migrate!

jeffreygg
User
Posts: 805
Joined: 26-Oct-2003
# Posted on: 02-Jul-2006 22:47:19   

Congratulations, Frans, on a job well done! Now go take a vacation in Bermuda; just don't forget to bring your laptop! wink

Jeff...

tmpreston
User
Posts: 18
Joined: 21-Dec-2004
# Posted on: 03-Jul-2006 01:36:09   

Congratulations.

Just curious about your point - Much lower memory footprint of entity collections in memory. How much of a difference does this currently make?

Tim

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 03-Jul-2006 08:46:34   

Thanks all! smile

tmpreston wrote:

Congratulations.

Just curious about your point - Much lower memory footprint of entity collections in memory. How much of a difference does this currently make? Tim

20-30% In v1.x, every entity had new instances of static information concerning every field, so if you had 2 customer entities, they had both an instance of the CustomerID field with the static data of that field BOTH. In selfservicing this also was true for the persistence info. In v2, I made this static using a singleton. this means every CustomerID field shares some data with other fields, making the memory footprint much lower (and also the fetch speed much higher simple_smile )

Frans Bouma | Lead developer LLBLGen Pro
Rogelio
User
Posts: 221
Joined: 29-Mar-2005
# Posted on: 03-Jul-2006 13:26:55   

Frans,

Felicitaciones por el nuevo release. Congratulations for the new release.

npathuru
User
Posts: 17
Joined: 14-Jun-2005
# Posted on: 03-Jul-2006 17:05:03   

Frans,

Congratulations upon the new release. I am very interested in this feature:

Support for wsdl schema interpretation logic to have wsdl.exe generate typed stubs for webservices instead of DataSet based stubs (.NET 2.0 targeting code only)

Just wondering if you could provide more info on this. Thanks.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 03-Jul-2006 20:42:33   

Rogelio wrote:

Frans,

Felicitaciones por el nuevo release. Congratulations for the new release.

Muchas gracias, Rogelio simple_smile (I'm a real language miracle (NOT), I hope I recognized it correctly as spanish and that it's not portugese)

npathuru wrote:

Frans, Congratulations upon the new release. I am very interested in this feature: Support for wsdl schema interpretation logic to have wsdl.exe generate typed stubs for webservices instead of DataSet based stubs (.NET 2.0 targeting code only) Just wondering if you could provide more info on this. Thanks.

Please see the documentation section on XML Webservices, last paragraphs. simple_smile

Frans Bouma | Lead developer LLBLGen Pro
Rogelio
User
Posts: 221
Joined: 29-Mar-2005
# Posted on: 04-Jul-2006 02:25:04   

Otis wrote:

Rogelio wrote:

Frans,

Felicitaciones por el nuevo release. Congratulations for the new release.

Muchas gracias, Rogelio simple_smile (I'm a real language miracle (NOT), I hope I recognized it correctly as spanish and that it's not portugese)

Frans,

You are a real language miracle, yes it is Spanish!

Estoy sorprendido!

Saludos,

Rogelio

Seth avatar
Seth
User
Posts: 204
Joined: 25-Mar-2006
# Posted on: 04-Jul-2006 07:07:27   

Good work Frans, just bought the upgrade and am looking forward to makeing good software!

-Seth

kakaiya
User
Posts: 159
Joined: 20-Mar-2004
# Posted on: 04-Jul-2006 09:40:39   

Congratulations Otis, purchased/upgraded the license.

Really nice job, keep it up.

Very very happy using LLBLGen for our application development.

It is the best investment I have ever done.

Regards

Kaksss

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 04-Jul-2006 12:50:52   

Thanks all! smile

All these nice words, it's what it's all about, I can assure you simple_smile . The last couple of months were sometimes a true nightmare with very long days and dull testing work, retuning etc. etc. but it was well worth it. simple_smile So for all of you who also face deadlines and long crunchtimes ahead: don't work yourself to death of course but focus on the end result, it will be worth it simple_smile

Frans Bouma | Lead developer LLBLGen Pro
Marcus avatar
Marcus
User
Posts: 747
Joined: 23-Apr-2004
# Posted on: 04-Jul-2006 19:00:22   

Frans,

Have you considered extending the forum categories for LLBLGen V2 to include the same as V1 like "General" "Generated Code", "Bugs & Issues" etc

Categories like" Architecture" could be moved into the "General" top level category.

I can see that as people start using V2, it will be difficult for forum users to differentiate between posts relating to different versions...

Marcus

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 04-Jul-2006 20:37:09   

Marcus wrote:

Frans,

Have you considered extending the forum categories for LLBLGen V2 to include the same as V1 like "General" "Generated Code", "Bugs & Issues" etc

Categories like" Architecture" could be moved into the "General" top level category.

I can see that as people start using V2, it will be difficult for forum users to differentiate between posts relating to different versions... Marcus

Yes these actions haven't been executed. I haven't decided what to do: keep 2 forum sections, one per version, or merge everything together, I lean towards 1 section for all versions, after all, v2 is actually v6 of llblgen pro wink

But indeed, it could be difficult with all the different versions, but on the other hand, it also could get confusing where to post something which is somewhat general/generated code related, as v2 forums might not get the attention you need/want; I don't want people to post in 2 forums to get more attention for example (one reason to merge everything.).

In the coming days I'll make a decision and reorganize the forum simple_smile

Frans Bouma | Lead developer LLBLGen Pro
Kris
User
Posts: 79
Joined: 27-Oct-2005
# Posted on: 04-Jul-2006 20:59:53   

I'd prefer two sections, one per version. Some users will be using v 1.0 for ongoing projects and might have questions which result in different answers per version.

jeffreygg
User
Posts: 805
Joined: 26-Oct-2003
# Posted on: 04-Jul-2006 21:46:54   

I wonder if we couldn't have the version currently in use set as a default in the users' profile? When users post, perhaps that information could be listed in the post header, or something similar. If the user is using something different, they could note it in the post itself.

This way, we could keep the forums consolidated instead of continuing to increase them as we move to v3, v4, etc.

Jeff...

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 05-Jul-2006 11:44:20   

jeffreygg wrote:

I wonder if we couldn't have the version currently in use set as a default in the users' profile? When users post, perhaps that information could be listed in the post header, or something similar. If the user is using something different, they could note it in the post itself.

This way, we could keep the forums consolidated instead of continuing to increase them as we move to v3, v4, etc. Jeff...

It's an interesting thought, the problem is that the current forum software doesn't allow that. We're in the process of porting it to v2 and will add new features, and I've some ideas how to make this more generic and thus workable in the (near) future.

The thing I really want to avoid is that users get confused where to post their question. We've already seen a couple of times that people post beta bugs in the bugs/issues forum. I just want that if a user comes to the forums s/he should immediately see where to post the question.

Another reason to not create separate sections is that there have already been 5 major versions released of LLBLGen Pro, all share the same set of forums already, so the version problem is already a thing known for a long time. I hope to address this with a feature to formulate input forms for a thread start post easily and flexible so people will have to fill in some data before posting. This can solve the lack of info problem.

So I'll migrate the beta-bugs/issues forum with the normal bugs/issues forum and the general beta feedback forum with the general forum. All threads are migrated as they likely all contain some info which could benefit people starting with v2.

Frans Bouma | Lead developer LLBLGen Pro
Kris
User
Posts: 79
Joined: 27-Oct-2005
# Posted on: 05-Jul-2006 14:32:19   

What is your custom properties in a users profile (checkboxes current registered versions) automatically give right to the right forum sections view?

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39590
Joined: 17-Aug-2003
# Posted on: 05-Jul-2006 15:17:40   

Kris wrote:

What is your custom properties in a users profile (checkboxes current registered versions) automatically give right to the right forum sections view?

Then you would potentially miss information available to previous version owners which could benefit you as well.

Frans Bouma | Lead developer LLBLGen Pro
LLBLGen
User
Posts: 43
Joined: 10-Apr-2006
# Posted on: 05-Jul-2006 23:50:32   

Fran, Contratulations and Thank you for all your and your Team's hard work. This is truly the best thing that happened after the slice bread simple_smile

dtdimi
User
Posts: 12
Joined: 06-Jul-2006
# Posted on: 06-Jul-2006 12:51:00   

Hi,

is the "lazy loading" of blob entity fields implemented in this new version? Found a post where it was planned to be implemented.

Cheers, Dimitrios

1  /  2