E: xxxx: maintainer-script-should-not-use-adduser-system-without-home postinst:23 'adduser --system --quiet --ingroup xxxx --no-create-home xxxx'
Well, it is popular package, maintainer is well experienced, however it _still_ has such error :-(
I wonder if some people do grooming for such packages... like security inspection.
In our EK management tools suite we have custom designed lists of items like for instance list of management documents.
Those lists are build with custom codes and templates which is somehow more convenient to manage with complex data, links, menus and filters as in the example below.
However for simple list, the views module is very useful and can be integrated in a custom module as well to automatically create the list.
Here is an example with companies list in the system address book module showing the company name as link and a filed about the type of record plus a simple filter box.
Getting all the details right in a highly portable Perl core module that tries to support very old versions of Perl is tricky! And I clearly didn't do a good job of documenting previous decisions.
This release reintroduces pod2man.PL and pod2text.PL generator scripts to get the right Perl invocation. I thought ExtUtils::MakeMaker and Module::Build now took care of this, but apparently they only take care of this on UNIX platforms, not on the non-UNIX platforms that require special execution logic.
Thanks to a patch by Niko Tyni, this version of Pod::Man also falls back to non-utf8 behavior if the utf8 option is specified but the Encode module doesn't exist. This can help with some cross-build situations.
I also finally figured out the problem with occasional test failures on random platforms: I was trying to clean up the temporary directory used by tests after each test, but the CPAN test systems run all the tests in parallel, so the tests were racing with each other. This release just leaves the temporary directory around and deletes it in make clean.
You can get the latest version from the podlators distribution page.
You might have heard of Burning Man. Basically it's a lot of hippies settling down in the desert for a few days, setting up small camps with diffrent themes that make up a big, temporary city.
It's not for me.Radical Self-expression is one of Midburn ten principles. © Eyal Levkovich.
A couple of years ago I was dissatisfied with mutt, mostly because the mutt-sidebar patch was dropped from the Debian package. That lead to me thinking "How hard can it be to write a modal, console-based mail-client?"
It turns out writing a client is pretty simple if you limit yourself solely to Maildirs, and as I typically read my mail over SSH on the mailhost itself that suited me pretty well.
Recently I restarted the mail-client. Putting it together from scratch to simplify the implementation, and unify a lot of the adhoc scripting which is provided by Lua. People seem to like the client, but the single largest complaint was "Can't use it - no IMAP."
This week I've mostly been adding IMAP support, and today I'll commit the last few bits that mean it is roughly-functional:
- Connecting to a mail-server works.
- Getting the folders works.
- Getting the messages works.
The outstanding niggles will be relating to getting/setting the new/read/seen/unseen flags, and similar. But I'm pleased that the job wasn't insurmountable.
I've used libcurl to provide the IMAP functionality because most of the IMAP libraries I looked at were big, scary, and complex. Using curl to access IMAP is pretty neat, simple, and straightforward. The downside is you're making a lot of "http" requests. So I might need to revisit things.
Happily my imap wrapper doesn't need much functionality. So if I can find a better library swapping it out will be simple.
In conclusion: Lumail almost has IMAP support, and that might mean it'll be more useful to others.
This is a brown paper bag release. It turns out I managed to break the upgrade
path only 10 commits before the release.
- git cinnabar fsck doesn’t fail to upgrade metadata.
- The remote.$remote.cinnabar-draft config works again.
- Don’t fail to clone an empty repository.
- Allow to specify mercurial configuration items in a .git/hgrc file.
tl;dr: Drupal VM 2.2.0 'Wormhole' was released today, and it adds even more features for local dev!
Over the past few months, I've been working towards a more reliable release cadence for Drupal VM, and I've targeted one or two large features, a number of small improvements, and as many bugfixes as I have time to review. The community surrounding Drupal VM's development has been amazing; in the past few months I've noticed:
- Lunchbox, a new Node.js-based app wrapper for Drupal VM for managing local development environments.
- A mention of using Drupal VM + docker-selenium for running Behat tests with Chrome or FireFox, complete with automatic screenshots of test steps!
- A great discussion about using Drupal VM with teams in the issue queue, along with a PR with some ideas in code.
- A total of 27 individual contributors to Drupal VM (who have helped me work through 307 issues and 77 pull requests), along with hundreds of contributors for the various Ansible roles that support it.
Drupal VM is the fruit of a lot of open-source effort, and one of the things that I'm most proud of is the architecture—whereas many similar projects (whether they use Docker, Vagrant, or locally-installed software) maintain an 'island' of roles/plugins/configuration scripts within one large project, I decided to build Drupal VM on top of a few dozen completely separate Ansible roles, each of which serves an independent need, can be used for a variety of projects outside of Drupal or PHP-land, and is well tested, even in some cases on multiple platforms via Travis CI and Docker.
For example, the Apache and Nginx roles that Drupal VM uses are also used for many individual's and companies' infrastructure, even if they don't even use PHP! I'm happy to see that even some other VM-based Drupal development solutions use some of the roles as a foundation, because by sharing a common foundation, all of our tooling can benefit. It's kind of like Drupal using Twig, which benefits not only our community, but all the other PHP developers who are used to Twig!
If you want to kick the tires on Drupal VM (want to test Drupal 8 with Redis, PHP 7, Nginx, and Maria DB, or easily benchmark Drupal 8 on PHP 7 and HHVM?), follow the Quick Start Guide and let me know how it goes!drupaldrupal vmansibleinfrastructurephpvagrantdrupal planet
In Drupal 7, Views allows you to easily create exposed filters and alter a lot of the logic involved. However, sometimes you get requests to add text to the form or position things in ways that the Views UI does not allow for.
I've got two solutions that are arguably not as Drupal-like as I would like, but I've run into some dead ends on occasion with trying to fullfill requests with only Drupal-like alterations. And of course if there are better ways to do it, I am open to them.
The first method gives you primary control over the exposed form by using hook_form_FORM_ID_alter(). You would think it would be easy to alter the order of form elements in that hook, but it is a little complicated because of the way the form elements can have #weight but that the #info array has the final say over order.
To get around this and make it easy to juggle things around and add items to a form, I created a Drupal Views FormManipulator class.
If you need to do even more advanced juggling of form, header, footer and other views elements I have also resorted to using QueryPath & hook_views_post_render(). It gives you a lot more control, perhaps a bit more fragile if you are not careful to use stable selectors, but it does let you move things that would require lots of different hooks, custom templates AND still leaving you with not quite 100% of what the client is asking for.
I have just released version 1.19 of Obnam, the backup program. See the website at http://obnam.org for details on what the program does. The new version is available from git (see http://git.liw.fi) and as Debian packages from http://code.liw.fi/debian, and uploaded to Debian, and soon in unstable.
The NEWS file extract below gives the highlights of what's new in this version.
NOTE: Obnam has an EXPERIMENTAL repository format under development, called green-albatross. It is NOT meant for real use. It is likely to change in incompatible ways without warning. Do not use it unless you're willing to lose your backup.Version 1.19, released 2016-01-15
Backup no longer ignores a closed SSH connection. This means it won't keep trying to use it, forever. Instead, it crashes and terminates the backup.
The Paramiko SSH implementation, which Obnam uses, changed the interface to the prefetch method in its 1.16 version. Obnam can now deal with either variant of the method. Found and reported by Kyle Manna, who provided a patch that Lars Wirzenius rewrote to be backwards compatible to older versions of Paramiko.
Improvements to the manual:
The manual now has an appendix listing all Obnam errors, with codes and explanations. This will need to be updated manually from time to time.
The manual now has sections on turning on full debug logging and reporting problems.
Improvements to functionality:
- The output of obnam generations now show time zone. Lars Wirzenius implemented based on suggestion by Limdi.
When people talk about Mumbai, they often refer to “Bollywood.” But what is Bollywood? It’s a nickname for the most productive movie industry in the world: the Hindi-language film industry! Bollywood employs more people and produces more films than any other cinematic industry in the world, and Bollywood movies are well-loved both within India and beyond.
Happy birthday, Drupal community! Today is the Drupal project's 15th birthday. In honor of the upcoming year, we've put together a retrospective of some of the incredible changes and accomplishments we made together last year.
2015 was a landmark year for Drupal: between three DrupalCons, the release of Drupal 8, and numerous improvements to Drupal.org, there's a lot for everyone to be proud of. None of our amazing accomplishments would been possible without our community of passionate Drupalers. As you read the infographic, we invite you take a moment to congratulate yourself for all the ways that you've helped make the project strong. Because Drupal's 15th birthday isn't just an accomplishment for the software—it's an occasion to celebrate everyone who has helped get the entire project and the community to where they are today.
This is the first time that I am working with automated tests. I have written tests before and and of course I believe that tests improve projects dramatically, but I have never had (/made) the time in a project to actually do it. So I was quite excited to get started with travis.First things first, what do you test!?
I was terribly excited to start working with tests, but yesterday we didn't actually have any code to test against yet, so instead we decided, we actually want to run the drupal core tests. We want our module to be enabled, and to test know if any of our code causes a Drupal core regression, so I started with that.Trial and Error (a lot)...
Travis build history logs showing eventually passing tests.
The documentation is pretty good and there are LOADS of example .travis.yml files floating around, so I started to just get an active environment build working and focused on getting php unit tests working first. I only wanted a couple of tests to run and the main thing I cared about was that drupal installed properly and that the environment was up and running. Eventually I got a passing build with the following .travis.yml
While I was really quite happy with this, I wanted more. Simpletests to say the least, and maybe even behat tests. I found a lot of inspiration when looking at BartFeenstra's (Xano on d.o) Currency module: https://github.com/bartfeenstra/drupal-currency/blob/8.x-3.x/.travis.yml
Most importantly, I found Drupal TI - https://github.com/LionsAd/drupal_ti
This project makes it almost trivial to integrate Drupal Projects with Travis. It handles a lot of the setup in terms of MYSQL, Drupal download and how to start running tests. It managed to reduce my .travis.yml to the following:
This is quite a bit of code, but it is really clean and well commented so we can clearly see what is going on.When to test?
So now there are tests... Great! But when do we run them? Running all of Drupal's tests can take quite some time, but we do want to have a check on development to catch things. So in short we need testing on pull requests between individual development repos (eg https://github.com/yanniboi/decoupledauth) and the main project repo (https://github.com/FreelyGive/decoupledauth) but when we are doing our development we only really care about project specific tests.Seeing tests on GitHub
When I create a pull request now, I automatically have the tests run and the results on the pull request:
GitHub pull request with Travis test results
GitHub pull request test results in Travis CI
Eventually what we really want to do, is have a way of checking inside our .travis.yml, if the test has been started by a pull request, or by a code push/merge and run different parameters depending on that. But more about that next time. There will be a blog post on that soon...
In the meantime, use Travis and write tests :)References:
Lingotek’s Translation Network is a cloud-based solution that connects all your global content in one place, giving you the power to manage your brand worldwide. Our technology pairs with the best-in-class applications, such as Drupal, to continuously push dynamic multilingual content to all of your global markets.
Lingotek’s collaboration with - and development work for - the Drupal community began over four years ago with Drupal 6. Our first Drupal module was released in fall of 2011 for Drupal 6. We now have contributed modules available for both Drupal 7 and Drupal 8.Tags: acquia drupal planet