Prepare for beta release of APIs (#157)

diff --git a/config.yaml b/config.yaml
index 4b7bb4e..e125de7 100644
--- a/config.yaml
+++ b/config.yaml
@@ -2,7 +2,7 @@
 # should be ignored.
 packages:
 - googleapis:
-    version: 1.0.0-dev
+    version: 1.0.0-beta.0
     homepage: https://github.com/dart-lang/googleapis
     readme: resources/README.md
     license: resources/LICENSE
@@ -192,7 +192,7 @@
     - youtubereporting:v1 # https://developers.google.com/youtube/reporting/v1/reports/
 
 - googleapis_beta:
-    version: 1.0.0-dev
+    version: 1.0.0-beta.0
     homepage: https://github.com/dart-lang/googleapis
     readme: resources/README.md
     license: resources/LICENSE
diff --git a/generated/googleapis/CHANGELOG.md b/generated/googleapis/CHANGELOG.md
index 7ce1af0..c708c1e 100644
--- a/generated/googleapis/CHANGELOG.md
+++ b/generated/googleapis/CHANGELOG.md
@@ -1,9 +1,43 @@
-## 1.0.0-dev
+## 1.0.0-beta.0
 
-TODO: document many changes!
+### BREAKING changes to API shape
 
-## 0.57.0
- * [api-removed] youtubeanalytics:v1
+* `USER_AGENT` has been removed from each library. All libraries within the
+  package share a common user-agent value.
+* API classes have been renamed to use more standard casing.
+  For example: `FirebasedynamiclinksApi` to `FirebaseDynamicLinksApi`.
+* Resource classes have been renamed to drop the `Api` suffix.
+  For example: `ManagedShortLinksResourceApi` to `ManagedShortLinksResource`.
+
+### API updates
+
+- `apigateway` - new
+- `artifactregistry` - new
+- `assuredworkloads` - new
+- `billingbudgets` - new
+- `chromeuxreport` - new
+- `datafusion` - new
+- `dialogflow` - added v3 API
+- `eventarc` - new
+- `firebasehosting` - new
+- `firebaseml` - new
+- `gameservices` - new
+- `gmailpostmastertools` - new
+- `jobs` - dropped v2, added v3 API
+- `localservices` - new
+- `memcache` - new
+- `notebooks` - new
+- `playablelocations` - new
+- `pubsublite` - new
+- `realtimebidding` - new
+- `retail` - new
+- `servicecontrol` - added v2 API
+- `servicedirectory` - new
+- `smartdevicemanagement` - new
+- `sts` - new
+- `trafficdirector` - new
+- `vectortile` - new
+- `youtubeAnalytics` - dropped v1 API
 
 ## 0.56.1
  * [api-add] oauth2:v2 (appears to have been unintentionally missing from 0.55.0)
diff --git a/generated/googleapis/lib/src/user_agent.dart b/generated/googleapis/lib/src/user_agent.dart
index 054a65e..e64c182 100644
--- a/generated/googleapis/lib/src/user_agent.dart
+++ b/generated/googleapis/lib/src/user_agent.dart
@@ -1,2 +1,2 @@
 /// User-Agent request header used by all libraries in this package
-const userAgent = 'Dart package:googleapis / 1.0.0-dev';
+const userAgent = 'Dart package:googleapis / 1.0.0-beta.0';
diff --git a/generated/googleapis/pubspec.yaml b/generated/googleapis/pubspec.yaml
index 3369825..aacddbe 100644
--- a/generated/googleapis/pubspec.yaml
+++ b/generated/googleapis/pubspec.yaml
@@ -1,5 +1,5 @@
 name: googleapis
-version: 1.0.0-dev
+version: 1.0.0-beta.0
 description: Auto-generated client libraries for accessing Google APIs described through the API discovery service.
 homepage: https://github.com/dart-lang/googleapis
 environment:
diff --git a/generated/googleapis_beta/CHANGELOG.md b/generated/googleapis_beta/CHANGELOG.md
index 6412882..960b0b3 100644
--- a/generated/googleapis_beta/CHANGELOG.md
+++ b/generated/googleapis_beta/CHANGELOG.md
@@ -1,6 +1,51 @@
-## 1.0.0-dev
+## 1.0.0-beta.0
 
-TODO: document many changes!
+### BREAKING changes to API shape
+
+* `USER_AGENT` has been removed from each library. All libraries within the
+  package share a common user-agent value.
+* API classes have been renamed to use more standard casing.
+  For example: `FirebasedynamiclinksApi` to `FirebaseDynamicLinksApi`.
+* Resource classes have been renamed to drop the `Api` suffix.
+  For example: `ManagedShortLinksResourceApi` to `ManagedShortLinksResource`.
+
+### API changes
+
+See [package:googleapis](https://pub.dev/packages/googleapis)
+for the stable versions of the changed APIs.
+
+* `analyticsadmin` - new
+* `analyticsdata` - new
+* `appengine` - removed. Use stable.
+* `area120tables` - new
+* `artifactregistry` - removed. Now stable.
+* `billingbudgets` - removed. Now stable.
+* `cloudresourcemanager` - removed. Use stable.
+* `datafusion` - removed. Now stable.
+* `datalabeling` - new
+* `datamigration` - new
+* `dialogflow` - removed. Now stable.
+* `documentai` - new
+* `domains` - new
+* `firebasedatabase` - new
+* `firebasehosting` - removed. Now stable.
+* `firebaseml` - removed. Now stable.
+* `gameservices` - removed. Now stable.
+* `language` - removed. Use stable.
+* `memcache` - removed. Now stable.
+* `metastore` - new
+* `networkconnectivity` - new
+* `oslogin` - removed. Use stable.
+* `privateca` - new
+* `pubsub` - removed. Use stable.
+* `recommendationengine` - new
+* `runtimeconfig` - removed. Use stable.
+* `servicedirectory` - removed. Now stable.
+* `speech` - removed. Use stable.
+* `tpu` - removed. Use stable.
+* `transcoder` - new
+* `workflowexecutions` - new
+* `workflows` - new
 
 ## 0.51.0
  * [api-new] artifactregistry:v1beta1
@@ -12,7 +57,6 @@
  * [api-removed] networkmanagement:v1beta1
  * [api-removed] recommender:v1beta1
 
-
 ## 0.50.0
  * [api-new] bigqueryconnection:v1beta1
  * [api-new] billingbudgets:v1beta1
diff --git a/generated/googleapis_beta/lib/src/user_agent.dart b/generated/googleapis_beta/lib/src/user_agent.dart
index 2d55d6d..7ad5632 100644
--- a/generated/googleapis_beta/lib/src/user_agent.dart
+++ b/generated/googleapis_beta/lib/src/user_agent.dart
@@ -1,2 +1,2 @@
 /// User-Agent request header used by all libraries in this package
-const userAgent = 'Dart package:googleapis_beta / 1.0.0-dev';
+const userAgent = 'Dart package:googleapis_beta / 1.0.0-beta.0';
diff --git a/generated/googleapis_beta/pubspec.yaml b/generated/googleapis_beta/pubspec.yaml
index cf04767..ab90760 100644
--- a/generated/googleapis_beta/pubspec.yaml
+++ b/generated/googleapis_beta/pubspec.yaml
@@ -1,5 +1,5 @@
 name: googleapis_beta
-version: 1.0.0-dev
+version: 1.0.0-beta.0
 description: Auto-generated client libraries for accessing Google APIs described through the API discovery service.
 homepage: https://github.com/dart-lang/googleapis
 environment:
diff --git a/generator/tool/config_delta.dart b/generator/tool/config_delta.dart
new file mode 100644
index 0000000..f69795e
--- /dev/null
+++ b/generator/tool/config_delta.dart
@@ -0,0 +1,80 @@
+import 'dart:collection';
+import 'dart:io';
+
+import 'package:yaml/yaml.dart';
+
+/// Use this to print a CSV-friendly delta between an old config and a new
+/// config.
+Future<void> main(List<String> args) async {
+  if (args.length != 2) {
+    stderr.writeln(
+        'run with two args: <old_config_file_path> <new_config_file_path>');
+    exitCode = 1;
+    return;
+  }
+
+  final configs = [
+    ..._configs('old', args[0]),
+    ..._configs('new', args[1]),
+  ];
+
+  stderr.writeln('config count: ${configs.length}');
+
+  final allApis = SplayTreeSet.of(
+    configs.expand((element) => element.apis.keys),
+  );
+
+  final rows = [
+    [
+      'api',
+      ...configs.map((e) => '${e.name}@${e.version}'),
+    ],
+    for (var api in allApis)
+      [
+        api,
+        ...configs.map((e) => e.apis[api]?.join(',') ?? ''),
+      ]
+  ];
+
+  print(rows.map((row) => row.map((e) => '"$e"').join(',')).join('\n'));
+}
+
+Iterable<Configuration> _configs(String version, String path) sync* {
+  stderr.writeln('file: $version');
+  final fileContents = File(path).readAsStringSync();
+  final yaml = loadYaml(fileContents, sourceUrl: path) as YamlMap;
+  final packages = yaml['packages'] as YamlList;
+
+  for (var name in _names) {
+    stderr.writeln('  api: $name');
+    final entry = packages.singleWhere(
+        (element) => element is Map && element.containsKey(name)) as YamlMap;
+
+    final data = entry[name] as YamlMap;
+
+    final apiList = (data['apis'] as YamlList).cast<String>();
+
+    final apis = SplayTreeMap<String, Set<String>>();
+
+    for (var api in apiList) {
+      final split = api.split(':');
+      assert(split.length == 2);
+      final apiName = split[0];
+      final apiVersion = split[1];
+
+      apis.putIfAbsent(apiName, () => SplayTreeSet()).add(apiVersion);
+    }
+    yield Configuration(name, version, apis);
+  }
+}
+
+const _names = {'googleapis', 'googleapis_beta'};
+
+class Configuration {
+  final String name;
+  final String version;
+
+  final Map<String, Set<String>> apis;
+
+  Configuration(this.name, this.version, this.apis);
+}
diff --git a/resources/googleapis/CHANGELOG.md b/resources/googleapis/CHANGELOG.md
index 7ce1af0..c708c1e 100644
--- a/resources/googleapis/CHANGELOG.md
+++ b/resources/googleapis/CHANGELOG.md
@@ -1,9 +1,43 @@
-## 1.0.0-dev
+## 1.0.0-beta.0
 
-TODO: document many changes!
+### BREAKING changes to API shape
 
-## 0.57.0
- * [api-removed] youtubeanalytics:v1
+* `USER_AGENT` has been removed from each library. All libraries within the
+  package share a common user-agent value.
+* API classes have been renamed to use more standard casing.
+  For example: `FirebasedynamiclinksApi` to `FirebaseDynamicLinksApi`.
+* Resource classes have been renamed to drop the `Api` suffix.
+  For example: `ManagedShortLinksResourceApi` to `ManagedShortLinksResource`.
+
+### API updates
+
+- `apigateway` - new
+- `artifactregistry` - new
+- `assuredworkloads` - new
+- `billingbudgets` - new
+- `chromeuxreport` - new
+- `datafusion` - new
+- `dialogflow` - added v3 API
+- `eventarc` - new
+- `firebasehosting` - new
+- `firebaseml` - new
+- `gameservices` - new
+- `gmailpostmastertools` - new
+- `jobs` - dropped v2, added v3 API
+- `localservices` - new
+- `memcache` - new
+- `notebooks` - new
+- `playablelocations` - new
+- `pubsublite` - new
+- `realtimebidding` - new
+- `retail` - new
+- `servicecontrol` - added v2 API
+- `servicedirectory` - new
+- `smartdevicemanagement` - new
+- `sts` - new
+- `trafficdirector` - new
+- `vectortile` - new
+- `youtubeAnalytics` - dropped v1 API
 
 ## 0.56.1
  * [api-add] oauth2:v2 (appears to have been unintentionally missing from 0.55.0)
diff --git a/resources/googleapis_beta/CHANGELOG.md b/resources/googleapis_beta/CHANGELOG.md
index 6412882..960b0b3 100644
--- a/resources/googleapis_beta/CHANGELOG.md
+++ b/resources/googleapis_beta/CHANGELOG.md
@@ -1,6 +1,51 @@
-## 1.0.0-dev
+## 1.0.0-beta.0
 
-TODO: document many changes!
+### BREAKING changes to API shape
+
+* `USER_AGENT` has been removed from each library. All libraries within the
+  package share a common user-agent value.
+* API classes have been renamed to use more standard casing.
+  For example: `FirebasedynamiclinksApi` to `FirebaseDynamicLinksApi`.
+* Resource classes have been renamed to drop the `Api` suffix.
+  For example: `ManagedShortLinksResourceApi` to `ManagedShortLinksResource`.
+
+### API changes
+
+See [package:googleapis](https://pub.dev/packages/googleapis)
+for the stable versions of the changed APIs.
+
+* `analyticsadmin` - new
+* `analyticsdata` - new
+* `appengine` - removed. Use stable.
+* `area120tables` - new
+* `artifactregistry` - removed. Now stable.
+* `billingbudgets` - removed. Now stable.
+* `cloudresourcemanager` - removed. Use stable.
+* `datafusion` - removed. Now stable.
+* `datalabeling` - new
+* `datamigration` - new
+* `dialogflow` - removed. Now stable.
+* `documentai` - new
+* `domains` - new
+* `firebasedatabase` - new
+* `firebasehosting` - removed. Now stable.
+* `firebaseml` - removed. Now stable.
+* `gameservices` - removed. Now stable.
+* `language` - removed. Use stable.
+* `memcache` - removed. Now stable.
+* `metastore` - new
+* `networkconnectivity` - new
+* `oslogin` - removed. Use stable.
+* `privateca` - new
+* `pubsub` - removed. Use stable.
+* `recommendationengine` - new
+* `runtimeconfig` - removed. Use stable.
+* `servicedirectory` - removed. Now stable.
+* `speech` - removed. Use stable.
+* `tpu` - removed. Use stable.
+* `transcoder` - new
+* `workflowexecutions` - new
+* `workflows` - new
 
 ## 0.51.0
  * [api-new] artifactregistry:v1beta1
@@ -12,7 +57,6 @@
  * [api-removed] networkmanagement:v1beta1
  * [api-removed] recommender:v1beta1
 
-
 ## 0.50.0
  * [api-new] bigqueryconnection:v1beta1
  * [api-new] billingbudgets:v1beta1