Skip to main content

Questions tagged [backward-compatibility]

Filter by
Sorted by
Tagged with
0 votes
1 answer
312 views

I'm maintaining a library written in C++, which offers modern-C++ bindings for another API that's C-ish (it's this one, although I'm trying to make this question somewhat more general). Now, when I ...
einpoklum's user avatar
  • 2,808
-2 votes
1 answer
343 views

Context (You can skip) I will be doing a presentation on Python, and will be touching upon V3's decision to be intentionally backwards incompatible, and how that has affected Python long term. I will ...
Anon's user avatar
  • 3,649
4 votes
2 answers
2k views

I'm trying to know if we can freely raise new exceptions when maintaining methods of a versioned library. Here is a minimal example of what the change could be: import logging def check_id_old(...
Stéphane Bruckert's user avatar
7 votes
9 answers
3k views

I wanted to know the best practice(s) for ensuring scalability while passing arguments. Say, in version 1.0 of an application, the foo function looks like this void foo(int i) Now, in version 1.1, ...
awakened's user avatar
40 votes
7 answers
10k views

Today, I updated ZBateson\MailMimeParser the PHP e-mail parser library from 1.x to 2.x. Soon enough, my PHP error log started filling up with errors. Noting where it happened, I found out that it had ...
user16508174's user avatar
0 votes
0 answers
105 views

Given a method that is widely used and has a void return type: from somepackage import download_model from somepackage import get_filename def download(name, download_path): response = ...
Yosi Dahari's user avatar
1 vote
2 answers
156 views

For instance, in the case of PostgreSQL, it is entirely acceptable to use a newer client to connect to an older server; but if you do the opposite, using an older client to connect to a newer server, ...
Kal's user avatar
  • 365
0 votes
3 answers
180 views

