Skip to content
This repository was archived by the owner on Feb 8, 2021. It is now read-only.

Commit 4d18186

Browse files
author
k8s-merge-robot
committed
Merge pull request kubernetes#15832 from wojtek-t/update_ugorji_doc
Auto commit by PR queue bot
2 parents 18ad5f8 + 4a48319 commit 4d18186

File tree

1 file changed

+23
-7
lines changed

1 file changed

+23
-7
lines changed

docs/devel/api_changes.md

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ with a number of existing API types and with the [API
3838
conventions](api-conventions.md). If creating a new API
3939
type/resource, we also recommend that you first send a PR containing
4040
just a proposal for the new API types, and that you initially target
41-
the experimental API (pkg/apis/experimental).
41+
the extensions API (pkg/apis/extensions).
4242

4343
The Kubernetes API has two major components - the internal structures and
4444
the versioned APIs. The versioned APIs are intended to be stable, while the
@@ -293,13 +293,13 @@ the release notes for the next release by labeling the PR with the "release-note
293293
If you found that your change accidentally broke clients, it should be reverted.
294294

295295
In short, the expected API evolution is as follows:
296-
* `experimental/v1alpha1` ->
296+
* `extensions/v1alpha1` ->
297297
* `newapigroup/v1alpha1` -> ... -> `newapigroup/v1alphaN` ->
298298
* `newapigroup/v1beta1` -> ... -> `newapigroup/v1betaN` ->
299299
* `newapigroup/v1` ->
300300
* `newapigroup/v2alpha1` -> ...
301301

302-
While in experimental we have no obligation to move forward with the API at all and may delete or break it at any time.
302+
While in extensions we have no obligation to move forward with the API at all and may delete or break it at any time.
303303

304304
While in alpha we expect to move forward with it, but may break it.
305305

@@ -399,9 +399,9 @@ The conversion code resides with each versioned API. There are two files:
399399
functions
400400
- `pkg/api/<version>/conversion_generated.go` containing auto-generated
401401
conversion functions
402-
- `pkg/apis/experimental/<version>/conversion.go` containing manually written
402+
- `pkg/apis/extensions/<version>/conversion.go` containing manually written
403403
conversion functions
404-
- `pkg/apis/experimental/<version>/conversion_generated.go` containing
404+
- `pkg/apis/extensions/<version>/conversion_generated.go` containing
405405
auto-generated conversion functions
406406

407407
Since auto-generated conversion functions are using manually written ones,
@@ -437,7 +437,7 @@ of your versioned api objects.
437437

438438
The deep copy code resides with each versioned API:
439439
- `pkg/api/<version>/deep_copy_generated.go` containing auto-generated copy functions
440-
- `pkg/apis/experimental/<version>/deep_copy_generated.go` containing auto-generated copy functions
440+
- `pkg/apis/extensions/<version>/deep_copy_generated.go` containing auto-generated copy functions
441441

442442
To regenerate them:
443443
- run
@@ -446,12 +446,28 @@ To regenerate them:
446446
hack/update-generated-deep-copies.sh
447447
```
448448

449+
## Edit json (un)marshaling code
450+
451+
We are auto-generating code for marshaling and unmarshaling json representation
452+
of api objects - this is to improve the overall system performance.
453+
454+
The auto-generated code resides with each versioned API:
455+
- `pkg/api/<version>/types.generated.go`
456+
- `pkg/apis/extensions/<version>/types.generated.go`
457+
458+
To regenerate them:
459+
- run
460+
461+
```sh
462+
hack/update-codecgen.sh
463+
```
464+
449465
## Making a new API Group
450466

451467
This section is under construction, as we make the tooling completely generic.
452468

453469
At the moment, you'll have to make a new directory under pkg/apis/; copy the
454-
directory structure from pkg/apis/experimental. Add the new group/version to all
470+
directory structure from pkg/apis/extensions. Add the new group/version to all
455471
of the hack/{verify,update}-generated-{deep-copy,conversions,swagger}.sh files
456472
in the appropriate places--it should just require adding your new group/version
457473
to a bash array. You will also need to make sure your new types are imported by

0 commit comments

Comments
 (0)