author | Edward Pilatowicz <edward.pilatowicz@oracle.com> |
Fri, 10 Mar 2017 17:25:38 -0800 | |
changeset 3528 | 2d9234c9da4e |
parent 30 | f06ad6cb4b3f |
permissions | -rw-r--r-- |
29
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
1 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
2 |
pkg |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
3 |
PUBLICATION AND TRANSACTIONS |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
4 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
5 |
:vim set expandtab: |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
6 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
7 |
1. Problem |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
8 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
9 |
We prefer having "fat" packages, to having a plurality of speciated |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
10 |
nodes in our version tree. That is, we hope to have exception |
30 | 11 |
packages have a single platform attribute. This means that we have |
29
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
12 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
13 |
build files on platform A and B |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
14 |
commit fat package containing (A, B) files |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
15 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
16 |
as the gross ordering of operations. Taken strictly, this ordering |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
17 |
would be too restrictive, particularly once the set of platforms |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
18 |
which might participate in a package goes beyond two. |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
19 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
20 |
2. Ways to handle multi-platform transactions |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
21 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
22 |
Treat every transaction on v as an update to the version, v. A |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
23 |
platform-specific update would include both common files and the |
30 | 24 |
platform-tagged or architecture-tagged files. If common files |
25 |
differed between v:t_1 and v:t_2, then this transaction isn't |
|
26 |
valid--it's branch modifying. |
|
29
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
27 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
28 |
Otherwise, the v:t_2 package contains the common files and the set |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
29 |
of flavoured files submitted so far. |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
30 |
|
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
31 |
(This approach evades the problem of expecting a platform-specific |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
32 |
update to only replace files with alternate versions.) |
f621f1df0849
fix install target; correct imports for module renames
"Stephen Hahn <sch@sun.com>"
parents:
diff
changeset
|
33 |