Skip to content

Instantly share code, notes, and snippets.

@dirk-thomas
dirk-thomas / test.bash
Created October 13, 2015 18:05
Bash array quoting
#!/usr/bin/env bash
mkdir "/tmp/test_bash"
mkdir "/tmp/test_bash/foo bar"
mkdir "/tmp/test_bash/bar baz"
mkdir "/tmp/test_bash/foo"
mkdir "/tmp/test_bash/bar"
touch "/tmp/test_bash/foo bar/file"
@dirk-thomas
dirk-thomas / gist:6739057
Created September 28, 2013 06:21
wipe obsolete stacks from dry release repo
#!/usr/bin/env python
from distutils.version import LooseVersion
import os
import subprocess
import yaml
rosdistro_path = '../../release_trunk/distros'
distros = ['cturtle', 'diamondback','electric', 'fuerte', 'groovy', 'hydro']
@dirk-thomas
dirk-thomas / move_spam.py
Created January 11, 2016 17:38
Script to move spam pages to a different location
import os
import re
for name in os.listdir('.'):
if not re.search('quickbook', name, re.IGNORECASE):
continue
print(name)
os.rename(name, '../pages_deleted/' + name)
@dirk-thomas
dirk-thomas / find_pages_with_content.py
Created January 11, 2016 17:39
Find pages which didn't contain spam before
import os
import re
for name in os.listdir('.'):
if not os.path.exists(name + '/revisions/00000002'):
continue
with open(name + '/revisions/00000001', 'r') as h:
content = h.read()
if re.search('quickbook', content, re.IGNORECASE):
continue
@dirk-thomas
dirk-thomas / main.cpp
Created April 14, 2016 23:39
QMenu bug when removing last action
#include <cstdio>
#include <QtCore/qobject.h>
#include <QtWidgets/qaction.h>
#include <QtWidgets/qapplication.h>
#include <QtWidgets/qmainwindow.h>
#include <QtWidgets/qmenubar.h>
QMenu * more_menu = 0;
@dirk-thomas
dirk-thomas / CMakeLists.txt
Last active May 6, 2016 18:16
Visual Studio dependencies issue
cmake_minimum_required(VERSION 3.4)
project(foo)
add_custom_target(
gen
SOURCES "${CMAKE_CURRENT_BINARY_DIR}/lib.cpp"
COMMENT "Custom target"
)
C:\dev\cmake_test\build>cmake --build .
Microsoft (R) Build Engine version 14.0.24730.2
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 5/6/2016 12:46:14 PM.
The target "BeforeGenerateProjectPriFile" listed in a BeforeTargets attribute at "C:\Program Files (x86)\MSBuild\Mic
rosoft\NuGet\Microsoft.NuGet.targets (186,61)" does not exist in the project, and will be ignored.
The target "BeforeGenerateProjectPriFile" listed in a BeforeTargets attribute at "C:\Program Files (x86)\MSBuild\Mic
rosoft\NuGet\Microsoft.NuGet.targets (186,61)" does not exist in the project, and will be ignored.
Project "C:\dev\cmake_test\build\ALL_BUILD.vcxproj" on node 1 (default targets).
@dirk-thomas
dirk-thomas / VS build output
Created May 6, 2016 19:54
VS build output - take 2
C:\dev\cmake_test2\build>cmake --build .
Microsoft (R) Build Engine version 14.0.24730.2
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 5/6/2016 12:53:35 PM.
The target "BeforeGenerateProjectPriFile" listed in a BeforeTargets attribute at "C:\Program Files (x86)\MSBuild\Mic
rosoft\NuGet\Microsoft.NuGet.targets (186,61)" does not exist in the project, and will be ignored.
The target "BeforeGenerateProjectPriFile" listed in a BeforeTargets attribute at "C:\Program Files (x86)\MSBuild\Mic
rosoft\NuGet\Microsoft.NuGet.targets (186,61)" does not exist in the project, and will be ignored.
Project "C:\dev\cmake_test2\build\ALL_BUILD.vcxproj" on node 1 (default targets).
@dirk-thomas
dirk-thomas / output.txt
Created May 9, 2016 17:12
VS diagnostic build output
This file has been truncated, but you can view the full file.
1>------ Build started: Project: ZERO_CHECK, Configuration: Debug Win32 ------
1>Build started 5/9/2016 10:09:55 AM.
1>Environment at start of build:
1>ALLUSERSPROFILE = C:\ProgramData
1>APPDATA = C:\Users\osrf\AppData\Roaming
1>APR_ICONV_PATH = C:\Program Files (x86)\Subversion\iconv
1>BOOST_LIBRARYDIR = C:\local\boost_1_59_0\lib64-msvc-14.0
1>BOOST_ROOT = C:\local\boost_1_59_0
1>ChocolateyInstall = C:\ProgramData\chocolatey
@dirk-thomas
dirk-thomas / collect.py
Created September 30, 2016 20:31
Collect number of builds and accumulated duration on Jenkins
#!/usr/bin/env python3
import os
import re
start = 1472688000
end = 1475280000
build_count = 0
sum_duration = 0
for job_name in os.listdir():