Pure Basic : optimized basic compiler
Deutsch  
Francais  
Introduction visual basic compiler News visual basic compiler Download visual basic compiler Screenshots optimized programming language Ordering visual basic compiler Support visual basic compiler FAQ optimized programming language Links

14th February 2013


PureBasic 5.10 (all OS)

- Added: Form designer is now integrated to the IDE !
- Added: Fully reworked Packer library with ZIP, BriefLZ, 7z (unpacker only), LZMA and JCALG1.
- Added: full IPv6 support to the network library.
- Added: System library: ComputerName(), UserName(), MemoryStatus(), CountCPUs()
- Added: Line continuation feature, with the following operands: ',' '|' '+' And Or Xor
- Added: Constant string comparisons are now handled at compile time, allowing use in CompilerIf for example.
- Added: CocoaMessage() for OS X
- Added: 'Check syntax' to only compile the code without build/running an executable
- Added: Array/List/Map parameter support to Interface methods
- Added: Support for dynamic array/list/map support in structure/interface in Residents.
- Added: #PB_Character, #PB_Unicode, #PB_Ascii and #PB_Integer flag support to FillMemory()
- Added: #PB_RegularExpression_NoCase support to CreateRegularExpression()
- Added: EncodeImage() with PNG, JPEG and JPEG2000 support
- Added: #PB_Memory_NoClear support to Re/AllocateMemory()
- Added: ImageFormat()
- Added: #PB_Editor_WordWrap to EditorGadget()
- Added: Multicharacter comparison in StringField()
- Added: NbOccurrences parameter for ReplaceString()
- Added: PostEvent(), EventData()
- Added: return value to SetCurrentDirectory()
- Added: #PB_String_NoCase mode parameter to FindString()
- Added: #PB_Preference_NoSpace and #PB_Preference_GroupSeparator flags for preferences
- Added: DatabaseColumnIndex()
- Added: #PB_Cipher_URL and #PB_Cipher_NoPadding for Base64Encoder()
- Added: URL compatibility to Base64Decoder()
- Added: SetGadgetItemImage() for all gadget supporting item gadget image
- Added: #PB_Gadget_ScreenCoordinate and #PB_Gadget_WindowCoordinate flag for GadgetX/Y()
- Added: #PB_File_SharedRead (no effect on Linux/OSX), #PB_File_SharedWrite (no effect on Linux/OSX)
- Added: #PB_File_Append and #PB_File_NoBuffering for OpenFile(), ReadFile() and CreateFile()
- Added: #PB_Event_RightClick, #PB_Event_LeftClick and #PB_Event_LeftDoubleClick events
- Added: Optional title parameter to OpenConsole()
- Added: #PB_ScrollArea_ScrollStep added for ScrollAreaGadget()
- Added: #PB_Ignore for ResizeImage()
- Added: Bind a specific IP to CreateNetworkServer()
- Added: Timeout, LocalIP$ and LocalPort parameter to OpenNetworkConnection()
- Added: #PB_NetworkEvent_Disconnect support for NetworkClientEvent()
- Added: #PB_Unicode, #PB_Ascii and #PB_UTF8 support to SendNetworkString()
- Added: #PB_String_MaximumLength attribute for StringGadget()
- Added: #PB_Event_DeactivateWindow support
- Added: #PB_EventType_Change support for EditorGadget()
- Added: #PB_Relative/#PB_Absolute flag for FileSeek()
- Added: 'Offset' and 'Length' parameters to SHA1/MD5/CRC32FileFingerprint()
- Added: GetSoundPosition(), SetSoundPosition(), SoundLength(), PauseSound(), ResumeSound()
- Added: SoundStatus(), GetSoundFrequency()
- Added: #PB_All support for SoundVolume()
- Added: SetGadgetItemState() support for ExplorerListGadget()
- Added: InputRequester add close
- Added: InputRequester() added #PB_InputRequester_Password flag
- Added: Random() added optional minimum value
- Added: SetGadgetItemText() for ListIconGadget(): handling of chr(10) as in AddGadgetItem()
- Added: made OpenWindowedScreen() stretch parameters optional
- Added: ScreenWidth(), ScreenHeight(), ScreenDepth()
- Added: SMTP AUTH support to mail library
- Added: optional parameters to RemoveMailRecipient(), ability to remove all recipients
- Added: ReadString(#File [, Flags [, Length]]) : length and #PB_File_IgnoreEOL support
- Added: #PB_Window_InnerCoordinate support to WindowX/Y()
- Added: #PB_Window_FrameCoordinate support to WindowWidth()/Height()
- Added: #PB_Image_Raised support to ImageGadget()
- Added: Support for FreeXXX(#PB_All) for all free commands
- Added: #PB_Compiler_LineNumbering, #PB_Compiler_InlineAssembly, #PB_Compiler_EnableExplicit
- Added: #PB_Compiler_ExecutableFormat, #PB_Compiler_IsIncludeFile
- Added: #PB_Compiler_IsMainFile, #PB_Compiler_Filename
- Added: Bool() compiler operator. Boolean operations are now forbidden without Bool().
- Added: MacroExpandedCount internal keyword
- Added: UndefineMacro
- Added: Now XIncludeFile also take in account the main file, to avoid double inclusion
- Added: TypeOf() for variable, structure and fields
- Added: Defined(Label, #PB_Label) support
- Added: CompilerElseIf
- Added: Local labels
- Added: Define now behave like Global and accept Dim(), NewMap() and NewList() on the same line
- Added: 'Align' keyword support for structure, with a special #PB_Structure_AlignC value
- Added: autocast of numeric values when string are involved, allowing to concatenate string and numeric in constants
- Added: 'CONSTANTLIST' to Compiler interface
- Added: editing history recording in the IDE to recover previous code states and for crash recovery
- Added: AffectedDatabaseRows(), CheckDatabaseNull() to database library
- Added: new Text3D library
- Added: 'Mode' optional parameter to all ...Yaw/Roll/Pitch() functions
- Added: 'Type' and 'Mode' optional parameter to CreateMesh()
- Added: RayCast(), MouseRayCast(), NormalX(), NormalY(), NormalZ(), ScaleNode()
- Added: UpdateMesh(), EnableManualEntityBoneControl(), MoveEntityBone(), RotateEntityBone(), MeshIndex()
- Added: 'Type' optional parameter to AddSubMesh()
- Added: 'Type' parameter to FinishMesh()
- Added: GetMaterialColor(), GetMaterialAttribute(), ConvertLocalToWorldPosition(), ConvertWorldToLocalPosition()
- Added: MaterialCullingMode(), FetchOrientation(), SetOrientation(), GetX(), GetY(), GetZ(), GetW(), GetLightColor()
- Added: AttachEntityObject(): bone name can be empty, so the object is added directly to the entity

- Changed: renamed SoundFrequency() to SetSoundFrequency()
- Changed: renamed AddMeshVertex() to MeshVertexPosition()
- Changed: renamed LightColor() to SetLightColor()
- Changed: removed all MaterialXXXXColor() replaced by SetMaterialColor()
- Changed: removed all XXXXLocate() replaced by #PB_Absolute flag for MoveXXXX() commands
- Changed: removed ResizeEntity(), replaced by #PB_Absolute flag for ScaleEntity() command, same for ScaleNode()
- Changed: replaced #PB_Sort_ with #PB_ to avoid possible errors
- Changed: disallow native type for pointers
- Changed: StrF/D(), trailing zeros are now automatically removed if no decimals are specified

- Updated: OGRE core has been updated to 1.8.2
- Updated: SQLite updated to 3.7.15.2
- Updated: User-guide: new chapters about dynamic numbering and handling multiple windows added by spikey

- Removed: SendNetworkFile(), ReceiveNetworkFile(), #PB_NetworkEvent_File to avoid possible security hole
- Removed: DirectX7 and NT4 subsystem on Windows
- Removed: SDL subsystem on Linux
- Removed: PowerPC version for OS X

- Optimized: FindString() is up to twice as fast

- Fixed: Many bugs

  Copyright © 2017 Fantaisie Software support@purebasic.com  


By the same author, discover the new web client-side programming language
based on established BASIC rules on spiderbasic.com