Recent Posts and Articles
- Status: not much happened during the week, due to an Azure hackathon in Microsoft. Owin branch is updated, Nick is working on the Localization branch, TinyMCE updated to 4.1.4 and all available plugins were added in a separate feature.
- Nick updated the Inline Editing module with some UI changes and TinyMCE support.
- A bit of live troubleshooting on Sébastien's machine to solve an issue where running 1.x fails with an YSOD after updating from the Owin branch with the help of Nick. Temporary ASP.NET files should be cleaned (x86 and x64 too).
- After a long time, we did bug triage on the regular meeting too!
Orchard uses dynamic objects called shapes as view models. It happens commonly that you’ll want to use strongly-typed HTML helpers such as Html.TextBoxFor from within a shape’s template. What if now, my model has some properties that are what I’m really interested in, and that are of a known strong type?
- Title of the meeting: "Sébastien rimmed widget layers".
- Status: feature branches are still under development and feedback/testing/bugfixing is welcome!
- Performance improvements: sessions management (background tasks work with smaller batches of content); the background task updating the indices now works as a job (JobsQueue) and processes all the items in one go (but divided into multiple transactions of 50 items); Navigation, Projection and Layer queries optimized for performance.
- Jay-Z and Kanye joined the meeting (in spirit) too.
- Discussion about using a translation API (e.g. Bing) for localizing content, but they are still unreliable for keeping the context for more than a few sentences.
- Discussion about a new Gallery: it should be a "directory" pointing to the repositories and it should create the NuGet packages for the modules/themes based on specific tags in their repositories. It should also have a feature for displaying user-driven compatibility information for modules/themes with specific Orchard versions (and maybe with other modules/themes too).
- Discussion about Orchard's future and ASP.NET vNext: Orchard will support the Desktop-CLR, not the Cloud-optimized one, since some of Orchard's dependencies (Lucene, AutoFac, NHibernate) need it and the Cloud-CLR is only a subset of the Desktop-CLR, so e.g. System.Drawing would not be available. The ASP.NET vNext version of Orchard would be Orchard 2.0, but we can have 1.9 or even 1.10, etc. before that too.
- N. Taylor Mullen will join us next week to talk about the effects of ASP.NET vNext on Orchard and the new Razor engine. Check out his presentation from this year's Orchard Harvest.
- Document DB for Orchard 2.0? The problem is that it only works on Azure, so you couldn't set up a development environment locally.
- Would you like to see the Orchard documentation in your native language? Actually Antoine already solved this problem (see the French translation): just fork the Documentation project. It contains an ASP.NET Web Pages application, which you can just deploy to after you translated the documentation (which are stored in the form of MarkDown files in the Documentation folder).
- "See you on Thursday for a happy triage meeting!"
- We did almost an hour long bug triage and it's showing good progress: we reached January of 2014!
- May the do-loop be with you!
- Status: shortcut extension methods for reading and writing files through IStorageProvider added by Lombiq, feature branches (Layouts by Sipke and Localization by Nick) are updated with new features, project Web.config files updated for each module for Razor IntelliSense to work, "Securable" Content Type metadata for adding type-level permissions when editing Roles and "Securable content items" Content Type metadata for adding content item-level permissions when editing Roles added by Sébastien. Stanley's PR fixing that titles with only special characters were generating empty slugs (and overriding the home page) was pulled in. MediaLibrary folder contents are loaded on-demand, increasing performance for huge amount of media items (also a PR by Stanley).
- NHibernate is updated to 4.0. It's a new major version with a lot of bugfixes and it's built upon .NET 4.0.
- Demo by Nick - Localization updates: the Localization feature branch was updated to support transliteration settings. This enables the generation of slugs with Latin characters from titles that contain non-Latin characters. When creating localizable content items, you can now select a culture (instead of it being the site culture automatically). When selecting a RTL culture, the editors will immediately switch to RTL editing mode. A culture selector is displayed on the content listing page if you have more than one culture.
- Demo by Piotr and Marek - PowerShell console in the Dashboard: a virtual file system based on Orchard, where you can use the tools provided by PS to manage your Orchard site, like browsing and editing settings and features, running commands and use PS commandlets. It's possible to use it to manage your server from inside Orchard. The PowerShell.exe was basically re-implemented to fit into Orchard and runs inside Orchard's app domain.
- Demo by Sipke - Dynamic Forms: based on the Layouts module and enhancing the Custom Forms module, you can now create Forms with a dynamic layout and a huge range of customization options. Input validation is a feature to be added soon.
- Status: fixed a memory leak when creating LifetimeScopes, Sébastien will push a feature branch he's working on for REST API, fixed a bug in searching for content types, RTL support for Workflows and MediaLibrary added by Nick, AuditTrail now supports logging IP-addresses.
- Framework and library updates: .NET (4.5.1), ASP.NET MVC (5.2), Json.NET (6.0.4), Autofac (3.5.2), SqlCE (4.0 SP1).
- Sébastien did some testing regarding Eric's work with SQLite support, it works and looks promising performance-wise, but needs some tweaking.
- Demo by Sébastien - Securable: a new content type setting has been added (based on the discussions in the previous meetings). Enabling "Securable" for a content type will display all its items in the Role editors, so you can edit the permissions for each content item of that type. Make sure you only use it for content types with a small number of items, e.g. Lists, Menus. An other content type setting will be added later to do the same thing for content type level.
- Demo by Stanley - HtmlCodeMirror flavor: adding syntax highlighting and tag/attribute/JS auto-completion when editing HTML for widgets and also in the TinyMCE HTML editor popup.
- Discussion about moving static resources (JQuery, CodeMirror, etc.) to a common module so that any other module can reuse them.
- Nick showed us the latest changes and upgrades he made for RTL support. Most of the important Dashboard pages (Widgets, Workflows, Navigation, etc.) now support RTL. Stanley suggested using a transliteration library for generating URLs with latin letters even if the content is edited in a language that doesn't use latin letters.
- All the videos from this year's Orchard Harvest are now uploaded! Check out the official YouTube channel of Orchard CMS to watch them.
- Pull requests processed:
- DisableThemePart additions: the PR and the linked issue are not related, this should be resolved (with a new issue and a PR).
- Not draftable content vs. PublishLater: the "Save"/"Publish Now" behaviour should not be changed, but the UI should be improved for PublishLater when the content is not draftable.
- Route and Content tokens: needs some changes before GTG.
- Multi search form: makes it possible to have different search forms for different indices. Needs some changes/fixes, otherwise looking good.
- MediaLibraryPickerField fix: the PR was pulled in, but unfortunately later the changes were deleted due to a rollback. A new fix was applied recently, so the issue and the PR were closed. Btw the same problem occured to ContentPickerField too (also fixed).
- Blogs + Lists: maybe later :). Actually it's already done, so the PR is closed.
- Extended menu permissions: there are some suggestions for changes, otherwise GTG.
- Support for Prefix in form manager: after some slight modification/optimization it's GTG.
- Permission names as public constants: actually this a good practice, but pulling this in would mean that Orchard developers/contributors would have to follow this convention always, so the PR was declined. Even with this change, 3rd-party modules could suffer from a breaking changes if a permission is renamed, since the name of the variable should be changed too.
- ProjectionPage - ItemsPerPage and more: needs review/feedback by Sébastien.
- AntiSpam comment tokens empty: the root of the problem is an other issue, which was fixed but the original (bad) behaviour was restored. Awaiting feedback on that.
- An idea for a feature emerged during the reviews by Stanley: a content type setting called "Permissible", which would make it possible to configure permissions per content item when editing the permissions for a specific user role. This feature is based on the Dynamic Permissions feature, so it's bit different from Content Permissions. Useful for content types with not too many items, e.g. Menus and Lists.
- Pull requests processed: