Search API: added support for the Libraries API

Specially needed if using installs profiles deployed by drush_make so the library is downloaded to profiles/{profilename}/libraries.

Drush now able to show full progress of batch processes in real time

Magic was needed to hijack Drupal's batch api.

Implemented a class extending ArrayObject and used it to wrap batch's $context array and set log messages when values are assigned to keys 'message' or 'error_message'.

Reworked drush l10n-update commands

Did a rewrite of l10n-update-* fixing its basic usage and providing several new functionalities:

  • Allow for command option --languages=es,fr,de.
  • Allow for command option --mode=keep|overwrite.
  • New command l10n-update-refresh to get fresh data about translations status and availability.
  • New command l10n-update-status to print a table of translations status, similar to what you see in the UI.

Drupal: is that site hacked?

Some months back I was in the need to know if a Drupal site was hacked how much code had been modified in a given Drupal site. It was not straightforward to install a copy of the site out of the box (it had hardcoded absolute paths in custom modules among other annoying things).

RTFM or just code: recursively compare directories and files in two paths

Recursively comparing directories and files in two provided paths is probably a common problem and for sure there's a solution out there.

bad. I didn't find (search for) one before coding my own solution. I just did search intensively for such a solution before writing this post (to avoid that comment saying something like: hey man it was solved twenty years back!). The simplest solution, using diff:

$ diff -r -q /tmp/a /tmp/b
Only in /tmp/a/b: c
Only in /tmp/a/b/d: a.txt
Only in /tmp/b/b: y.txt
Files /tmp/a/x.txt and /tmp/b/x.txt differ

Cómo instalar y actualizar drupal desde cvs

Hay varias maneras de gestionar las actualizaciones menores de drupal (de la versión 6.1 a la 6.2, ...). El flujo canónico sería[1]:

Los perfiles de instalación ahora son como módulos

Notición: se acaba de resolver Install profiles should be modules with full access to the Drupal API and all it entails(.install files, dependencies, update_x).

Esto facilita muchísimo el escribir perfiles de instalación e incrementa enormemente su utilidad.

php readline

La extensión readline para php no está en Debian (ni en Ubuntu) por problemas de licencia. Entre tantos bugreports, blogposts y opiniones varias he encontrado esta frase: «Licensing issues. Readline is GPL, and we can't link with GPL libraries without violating their license.»

Administrando temas con drush

ACTUALIZACIÓN: hace unas semanas que estos comandos han pasado a formar parte del core de drush. Han entrado junto a una reorganización de los comandos "pm" (package-manager) que hasta entonces sólo gestionaban módulos. Esta es la equivalencia entre los antiguos comandos "theme" y los nuevos cambios introducidos en drush 3.x:

drush: esto no se para!

La aparición de drush 2.0 ha sido un subidón. Muchos estamos que lo flipamos con drush y reorientamos nuestra forma de trabajar con drupal para irnos a la línea de comandos para hacer lo que drush nos permita más rápido, mucho más rápido: descargar módulos, habilitarlos, limpiar la caché, darle al cron, crear nuevas instancias de drupal, etc etc.

Páginas

Subscribe to Atlantic/Canary RSS