Automated backward-compatible function updates
Systems and techniques are described to allow an Application Development Platform (ADP) to be dynamically updated to provide backward compatibility with existing functions in a manner that both intuitive to user experience and provides advantages to the way in which computing systems implement updates to ensure that users with limited technical expertise can update applications. In some implementations, data indicating a first version of a function to be executed by applications developed on a post-update application development platform is obtained. A second version of the function that is associated with a pre-update application development platform is identified. An association between the first version of the function and the second version of the function is generated. A determination that an application developed using the pre-update application development platform is associated with the second version of the function is made. Data associated with the application developed using the pre-update application development platform is then adjusted.
1 . A method comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function, wherein the second application development platform differs from the first application development platform by one or more of: a definition function, a specification of the function, or a requirements of the function; and
executing the function on the first application development platform.
2 . The method of claim 1 , wherein the first application development platform is configured to enable a user interface for building an application by specifying one or more relationships between visual development tools.
3 . The method of claim 2 , wherein the visual development tools comprise at least one of drag-and-drop modelers or point-and-click interface creation tools.
4 . The method of claim 2 , wherein the user interface permits a user to build a software application without writing source code for the software application.
5 . The method of claim 1 , further comprising:
configuring a software application to execute the function, stored in the at least one memory, on the first application development platform to produce the second result associated with execution of the function on the second application development platform.
6 . A method comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function;
configuring a software application to execute the function on the first application development platform;
providing a notification including a link that, when selected by a user, redirects the user to a webpage producing the second result associated with execution of the function on the second application development platform; and
executing the function on the first application development platform.
7 . A method comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function, wherein:
the function repository comprises a respective data structure for each function to be executed by applications developed on the first application development platform, and
each data structure comprises, for each of the functions to be executed by applications developed on the first application development platform, a display format, a storage format, and execution parameters; and
executing the function on the first application development platform.
8 . A system comprising:
one or more computing devices; and
one or more storage devices storing instructions that, when executed by the one or more computing devices, cause the one or more computing devices to perform operations comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function, wherein the second application development platform differs from the first application development platform by one or more of: a definition function, a specification of the function, or a requirements of the function; and
executing the function on the first application development platform.
9 . The system of claim 8 , wherein the first application development platform is configured to enable a user interface for building an application by specifying one or more relationships between visual development tools.
10 . The system of claim 9 , wherein the visual development tools comprise at least one of drag-and-drop modelers or point-and-click interface creation tools.
11 . The system of claim 9 , wherein the user interface permits a user to build a software application without writing source code for the software application.
12 . The system of claim 8 , further comprising:
configuring a software application to execute the function, stored in the at least one memory, on the first application development platform to produce the second result associated with execution of the function on the second application development platform.
13 . A system comprising:
one or more computing devices; and
one or more storage devices storing instructions that, when executed by the one or more computing devices, cause the one or more computing devices to perform operations comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function;
configuring a software application to execute the function on the first application development platform;
providing a notification including a link that, when selected by a user, redirects the user to a webpage producing the second result associated with execution of the function on the second application development platform; and
executing the function on the first application development platform.
14 . A system comprising:
one or more computing devices; and
one or more storage devices storing instructions that, when executed by the one or more computing devices, cause the one or more computing devices to perform operations comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function, wherein:
the function repository comprises a respective data structure for each function to be executed by applications developed on the first application development platform, and
each data structure comprises, for each of the functions to be executed by applications developed on the first application development platform, a display format, a storage format, and execution parameters; and
executing the function on the first application development platform.
15 . At least one non-transitory computer-readable storage device storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
updating a function repository of the first application development platform to include one or more definitions of the function, wherein the second application development platform differs from the first application development platform by one or more of: a definition function, a specification of the function, or a requirements of the function; and
executing the function on the first application development platform.
16 . The non-transitory computer-readable storage device of claim 15 , wherein the first application development platform is configured to enable a user interface for building an application by specifying one or more relationships between visual development tools.
17 . The non-transitory computer-readable storage device of claim 16 , wherein the visual development tools comprise at least one of drag-and-drop modelers or point-and-click interface creation tools.
18 . The non-transitory computer-readable storage device of claim 16 , wherein the user interface permits a user to build a software application without writing source code for the software application.
19 . The non-transitory computer-readable storage device of claim 15 , further comprising:
configuring a software application to execute the function, stored in the at least one memory, on the first application development platform to produce the second result associated with execution of the function on the second application development platform.
20 . At least one non-transitory computer-readable storage device storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
identifying, using one or more processors of one or more computers having at least one memory, a function stored in the at least one memory of a first application development platform that is to be implemented on at least one of the one or more computers, the first application development platform having been updated from a second application development platform;
in response to identify the function, determining a first result associated with execution of the function on the second application development platform;
generating, using the one or more processors, a second result associated with execution of the function on the second application development platform, wherein the first result is different from the second result;
configuring a software application to execute the function on the first application development platform;
providing a notification including a link that, when selected by a user, redirects the user to a webpage producing the second result associated with execution of the function on the second application development platform; and
executing the function on the first application development platform.