(This question applies to the equivalent code in both Java and PHP) I have a class like this: class Foo { private int $bar; public function __construct(int $bar) { $this->bar = $...
SOFe's user avatar
  • 728
2 votes
1 answer
635 views

As a creator of a software library, how can I verify backward compatibility with earlier versions? When using a dependency management (here: Maven), multiple versions of my dependency could be (...
Matthias's user avatar
  • 145
0 votes
2 answers
2k views

In my company, we're using Spring Boot to implement backend API and React to implement frontend including Web interface and Android/iOS apps. Since our product is an Enterprise software, customers ...
JamesBoyZ's user avatar
  • 245
4 votes
1 answer
1k views

So I was learning about forward compatibility, and I was wondering if you could warn a "dependent" that a dependency is backward compatible, but not forward compatible*, and vice-versa. The SemVer ...
CidTori's user avatar
  • 149
2 votes
3 answers
117 views

I've been reading up on API versioning for REST APIs. Most of the articles I've come across (here's an example) seem to focus on two options: URI based versioning, e.g. v1/my_resource/ Media Type ...
Erik Madsen's user avatar
-3 votes
1 answer
58 views

How do software platforms/frameworks test for backwards compatibility with third party extensions? For instance, say I have a framework that many third party extensions rely on, and I want to make a ...
Need Answers Fast's user avatar
4 votes
2 answers
188 views

JuliaLang just hit version 1.0 the other week I and many other package maintainers have thus updated out packages to work with julia 0.7 (the transitional release) and 1.0. In doing so, we've often ...
Frames Catherine White's user avatar
0 votes
2 answers
1k views

Let us say I am working on a project with maybe 100 nuget packages installed and 50 of these packages require an update. I would ike to get a clear overview on which package updates cause any ...
Just van der Veeken's user avatar
3 votes
4 answers
4k views

I am working on an app which has multiple versions deployed in the market. Different versions have modified databases and databases are to be synced between local storage and server storage by signed ...
Sazzad Hissain Khan's user avatar
3 votes
0 answers
1k views

Modern Windows 10 can run binaries that were compiled on 20 years ago for Windows 95 or NT4, however I imagine that the libraries that the code is calling would have changed massively since then. I ...
Albert Tomanek's user avatar
4 votes
3 answers
420 views

For any successful programming language, making a breaking change to the language is extremely difficult. This is the case even for those changes where the legacy code could be reliably and ...
max's user avatar
  • 1,115
1 vote
1 answer
674 views

I am in the process of refactoring a large application originally written in .NET 2.0, running on an old version of Microsoft's Compact Framework. The idea is to refactor and rewrite the code so that ...
Excavator's user avatar
5 votes
1 answer
2k views

Scenario: An open-source PHP project that has existed for several years has too many classes in the main namespace that we want to refactor some of them into another namespace, but we have a widely ...
SOFe's user avatar
  • 728
2 votes
1 answer
6k views

I have an ASP.NET Web API application. It uses enums for some fixed sets of states or types. Now I need to extend enum to support more values. But it will break backwards compatibility so I need to ...
Maxim Tkachenko's user avatar
1 vote
1 answer
469 views

We do have several Components in our product which are Component A Component B Component C Dependencies are (if unmet the system fails): A <-> B B <-> C We are currently creating a build ...
pfried's user avatar
  • 203
1 vote
3 answers
4k views

I have an API which allows me to communication with a device. The communication protocol is stored in a JSON file. It list the events that the device can raise, the functions, the frames format, etc. ...
PyNico's user avatar
  • 129
1 vote
1 answer
92 views

I will illustrate the problem with a specific case. Suppose we have a bit-flag style enumeration type defining different kinds of validations. It's tempting to define an enumerator like ...
Lingxi's user avatar
  • 155
6 votes
1 answer
147 views

I am working on a well established (aka clients using it for a while) video player. We recently found out that the drawing engine (ddraw) is deprecated in windows 8 and 10, and choose a modern ...
UmNyobe's user avatar
  • 372
20 votes
1 answer
1k views

In Meyer's Object-Oriented Software Construction (1988) he defines the open/closed principle as follows: A module will be said to be open if it is still available for extension. For example, it ...
David Moles's user avatar
20 votes
3 answers
6k views

What is a good design for allowing backwards compatibility of a file type between different versions of software? For instance, how does microsoft get word 2007, 2010 and 2013 etc... to all open docx ...
JJBurgess's user avatar
  • 301
15 votes
3 answers
2k views

Am I correct to assume that most end users are using an older version than Java 8? Since I do not want to force people to upgrade in order to use my application, should I plan it to use Java 7 or even ...
Andreas's user avatar
  • 367
4 votes
2 answers
3k views

I've inherited an API to maintain. Users can pass a callback function to the class which gets called on some event. The callback function is currently passed in a single argument. I need to change ...
Griffin's user avatar
  • 141
15 votes
3 answers
709 views

There are a big number of programming languages. Some of them grow up and become very popular. People use such languages more and more often. The founder of such language (or founding organisation/...
Viacheslav Kondratiuk's user avatar
-1 votes
1 answer
758 views

I work for a university Digital Services team. Our university's main website uses the Ektron CMS (I have my own thoughts about this, but that's irrelevant). Because we maintain a university website, ...
bee's user avatar
  • 101
1 vote
1 answer
141 views

I have recently come across a requirement related to our release/SDLC process that seems a little out of the ordinary to me so I am writing this to inquire whether this practice is common and, if not, ...
amphibient's user avatar
  • 1,591
3 votes
3 answers
3k views

I have developed an open source PHP application and currently it uses both the MySQLi or MySQL extension for backwards compatibility. I'm wondering about switching it over to only be compatible with ...
SameOldNick's user avatar
58 votes
14 answers
11k views

First, some context (stuff that most of you know anyway): Every popular programming language has a clear evolution, most of the time marked by its version: you have Java 5, 6, 7 etc., PHP 5.1, 5.2, 5....
Radu Murzea's user avatar
  • 1,820
6 votes
2 answers
1k views

Should bash be expected to change in ways that break non-trivial amounts of existing scripts at some point in the (near/<5y) future? How much change has it gone trough in the last ten years ...
user avatar
5 votes
2 answers
1k views

I'm currently contemplating writing an OS X version of my Windows software. My Windows application still supports Windows XP, and I know that if I drop support for it now, our customers will cry ...
haimg's user avatar
  • 153
6 votes
2 answers
496 views

Is there a common name for the practice of keeping a version number on your data, so that different versions of your program can identify, for example, "current", "legacy", and "too-old-to-deal-with" ...
user50849's user avatar
  • 296
1 vote
2 answers
345 views

The reason for doing it is to solve the case when a newer API is no longer backwards compatible with an older API. To explain, just say that there is an old API v1.0. The maker of this API decides it ...
dodgy_coder's user avatar
  • 1,098
15 votes
2 answers
28k views

We develop a windows application in .NET 4 with a database of MySQL. When we are about to deploy that application, we install the .NET 4 framework in our client, then when installing the .NET ...
John Isaiah Carmona's user avatar
0 votes
1 answer
113 views

I will be adding a feature to the software and have to update or modify some of public API of the present open source software. What are steps which could be taken to ensure the compatibility of the ...
samuelhard's user avatar
8 votes
3 answers
2k views

In my experience, trying to ensure that new versions of an application retain compatibility with data storage from previous versions can often be a painful process. What I currently do is to save a ...
vaughandroid's user avatar
  • 7,629
2 votes
2 answers
266 views

According to this article from the BBC and this post on Microsoft's Exploring IE Blog, Microsoft has planned to automatically upgrade Windows XP, Windows Vista, and Windows 7's IE to the latest ...
msanford's user avatar
  • 750
19 votes
7 answers
12k views

When you recommend updating jQuery/jQuery UI? Or in other words: what are the best practices for updating jQuery/jQuery UI? I’m working on a long project that will take at least one more year. In ...
user avatar
2 votes
3 answers
778 views

I have heard that there will be a lot of changes done in C++ because of the new standard (C++0x). My question is: What are the major changes, and will C++0x be compatible with C++ 98 and C ?
ApprenticeHacker's user avatar
3 votes
3 answers
192 views

So there is a lot of cool stuff in the html5/css3 specs which should be able to replace a lot of the stuff that have been traditionally done with javascript. Does anyone know if any of the major js ...
Dave's user avatar
  • 183
2 votes
3 answers
934 views

For example if we consider ActionScript2.0(based on Objects but programming does not implement much OOP ) vs 3.0(highly OOP) its like a whole new scripting language in the sense of approach, ...
Aditya P's user avatar
  • 3,527
18 votes
12 answers
2k views

Any product or framework evolves. Mainly it's done to catch up the needs of it's users, leverage new computing powers and simply make it better. Sometimes the primary design goal also changes with the ...
Gulshan's user avatar
  • 9,542