Skip to content

Commit d2e3ddc

Browse files
update canton to 20250120.12436.v51bf978a (#20616)
1 parent e965e38 commit d2e3ddc

File tree

125 files changed

+2493
-1154
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+2493
-1154
lines changed

Diff for: sdk/canton/community/app-base/src/main/scala/com/digitalasset/canton/config/CantonConfig.scala

+25-30
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,7 @@ trait CantonConfig {
418418
general = CantonNodeParameterConverter.general(this, domainConfig),
419419
protocol = CantonNodeParameterConverter.protocol(this, domainConfig.init.domainParameters),
420420
maxBurstFactor = domainConfig.parameters.maxBurstFactor,
421+
dispatcherBatchSize = domainConfig.parameters.dispatcherBatchSize,
421422
)
422423
}
423424

@@ -716,6 +717,9 @@ object CantonConfig {
716717
deriveReader[LedgerApiKeepAliveServerConfig]
717718
lazy implicit val tlsServerConfigReader: ConfigReader[TlsServerConfig] =
718719
deriveReader[TlsServerConfig]
720+
lazy implicit val tlsServerOnlyTrustFileConfigReader
721+
: ConfigReader[TlsClientConfigOnlyTrustFile] =
722+
deriveReader[TlsClientConfigOnlyTrustFile]
719723
lazy implicit val tlsClientConfigReader: ConfigReader[TlsClientConfig] =
720724
deriveReader[TlsClientConfig]
721725
lazy implicit val initBaseIdentityConfigReader: ConfigReader[InitConfigBase.Identity] =
@@ -764,6 +768,21 @@ object CantonConfig {
764768
deriveReader[ApiType.Grpc.type]
765769
lazy implicit val apiTypeConfigReader: ConfigReader[ApiType] = deriveReader[ApiType]
766770
lazy implicit val clientConfigReader: ConfigReader[ClientConfig] = deriveReader[ClientConfig]
771+
lazy implicit val remoteConsoleSequencerClientConfigReader
772+
: ConfigReader[SequencerApiClientConfig] =
773+
deriveReader[SequencerApiClientConfig]
774+
// Note that transformations are applied in reverse order,
775+
// so we move the deprecated before deleting the parent path
776+
.deprecateConfigPath(
777+
DeprecatedConfigUtils.DeprecatedConfigPath[String](
778+
"custom-trust-certificates",
779+
since = "2.10.0",
780+
dropPath = true,
781+
)
782+
)
783+
.moveDeprecatedField("custom-trust-certificates.pem-file", Seq("tls.trust-collection-file"))
784+
.moveDeprecatedField("transport-security", Seq("tls.enabled"))
785+
767786
lazy implicit val remoteDomainConfigReader: ConfigReader[RemoteDomainConfig] =
768787
deriveReader[RemoteDomainConfig]
769788
lazy implicit val remoteParticipantConfigReader: ConfigReader[RemoteParticipantConfig] =
@@ -863,22 +882,6 @@ object CantonConfig {
863882
deriveReader[PackageMetadataViewConfig]
864883
lazy implicit val identityConfigReader: ConfigReader[TopologyConfig] =
865884
deriveReader[TopologyConfig]
866-
lazy implicit val sequencerConnectionConfigCertificateFileReader
867-
: ConfigReader[SequencerConnectionConfig.CertificateFile] =
868-
deriveReader[SequencerConnectionConfig.CertificateFile]
869-
lazy implicit val sequencerConnectionConfigCertificateStringReader
870-
: ConfigReader[SequencerConnectionConfig.CertificateString] =
871-
deriveReader[SequencerConnectionConfig.CertificateString]
872-
lazy implicit val sequencerConnectionConfigCertificateConfigReader
873-
: ConfigReader[SequencerConnectionConfig.CertificateConfig] =
874-
deriveReader[SequencerConnectionConfig.CertificateConfig]
875-
lazy implicit val sequencerConnectionConfigGrpcReader
876-
: ConfigReader[SequencerConnectionConfig.Grpc] =
877-
deriveReader[SequencerConnectionConfig.Grpc]
878-
lazy implicit val sequencerConnectionConfigReader: ConfigReader[SequencerConnectionConfig] =
879-
deriveReader[SequencerConnectionConfig]
880-
// since the big majority of users will use GRPC, default to it so that they don't need to specify `type = grpc`
881-
.orElse(ConfigReader[SequencerConnectionConfig.Grpc])
882885
lazy implicit val communitySequencerConfigDatabaseReader
883886
: ConfigReader[CommunitySequencerConfig.Database] =
884887
deriveReader[CommunitySequencerConfig.Database]
@@ -1126,6 +1129,9 @@ object CantonConfig {
11261129
deriveWriter[TlsServerConfig]
11271130
lazy implicit val tlsClientConfigWriter: ConfigWriter[TlsClientConfig] =
11281131
deriveWriter[TlsClientConfig]
1132+
lazy implicit val tlsClientConfigWriterOnlyTrustFile
1133+
: ConfigWriter[TlsClientConfigOnlyTrustFile] =
1134+
deriveWriter[TlsClientConfigOnlyTrustFile]
11291135
lazy implicit val initBaseIdentityConfigWriter: ConfigWriter[InitConfigBase.Identity] =
11301136
deriveWriter[InitConfigBase.Identity]
11311137
lazy implicit val initConfigWriter: ConfigWriter[InitConfig] = deriveWriter[InitConfig]
@@ -1166,6 +1172,9 @@ object CantonConfig {
11661172
lazy implicit val communityCryptoWriter: ConfigWriter[CommunityCryptoConfig] =
11671173
deriveWriter[CommunityCryptoConfig]
11681174
lazy implicit val clientConfigWriter: ConfigWriter[ClientConfig] = deriveWriter[ClientConfig]
1175+
lazy implicit val remoteConsoleSequencerClientConfigWriter
1176+
: ConfigWriter[SequencerApiClientConfig] =
1177+
deriveWriter[SequencerApiClientConfig]
11691178
lazy implicit val remoteDomainConfigWriter: ConfigWriter[RemoteDomainConfig] =
11701179
deriveWriter[RemoteDomainConfig]
11711180
lazy implicit val remoteParticipantConfigWriter: ConfigWriter[RemoteParticipantConfig] =
@@ -1272,20 +1281,6 @@ object CantonConfig {
12721281
deriveWriter[PackageMetadataViewConfig]
12731282
lazy implicit val identityConfigWriter: ConfigWriter[TopologyConfig] =
12741283
deriveWriter[TopologyConfig]
1275-
lazy implicit val sequencerConnectionConfigCertificateFileWriter
1276-
: ConfigWriter[SequencerConnectionConfig.CertificateFile] =
1277-
deriveWriter[SequencerConnectionConfig.CertificateFile]
1278-
lazy implicit val sequencerConnectionConfigCertificateStringWriter
1279-
: ConfigWriter[SequencerConnectionConfig.CertificateString] =
1280-
confidentialWriter[SequencerConnectionConfig.CertificateString](_.copy(pemString = "****"))
1281-
lazy implicit val sequencerConnectionConfigCertificateConfigWriter
1282-
: ConfigWriter[SequencerConnectionConfig.CertificateConfig] =
1283-
deriveWriter[SequencerConnectionConfig.CertificateConfig]
1284-
lazy implicit val sequencerConnectionConfigGrpcWriter
1285-
: ConfigWriter[SequencerConnectionConfig.Grpc] =
1286-
deriveWriter[SequencerConnectionConfig.Grpc]
1287-
lazy implicit val sequencerConnectionConfigWriter: ConfigWriter[SequencerConnectionConfig] =
1288-
deriveWriter[SequencerConnectionConfig]
12891284
lazy implicit val communitySequencerConfigDatabaseWriter
12901285
: ConfigWriter[CommunitySequencerConfig.Database] =
12911286
deriveWriter[CommunitySequencerConfig.Database]

Diff for: sdk/canton/community/app-base/src/main/scala/com/digitalasset/canton/console/InstanceReference.scala

+3-3
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ trait RemoteDomainReference extends DomainReference with GrpcRemoteInstanceRefer
315315
consoleEnvironment.environment.config.remoteDomainsByString(name)
316316

317317
override def sequencerConnection: SequencerConnection =
318-
config.publicApi.toConnection
318+
config.publicApi.toGrpcSequencerConnection
319319
.fold(
320320
err => sys.error(s"Domain $name has invalid sequencer connection config: $err"),
321321
identity,
@@ -354,7 +354,7 @@ trait LocalDomainReference
354354
consoleEnvironment.environment.config.domainsByString(name)
355355

356356
override def sequencerConnection: SequencerConnection =
357-
config.sequencerConnectionConfig.toConnection
357+
config.sequencerConnectionConfig.toGrpcSequencerConnection
358358
.fold(
359359
err => sys.error(s"Domain $name has invalid sequencer connection config: $err"),
360360
identity,
@@ -428,7 +428,7 @@ object ExternalLedgerApiClient {
428428
new ExternalLedgerApiClient(
429429
cc.address,
430430
cc.port,
431-
cc.tls,
431+
cc.tlsConfig,
432432
Some(token),
433433
)
434434
}

Diff for: sdk/canton/community/app-base/src/main/scala/com/digitalasset/canton/console/commands/TopologyAdministration.scala

+15-2
Original file line numberDiff line numberDiff line change
@@ -743,10 +743,11 @@ class TopologyAdministrationGroup(
743743
target.fingerprint,
744744
isRootDelegation,
745745
key.some,
746+
// no replace existing
746747
)
747748
.discard
748-
749749
renewNamespaceDelegations(TopologyChangeOp.Add, authorizeWith)
750+
// Note: this will remove the oldest one which is the one that existed before
750751
renewNamespaceDelegations(TopologyChangeOp.Remove, filterAuthorizedKey)
751752

752753
case IdentifierDelegation(identifier, target) =>
@@ -757,10 +758,12 @@ class TopologyAdministrationGroup(
757758
identifier,
758759
target.fingerprint,
759760
key.some,
761+
// no replace existing
760762
)
761763
.discard
762764

763765
renewIdentifierDelegation(TopologyChangeOp.Add, authorizeWith)
766+
// Note: this will remove the oldest one which is the one that existed before
764767
renewIdentifierDelegation(TopologyChangeOp.Remove, filterAuthorizedKey)
765768

766769
case OwnerToKeyMapping(owner, key) =>
@@ -772,10 +775,12 @@ class TopologyAdministrationGroup(
772775
key.fingerprint,
773776
key.purpose,
774777
nsKey.some,
778+
// no replace existing
775779
)
776780
.discard
777781

778782
renewOwnerToKeyMapping(TopologyChangeOp.Add, authorizeWith)
783+
// Note: this will remove the oldest one which is the one that existed before
779784
renewOwnerToKeyMapping(TopologyChangeOp.Remove, filterAuthorizedKey)
780785

781786
case signedClaim: SignedLegalIdentityClaim =>
@@ -792,10 +797,12 @@ class TopologyAdministrationGroup(
792797
permission,
793798
trustLevel,
794799
key.some,
800+
replaceExisting = false,
795801
)
796802
.discard
797803

798804
renewParticipantState(TopologyChangeOp.Add, authorizeWith)
805+
// Note: this will remove the oldest one which is the one that existed before
799806
renewParticipantState(TopologyChangeOp.Remove, filterAuthorizedKey)
800807

801808
case MediatorDomainState(side, domain, mediator) =>
@@ -807,10 +814,12 @@ class TopologyAdministrationGroup(
807814
mediator,
808815
side,
809816
key.some,
817+
replaceExisting = false,
810818
)
811819
.discard
812820

813821
renewMediatorState(TopologyChangeOp.Add, authorizeWith)
822+
// Note: this will remove the oldest one which is the one that existed before
814823
renewMediatorState(TopologyChangeOp.Remove, filterAuthorizedKey)
815824

816825
case PartyToParticipant(side, party, participant, permission) =>
@@ -823,10 +832,11 @@ class TopologyAdministrationGroup(
823832
side,
824833
permission,
825834
key.some,
835+
replaceExisting = false,
826836
)
827837
.discard
828-
829838
renewPartyToParticipant(TopologyChangeOp.Add, authorizeWith)
839+
// Note: this will remove the oldest one which is the one that existed before
830840
renewPartyToParticipant(TopologyChangeOp.Remove, filterAuthorizedKey)
831841

832842
case VettedPackages(participant, packageIds) =>
@@ -837,10 +847,12 @@ class TopologyAdministrationGroup(
837847
participant,
838848
packageIds,
839849
key.some,
850+
// no replace existing
840851
)
841852
.discard
842853

843854
renewVettedPackages(TopologyChangeOp.Add, authorizeWith)
855+
// Note: this will remove the oldest one which is the one that existed before
844856
renewVettedPackages(TopologyChangeOp.Remove, filterAuthorizedKey)
845857

846858
case CheckOnlyPackages(participant, packageIds) =>
@@ -851,6 +863,7 @@ class TopologyAdministrationGroup(
851863
participant,
852864
packageIds,
853865
key.some,
866+
// no replace existing
854867
)
855868
.discard
856869

Diff for: sdk/canton/community/app-base/src/main/scala/com/digitalasset/canton/environment/Environment.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ trait Environment extends NamedLogging with AutoCloseable with NoTracing {
297297
.filter(_.config.topology.open)
298298
def toDomainConfig(domain: DomainNodeBootstrap): Either[StartupError, DomainConnectionConfig] =
299299
(for {
300-
connection <- domain.config.sequencerConnectionConfig.toConnection
300+
connection <- domain.config.sequencerConnectionConfig.toGrpcSequencerConnection
301301
name <- DomainAlias.create(domain.name.unwrap)
302302
sequencerConnections = SequencerConnections.single(connection)
303303
} yield DomainConnectionConfig(name, sequencerConnections)).leftMap(err =>

Diff for: sdk/canton/community/app/src/main/resources/LICENSE-open-source-bundle.txt

-1
This file was deleted.

0 commit comments

Comments
 (0)