The drop is always movingYou know that saying about standing on the shoulders of giants? Drupal is standing on a huge pile of midgetsAll content management systems suck, Drupal just happens to suck less.Popular open source software is more secure than unpopular open source software, because insecure software becomes unpopular fast. [That doesn't happen for proprietary software.]Drupal makes sandwiches happen.There is a module for that

Drupal 8 progress from my / MongoDB perspective: update #27

Submitted by nk on Mon, 2014-07-14 22:53

There hasn't been an update for some time now; things have quieted down a bit, I am mostly just writing drivers now (and coach people on migrate). MongoDB module caught up with the latest config changes and so the module works again. Migrate bugfixing moves along steadily with more and more people actually trying it and fixing bugs, hurray!


Submitted by nk on Mon, 2014-07-07 10:23

At Szeged, I asked a female Drupal contributor in Hungarian (I'm glad she did not understand) what was up with the coffee maker, because I readily presumed she was staff.
I saw one of the female geek role models at Austin with her baby. I got confused for a second, because apparently I think the übergeek and mother roles can't overlap.
On IRC, I almost said "Wow, that's impressive from a girl.".

Easier configuration development for Drupal 8

Submitted by nk on Sun, 2014-07-06 22:56

With config_devel, when you are editing a migration, you can just enter the name of the file being edited at admin/config/config_devel and on every request the module will check for changes and import the file into the active storage. The other direction works as well: say you are working on a contrib module and have a view. Provide the path of the file (this time in the auto export box) and on every change Drupal will automatically export. Once satisfied, just commit.

Double theta to compute delta

Submitted by nk on Thu, 2014-07-03 17:21

We are denormalizing into a field past migration; while usually I freak out writing directly to the field tables in this case it's justified because it's a custom module (never do this in contrib) and also because we are well aware of what does not happen when you do that (pluggable field storage and hooks). With that said, we have a query that roughly looks like this:

INSERT INTO {field_data_field_denorm_data}
(entity_type, bundle, deleted, entity_id, revision_id, language, delta, field_denorm_data_target_id)
SELECT 'user', 'user', 0, field1, field1, 'und', ????????????, field2


Submitted by nk on Sat, 2014-06-14 22:14

Sticks and stones may break my bones
But words will never harm me.

Drupal 8 security and me

Submitted by nk on Tue, 2014-05-20 21:11

Summary: if you are working on a core patch which smells like it might be security related please let me know and I will review.

Meanwhile, I am working on switching twig autoescape on -- it is now declared a beta blocker. Help is warmly appreciated, please contact me.

How to crash your site

Submitted by nk on Wed, 2014-04-23 06:14

I got a desperate call about a site being down, this is ordinary for me (advertisment: you can contact me if it happens to you). But the error I saw was new to me. This is surprising -- I have thought I have seen it all and then some. The modules/views/includes/ was fataling about the function views_include not existing. At first I thought opcache went south cos how on earth could an include be loaded when the module isn't?? But it wasn't opcache.

The Simpletest sprint six years ago

Submitted by nk on Tue, 2014-04-22 05:14

As the Simpletest sprint in Paris was exactly six years ago I feel it's a good time to remind the community how and why Simpletest was chosen especially in the light of the Simpletest hate lately. At that time we had almost no tests (compared to the massive test battery today with over 68 000 asserts) and it was paramount to allow anyone to be able to write and run tests. Drupal in 2008 was not really API driven and so we needed browser based testing.

Drupal 8 progress from my / MongoDB perspective: update #26

Submitted by nk on Thu, 2014-04-03 04:28

At DrupalDevDays Szeged, skipyT, fgm and myself made tremendous progress with writing the MongoDB drivers. All the override mechanisms work as expected and things in general, work. Most importantly, we have an entity storage backend and a significant percentage of the entity storage query tests pass (it is not expected all ever would pass, for example relationships are not supported).

Drupal 8 progress from my / MongoDB perspective: update #25

Submitted by nk on Mon, 2014-03-17 00:22

A version of the migration API which is adequate to migrate Drupal 6 has been submitted for core inclusion. The sandbox contains the complete Drupal 6 to 8 migration, with more complete functionality and testing coverage than the upgrade path ever had. Every migration has its own test where the test sets up a Drupal 8 as if the required migrations already ran and then runs the migration over a very small partial Drupal 6 dump. Then there is a test which loads all the Drupal 6 dumps, runs every migration and then runs all the asserts from the tests.

User login