Questions tagged [builds]
The simplest type of build is a process that converts (source) code to a compiled binary file that can then be run. More complex builds can also run unit or integration tests and can use tools to generate reports about the quality of the code. Lastly, builds are often triggered automatically by Continuous Integration (CI) systems.
178 questions
422
votes
12
answers
20k
views
Should I intentionally break the build when a bug is found in production?
It seems reasonable to me that if a serious bug is found in production by end-users, a failing unit test should be added to cover that bug, thus intentionally breaking the build until the bug is fixed....
183
votes
23
answers
33k
views
How to apologize when you have broken the nightly build [closed]
My first commit in my project resulted in the nightly build being broken and people are all over me as we are nearing the release. I want to send an apology email that should sound sincere
and at the ...
148
votes
6
answers
144k
views
How do you achieve a numeric versioning scheme with Git?
My organization is considering moving from SVN to Git. One argument against moving is as follows:
How do we do versioning?
We have an SDK distribution based on the NetBeans Platform. As the SVN ...
99
votes
9
answers
23k
views
What are the advantages of build scripts?
For most of my programming career, I've used the "build/compile/run" command in whatever IDE I'm working with to produce a runnable program. This is one button, pretty easy. As I learn more about ...
96
votes
5
answers
33k
views
Why are there no package management systems for C and C++? [closed]
There are some programming languages for which exist a package management system:
CTAN for TeX
CPAN for Perl
Pip & Eggs for Python
Maven for Java
cabal for Haskell
Gems for Ruby
npm for NodeJS
...
81
votes
12
answers
146k
views
What exactly is the build number in MAJOR.MINOR.BUILDNUMBER.REVISION
What I think about Build Numbers is that whenever a new nightly build is created, a new BUILDNUMBER is generated and assigned to that build. So for my 7.0 version application the nightly builds will ...
77
votes
7
answers
20k
views
What is the purpose of a dedicated build machine?
Due to a number of circumstances leading to a poor deployment last build cycle, I campaigned in our office to perform all future deployments with a dedicated build machine, and my boss accepted this ...
51
votes
2
answers
30k
views
Why is build.number an "abuse" of semantic versioning?
I was explaining a proposed build system (Gradle/Artifactory/Jenkins/Chef) to one of our senior architects, and he made a comment to me that I sort of disagree with, but am not experienced enough to ...
46
votes
8
answers
24k
views
Is directly using Make considered obsolete? [closed]
So I have been coming across many comments/posts/etc regarding creating makefiles directly, and how it is a silly thing to do in 2015. I am aware of tools such as CMake, and I actually use CMake quite ...
25
votes
6
answers
2k
views
Why isn't java used as a build language?
If Java is a general purpose language, and building a program is something that can be described using the Java language, why isn't this the best way to write build files and instead we use tools like ...
24
votes
7
answers
2k
views
how to stay efficient when a build is almost always broken
I work in a middle sized team which shares the same source code and while have a continues integration in place, but as all of us has to work in the same branch, the build is almost always broken.
...
24
votes
9
answers
4k
views
Convince a lone developer to use a separate build tool instead of the IDE one-click build
In my years of programming Java and more recently Scala, I've never used Ant, Maven, Gradle or any of those build tools for Java. Everywhere I've worked there was a build manager who took care of all ...
23
votes
8
answers
5k
views
Detect manual changes to an autogenerated C header [closed]
I have a C header that is generated from a CSV file and a Python script. The C header mainly contains a list of #define constants.
I want to be able to detect manual changes to this header during ...
22
votes
10
answers
14k
views
What are the benefits of multi-file programming? [closed]
I have been told by another fellow C programmer to write large applications in several different .c and .h files, and then compile them together. They say it will run faster.
Does a multifile ...
22
votes
11
answers
3k
views
Babysitting your Continuous Integration System
One of my roles in my team is the build person. I am responsible for maintaining/updating our build scripts and making sure we are building 'smoothly' on the continuous integration server. I usually ...
22
votes
5
answers
11k
views
How can we avoid showing the literal path in the exception's stack trace?
When our in-house developed application (C#, ASP.NET) is throwing an exception, it displays a stack trace that contains path information like C:\users\DEVELOPER_FULL_NAME\path\some-module.cs. So it ...
22
votes
7
answers
1k
views
How important are daily builds? [closed]
One of the criteria of the Joel Test is daily builds. The idea is that if the build is broken, whoever broke it is around to fix it up. If the build cannot be fixed, everyone will have to check out an ...
21
votes
11
answers
16k
views
Which Continuous Integration framework do you use and why? [closed]
There are quite a few different Continuous Integration (CI) frameworks out there and I'm wondering which is the most popular. Which frameworks have you used at firms where you work?
Is there any ...
20
votes
1
answer
10k
views
In-Source Build vs. Out-Of-Source Build
In my (primarily C++) development, I have long adhered to using out-of-source builds. That is, my source usually sits in a /project/src directory and the builds live in a /project/build/bin/release, /...
17
votes
5
answers
3k
views
What advantages do continuous integration tools offer on a solo project?
If you're doing a solo project - would you use CI tools to build from a repository? I've used Hudson and Cruise Control in a team environment, where it's essential to build as soon as anyone checks ...
17
votes
2
answers
9k
views
How to properly manage dependencies for C/C++ project?
I have a project which uses 3-4 different open source C/C++ libraries.
I built these libraries for several platforms and checked in include files and static libs for different platforms in my project....
15
votes
6
answers
4k
views
What does "automated build" mean?
I'm trying to add Continuous Integration to a project.
According to Wikipedia, one major piece of CI is automated builds. However, I'm confused about what, exactly, that means, as the CI and build ...
15
votes
4
answers
5k
views
Does it make sense to write build scripts in C++?
I'm using CMake to generate my projects IDE/makefiles, but I still need to call custom "scripts" to manipulate my compiled files or even generate code.
In previous projects I've been using Python and ...
15
votes
6
answers
6k
views
Can you make a build in one step?
From the joel test:
Can you make a build in one step?
I've got to say I can't. I'm currently working on a web app that has a spreadsheet list of items that must be carried out in order to deploy. ...
14
votes
5
answers
3k
views
Is Ant still in the "mainstream" for Java builds?
We have been slowly replacing batch command files (windows .bat) which were simply jarring up the classes compiled in the developers IDE, with more comprehensive Ant builds (i.e. get from CVS, clean ...
14
votes
4
answers
40k
views
Is there a general rule for when you should use 'make clean' instead of just 'make'?
I am writing a multiple-filed program right now, and apparently running only 'make' (as one would intuitively think needs to be done in most situations) for some reason causes my program to fail. I ...
14
votes
4
answers
857
views
Patching open source software when upgrading is not an option?
I recently ran into a rather annoying (confirmed) bug in an open source software package that I have integrated into my application. According to the public issue tracker this bug has been resolved ...
14
votes
3
answers
4k
views
Why incremental builds in "make" don't use hashing algorithms?
I am a beginner with make and I'm wondering about when to use make clean.
One colleague told me that incremental builds with make are based on the files timestamps. So, if you checkout an old version ...
14
votes
1
answer
852
views
Redundant code sent down the pipe with Micro-frontends
My understanding of Micro-frontends is that the key problem they solve is in helping enterprises have multiple, possible disparate teams, work on individual components/small-apps that will be used to ...
13
votes
8
answers
900
views
Moving from one man project to team project in the future. What should I be doing now in preparation and what can wait?
To elaborate I am interested in knowing what people think you need to put in place while still a one man project (team source control, documentation, builds etc) and what things don't need to be done ...
13
votes
4
answers
25k
views
Release build vs nightly build
A typical solution is to have a CI (Continuous Integration) build running on a build server: It will analyze the source code, make build (in debug) and run tests, measure test coverage, etc.
Now, ...
13
votes
1
answer
3k
views
Responsibilities of Build Script and Build Server
I need some clarifications on the responsibilities of the Build Script and the Build Server.
I read several articles on the Net about continuous integration and builds. Including
The F5 Key Is Not a ...
13
votes
3
answers
2k
views
What are good ways to organize input files (Makefiles, SConstruct, CMakeLists.txt, etc.) to build automation software?
One thing I like to do with my code is make sure that it's refactored into manageable pieces. However, when it comes to building the software, I find that whatever build automation software I end up ...
13
votes
2
answers
2k
views
Should the deploy script be an artifact of the build?
This is a web project written in Java.
So, I'm writing the build and the deploy scripts. To create the build, I used ant. The continuous build is done with Jenkins.
The build generates 3 different ...
13
votes
2
answers
7k
views
Automake - how to keep the source tree clean?
I have a project that uses GNU autotools to build itself. I am trying to modify so that autotools generates all the non-versioned control files in a separate directory so that I can keep the source ...
12
votes
6
answers
1k
views
When does Continuous Integration add value? [duplicate]
Possible Duplicate:
How many developers before continuous integration becomes effective?
When does continuous integration (such as CruiseControl) add value to a project?
Do factors such as
...
12
votes
9
answers
851
views
Should developers be expected to compile an internal library before the actual program?
Recently a senior developer that I work with made a case for requiring that developers get the latest version and compile as part of their project a major internal library. This stands in contrast the ...
12
votes
5
answers
15k
views
To integrate git versions as build numbers or not?
A colleague and I have been taking turns debating/discussing the issues/merits of integrating a version derived from the current git repository into our code whenever it builds.
We think the merits ...
11
votes
2
answers
2k
views
To depend on source code or on binary?
We have two in-house projects, A and B, developed by different teams with B dependent on A. Since source code for both projects is stored in git, I've included project A as a submodule into project B ...
10
votes
4
answers
4k
views
Is there something between Debug and Release build?
Specifically with CMake builds, if you don't specify a build type explicitly, the build will use neither Debug nor Release compilation flags.
I was writing my own Makefile for a simple program and ...
10
votes
5
answers
42k
views
Is it possible for two DLLs to conflict , preventing solution to build
Though I have a specific case, but I was wondering about the general situation.
Can two DLLs, when added as Reference to a Visual C# project collide with each other to prevent the solution from ...
10
votes
4
answers
5k
views
Best practices for versioning project after dependency upgrade
Say, my project have dependency N with version 1.0.0.
Then something have changed, and I should depend on newer version - let it be 1.0.1.
OK, I'm incrementing dependency version, nothing else ...
10
votes
9
answers
5k
views
Automated build platform for .NET portfolio - best choice? [closed]
I am involved with maintaining a fairly large portfolio of .NET applications. Also in the portfolio are legacy applications built on top of other platforms - native C++, ECLIPS Forms, etc.
I have a ...
10
votes
1
answer
368
views
Why does Apache have two separate tools for build and dependency management?
Apache has two separate tools:
Apache Maven
Apache Ant + Apache Ivy
They seem to both fill the same niche. I have two questions:
What are the highlights of the main differences between the two ...
10
votes
1
answer
3k
views
Using a TFS Build Process Template (Workflow) for Deployment
I'm thinking of using TFS Build workflows for complex deployments. We have some that may need to deploy:
Web applications and services
Database
SSRS Reports
SSIS Packages
Who knows what else
I like ...
9
votes
4
answers
638
views
Arguments against checking-in binary files into SCMs
I work for a company that primarily builds Java applications and I'm trying to convince everybody to stop checking-in binary files (dependencies and final products) to SCM.
They know it is a bad ...
9
votes
4
answers
10k
views
What are linkers and loaders? How do they work?
I am trying to understand things like linkers and loaders better.
What area of computer science do they belong to? Compiler, Operating System, Computer Architecture?
Where do linkers and loaders ...
8
votes
5
answers
415
views
Is there a better strategy than relying on the compiler to catch errors?
I've been programming in C and C++ for some time, although I would say I'm far from being an expert. For some time, I've been using various strategies to develop my code such as unit tests, test ...
8
votes
4
answers
5k
views
Continuous Build server (cc.net, hudson, bamboo, etc...) remote build experience?
We currently use once cc.net server for our build process, which builds both .net (using msbuild & nant) and java (using maven and ant).
CC.net monitors source control, and triggers a remote ...
8
votes
4
answers
14k
views
Is a new build required everytime I make a change to the code?
I am working on a project that has around a hundred different files (.cpp & .h), and it requires around an hour to build the entire project on MSVC 2008, suppose that I now make a change to any ...