[Mono-devel-list] Corlib feature survey.
Miguel de Icaza
miguel at ximian.com
Thu Aug 7 15:25:19 EDT 2003
Hello guys,
Duncan did a Corlib survey of missing features or pieces that are
known to be missing chunks. Dick is already working on a big part of
this: the CultureInfo related bits.
You might find this useful if you want to contribute to Corlib.
CORLIB audit, July 23, 2003
Namespace:
System:
Activator
* 5 missing methods due to missing CultureInfo impl.
Array
* Missing Array.Initialize.
Console
* 2 missing methods, due to missing varargs support.
Environment
* TODO methods and attributes due to Windows-specific naming and
lack of UNIX equivalents.
* GetFolderPath uses the Environment.SpecialFolders enum and
there are values that cannot be mapped into UNIX equivalents.
* Missing GetLogicalDrives, UserDomainName, UserInteractive,
Version and WorkingSet
Exception
* Source and TargetSite properties marked as TODO.
LocalDataSlot
* TODO attribute in Finalize method.
String
* Missing 2 Compare methods due to CultureInfo.
* Missing Concat due to varargs
* Missing ToUpper/ToLower, due to CultureInfo.
Type
* Missing 8 methods from COM interop (GetTypeFromCLSID,
GetTypeFromProgID)
ArgIterator
* AutoLayoutAttribute vs. SequentialLayoutAttribute
Char
* Missing ToUpper/ToLower, due to CultureInfo.
DateTime
* AutoLayoutAttribute vs. SequentialLayoutAttribute.
* Missing 2 GetDateTimeFormats and ToDateTime related to
IFormatProvider.
Double
* One TODO in Parse, impl. in place, needs checking.
Decimal
* Not being CorCompared (!)
IntPtr
* missing GetObjectData impl.
RuntimeMethodHandle
* Missing ISerializable impl.
UIntPtr
* CLSCompliantAttribute mismatch
System.Collections
CaseInsensitiveHashCodeProvider
* Missing Constructor due to CultureInfo
HashTable
* DefaultMemberAttribute mismatch
SortedList
* DefaultMemberAttribute mismatch
System.Globalization
CompareInfo
* All methods are marked as TODO
CultureInfo
* All methods are marked as TODO
System.IO
Directory
* GetLogicalDrives missing
FileStream
* 4 missing methods (BeginRead, BeginWrite, EndRead, EndWrite)
* 2 TODOs (Lock, Unlock)
StreamReader
* missing DiscardBufferedData
System.Reflection
Assembly
* 8 TODO methods
* Need to fix ModuleResolve event
AssemblyName
* Clone, OnDeserialization and FullName are TODOs
AssemblyNameProxy
* GetAssemblyName TODO
EventInfo:
* 6 extra members
FieldInfo
* missing Set/GetValueDirect.
ManifestResourceInfo
* 3 TODO properties
Module:
* 15 missing
System.Reflection.Emit:
MethodBuilder:
* 7 missing methods (some trivial)
ModuleBuilder:
* 17 missing
ParameterBuilder:
* TODO, SetConstant
SignatureHelper:
* 4 missing methods
TypeBuilder:
* 4 missing
* 4 TODO
* 2 extra
System.Runtime.CompilerSerices
RuntimeHelpers:
* missing
System.Runtime.InteropServices
* missing 12 COM-releated types.
* UCOMITypeLib: missing GetTypeInfoCount
* COMException: ToString method marked as TODO
* ComSourceInterfacesAttribute, IDispatchImplAttribute: missing
* InvalidComObjectException, InvalidOleVariantTypeException,
MarshalDirectiveException, SafeArrayRankMismatchException,
SafeArrayTypeMismatchException: missing
* CurrencyWrapper, DispatchWrapper, ErrorWrapper,
ExtensibleClassFactory, TypeLibConverter, UnknownWrapper:
missing.
* Marshal: Lots of TODO methods, missing 3 WriteInt16 methods.
* around 25 missing COM interop types.
System.Runtime.InteropServices.TCEAdapterGen:
* Completely missing.
System.Runtime.Remoting:
* missing type: InternalRemotingServices
* ToString method marked as TODO: ActivatedClientTypeEntry,
ActivatedServiceTypeEntry, WellKnownCLientTypeEntry
* ObjRef: extra method (IsReferenceToWellKnow),
IsFromThisProcess marked as TODO.
* RemotingServices: 3 missing methods, GetEnvoyChainForProxy,
GetLifetimeServices, LogRemotingStage.
* SoapServices: 13 TODO methods.
System.Runtime.Remoting.Activation:
* 5 extra types: AppDomainLevelActivator,
ConstructionLevelActivator, ContextLevelActivator,
RemotingActivationAttribute, RemotingActivator
System.Runtime.Remoting.Channels:
* BaseChannelWithProperties: 2 TODOs
* ChannelServices: 3 TODOs
* ClientChannelSinkStack: 1 TODO
System.Runtime.Remoting.Contexts:
* ContextAttribute, ContextProperty: extra constructor, but no
docs available.
* Context: 10 missing methods.
System.Runtime.Remoting.Lifetime:
* ClientSponsor: 6 TODO methods
System.Runtime.Remoting.Messaging:
* 7 extra types
* missing ILogicalThreadAffinative
* CallContext: only stubs
* ConstructionCall: impl. from Lluis, but no docs to verify.
* ConstructionResponse: constructor mismatch, no docs.
* MethodReturnMessageWrapper: 3 TODO methods, 1 extra property,
no docs.
System.Runtime.Remoting.Metadata:
* all completed, but 19 TODO members in 4 attributes
(SoapAttribute, SoapFieldAttribute, SoapMethodAttribute,
SoapTypeAttribute)
System.Runtime.Remoting.Metadata.W3cXsd2001:
* all have extra no-param constructor and missing a 1-param
constructor.
* all similiarly stubbed with no impl.
System.Runtime.Remoting.Proxies:
* Extra type, RemotingProxy.
* RealProxy: 5 missing methods, 1 extra method
(InternalGetTransportProxy), 1 TODO method
(InitializeServerObject).
System.Runtime.Remoting.Services:
* missing type, EnterpriseServicesHelper.
System.Runtime.Serialization:
* extra type: ObjectRecordStatus.
System.Runtime.Serialization.Formatters:
* missing InternalRM, InternalST.
* ServerFault and SoapFault: missing SoapTypeAttribute (not
documented)
* missing 12 types (all prefixed Internal)
System.Security:
* CodeAccessPermission: needs impl. (9 methods)
* PermissionSet: needs impl. (9 methods)
* SecurityManager: 9 methods missing (different from previous
2), only stubs.
System.Security.Cryptography:
* DSACryptoServiceProvider, PasswordDeriveBytes,
RNGCryptoServiceProvider, RSACryptoServiceProvider: 4 TODOs
* SignatureDescription: one TODO constructor
System.Security.Cryptography.X509Certificates:
* X509Certificates: one TODO (CreateFromSignedFile)
System.Security.Permissions:
* lots of types missing IBuiltinPermission (no docs)
* missing CreatePermission methods in attributes.
* FromXml and ToXml marked TODO in multiple Permissions.
System.Security.Policy:
* 7 missing types, PermissionRequestEvidence, Site,
SiteMembershipCondition, StrongNameMembershipCondition,
UnionCodeGroup, Url, UrlMembershipCondition,
ZoneMembershipCondition.
* missing IConstantMembershipCondition in Condition classes, no
docs.
* PolicyLevel: needs impl.
System.Security.Principal:
* Missing WindowsPrincipal.
* WindowsIdentity: only stubs.
* WindowsImpersonationContext: only stubs
System.Security.Util:
* we have nothing, no docs either.
System.Text:
ANSIEncoding
* 6 extra properties
UnicodeEncoding:
* missing method: GetBytes (string)
* 6 extra properties
UTF7Encoding:
* 7 extra properties
UTF8Encoding:
* missing method: GetBytes (string)
* 14 extra properties
System.Threading:
CompressedStack:
* Missing.
Monitor:
* 2 Wait methods TODO.
Overlapped:
* 10 TODO.
ReaderWriterLock:
* 16 TODO.
RegisteredWaitHandle:
* Finalized TODO
Thread:
* SpinWait method missing
* 3 TODO methods with no impl.
* 5 TODO methods.
ThreadPool:
* Missing UnsafeRegisterWaitForSingleObject
Timer:
* 2 TODO: Change, Dispose.
WaitHandle:
* TODO: one constructor
--
Miguel de Icaza <miguel at ximian.com>
More information about the Mono-devel-list
mailing list