PureBasic 5.40 LTS est disponible
De nombreuses nouveautés vous attendent.

Le , par comtois, Responsable Purebasic
PureBasic 5.40 LTS est disponible sur votre compte ou en version démo :
Télécharger

Il y a 3 nouveaux contributeurs dans l'équipe PureBasic :
- Vera, qui aide à la rédaction de la doc
- bbanelli, qui aide à l'import des fonctions GTK pour la version Linux
- wilbert, qui aide à l'import des fonctions Cocoa pour la version OS X

Pour avoir un aperçu, visitez le répertoire import à cette adresse.
http://svn.purebasic.fr:8080/websvn

Pour finir vous trouverez sûrement votre bonheur dans la longue liste des nouveautés :

16 Octobre 2015 : Version 5.40

- Ajouté: Nouvelle bibliothèque Vectorielle 2D
- Ajouté: Nouvelle bibliothèque CGI supportant le CGI standard et le FastCGI
- Ajouté: Echappement de chaînes de caractères en utilisant l'opérateur '~' (ex: a$ = ~"Salut\n le Monde\n")
- Ajouté: Fonctions EscapeString()/UnescapeString() permettant l'échappement sur n'importe quelle chaîne (variables etc.)
- Ajouté: EnumerationBinary pour créer une énumération binaire automatique
- Ajouté: La liaison des paramètres de base de données pour faciliter la construction de requêtes
- Ajouté: SetDatabaseBlob(), SetDatabaseFloat(), SetDatabaseDouble(), SetDatabaseLong()
- Ajouté: SetDatabaseQuad(), SetDatabaseString(), SetDatabaseNull()
- Ajouté: Support de SHA2 et SHA3 (224/256/384/512-bit) pour la bibliothèque Cipher
- Ajouté: StringFingerprint()
- Ajouté: Support de CRC32 support par StartFingerprint()
- Ajouté: ReceiveHTTPMemory(), IsJoint()
- Ajouté: RefreshDialog() recalcule les dimensions après un changement
- Ajouté: Attribut XML "group" dans 'option' de dialog gadget, pour spécifier explicitement un groupe
- Ajouté: HTTPS et simple auth pour ReceiveHTTPFile() et GetHTTPHeaders()
- Ajouté: Auto redirection pour ReceiveHTTPFile() et ReceiveHTTPMemory()
- Ajouté: Mode asynchrone pour ReceiveHTTPFile() et ReceiveHTTPMemory()
- Ajouté: HTTPProgress(), AbortHTTP() et FinishHTTP() pour contrôler le mode async
- Ajouté: HTTPS/TLS pour SendMail()
- Ajouté: FlushPreferenceBuffers()
- Ajouté: CopyDebugOutput() pour copier la sortie de debug vers le presse-papiers
- Ajouté: Création d'archive 7z
- Ajouté: Support des archive tar (gz et bzip2) pour leur création et leur décompression
- Ajouté: Chemin complet dans le menu fichiers récents de l'IDE
- Ajouté: #PB_ProgressBar_Unknown pour SetGadgetState() pour inndiquer une progression inconnue
- Ajouté: Support de #PB_UTF8/Ascii/Unicode pour ReadCharacter() et WriteCharacter()
- Ajouté: Support de #PB_UTF8 pour URLEncoder() et URLDecoder (mode par défaut maintenant)
- Ajouté: Windows 8.1/10 et OS X 10.9/10/11 pour OSVersion()
- Ajouté: Constantes #PB_Editor_xxx lors de l'utilisation de 'Version' sous Windows
- Ajouté: Support de #PB_Program_Ascii/Unicode/UTF8 pour RunProgram()
- Ajouté: Style linux/osx des options de la ligne de commande du compilateur sous Windows pour faciliter le portage multiplateforme
- Ajouté: Support de #PB_File_SharedWrite pour ReadFile() et CreateFile()
- Ajouté: 'IMPORTLIST' dans l'interface du compilateur pour renvoyer toutes les fonctions prédéfinies de l'API
- Ajouté: Constante #Null$, chaîne de caractères spécialepour affecterune vraie valeur Null à une chaîne (pour la libérer complètement). Peut être utilisée aussi pour les fonction de l'API qui acceptent parfois NULL à la place d'une adresse de chaîne.
- Ajouté: Constante #Empty$
- Ajouté: #PB_ByteLength avec MemoryStringLength()
- Ajouté: #PB_Ascii, #PB_UTF8 et #PB_Unicode avec Create/Open/ReadFile() pour mettre un mode write/read par défaut
- Ajouté: #PB_ByteLength avec PeekS() et #PB_UTF8 (seulement)
- Ajouté: CreateCone(), CameraCustomParameter(), ResizeCamera()
- Ajouté: #PB_Entity_DisableContactResponse et #PB_Entity_EnableContactResponse pour SetEntityAttribute()
- Ajouté: #PB_Entity_ConeBody, #PB_Entity_PlaneBody
- Ajouté: FreeEntityBody(), FreeTerrainBody()
- Ajouté: ApplyEntityTorque(), ApplyEntityTorqueImpulse()
- Ajouté: Paramètres 'CollisionGroup' et 'CollisionMask' pour RayCollide()
- Ajouté: Page d'aide intitulée 'Migration xxxx', pour connaître les différences entre deux versions de PureBasic et aider à la migration entre ces deux versions.
- Ajouté: User guide en allemand (merci à Andre et Vera)

- Mise à jour: Linux, la lib d'impréssion utiilise GtkPrint au lieu de GnomePrint
- Mise à jour: Windows, compilateur VC++ 2013 pour une meilleure génération du code
- Mise à jour: SQLite version 3.8.10.2

- Corrigé: Support des archives Zip
- Corrigé: Envoi de mail et requête http
- Corrigé: 'CONSTANTLIST' dans l'interface du compilateur , les constantes string renvoyées sont échappées.

- Modifié: La version par défaut de GTK est maintenant GTK3 sur Linux. Un sous système gtk2 a été ajouté pour une rétro compatibilité.
- Modifié: Le format de strings par défaut pour RunProgram(), read/writestring est Unicode
- Modifié: La lib Cipher est rendue modulaire (maintenant UseMD5Fingerprint() et autres)
- Modifié: ExamineFingerprint() en StartFingerprint()
- Modifié: NextFingerprint() en AddFingerprintBuffer()
- Modifié: EntityPhysicBody() en CreateEntityBody()
- Modifié: TerrainPhysicBody() en CreateTerrainBody()
- Modifié: Le paramètre 'Asynchronous' de SendMail()remplacé par #PB_Mail_Asynchronous.
- Modifié: Le DLLImporter supprimé et les fichiers .pbl aussi. Nouveaux fichiers 'import library' créés en utilisant l'option '/IMPORT' de pbcompiler.

- Supprimé: RemovePackFile()
- Supprimé: #PB_Packer_CompressedSize pour les archives ZIP et 7z dans PackerEntrySize()
- Supprimé: AvailableScreenMemory()

Hi all,

The new version of PureBasic is finally out ! Thank you all for your testing, and I would like to welcome 3 new contributors which helped a lot for this release:

- Vera, who helps on the doc
- bbanelli, who helps on the GTK imports in the Linux version of PureBasic
- wilbert, who helps on Cocoa imports in the OS X version of PureBasic

This is a LTS version (Long Term Support), which will be supported for bug fixes for 2 years, until october 2017. The previous LTS (5.24) is now deprecated and won't receive any new fixes.

It's quite a lot of stuff, and we really pleased to improve PureBasic further ! You can get it right now on your online account

Have fun,

The Fantaisie Software Team


Quelques infos grappillées durant la phase de test bêta


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de comtois comtois - Responsable Purebasic https://www.developpez.com
le 16/10/2015 à 16:46
En attendant que l'aide en ligne soit mise à jour (elle est à jour dans l'archive à télécharger)
http://www.purebasic.com/documentation/index.html

Voici un aperçu des commandes disponibles pour la bibliothèque vectorielle :
  • AddPathArc
  • AddPathBox
  • AddPathCircle
  • AddPathCurve
  • AddPathEllipse
  • AddPathLine
  • AddPathText
  • BeginVectorLayer
  • ClipPath
  • ClosePath
  • ConvertCoordinateX
  • ConvertCoordinateY
  • CustomDashPath
  • DashPath
  • DotPath
  • DrawVectorImage
  • DrawVectorParagraph
  • DrawVectorText
  • EndVectorLayer
  • FillPath
  • FillVectorOutput
  • FlipCoordinatesX
  • FlipCoordinatesY
  • IsInsidePath
  • IsInsideStroke
  • IsPathEmpty
  • MovePathCursor
  • NewVectorPage
  • PathCursorX
  • PathCursorY
  • PdfVectorOutput
  • ResetCoordinates
  • ResetPath
  • RestoreVectorState
  • RotateCoordinates
  • SaveVectorState
  • ScaleCoordinates
  • SkewCoordinates
  • StartVectorDrawing
  • StopVectorDrawing
  • StrokePath
  • SvgVectorOutput
  • TranslateCoordinates
  • VectorFont
  • VectorOutputHeight
  • VectorOutputWidth
  • VectorParagraphHeight
  • VectorResolutionX
  • VectorResolutionY
  • VectorSourceCircularGradient
  • VectorSourceColor
  • VectorSourceGradientColor
  • VectorSourceImage
  • VectorSourceLinearGradient
  • VectorTextHeight
  • VectorTextWidth
  • VectorUnit


et un aperçu des commandes de la bibliothèque CGI :
  • CGIBuffer
  • CGICookieName
  • CGICookieValue
  • CGIParameterData
  • CGIParameterDataSize
  • CGIParameterName
  • CGIParameterType
  • CGIParameterValue
  • CGIVariable
  • CountCGICookies
  • CountCGIParameters
  • FinishFastCGIRequest
  • InitCGI
  • InitFastCGI
  • ReadCGI
  • WaitFastCGIRequest
  • WriteCGIData
  • WriteCGIFile
  • WriteCGIHeader
  • WriteCGIString
  • WriteCGIStringN
Avatar de comtois comtois - Responsable Purebasic https://www.developpez.com
le 16/10/2015 à 21:20
Citation Envoyé par Fred
For those having issue with Windows x64 version, just redownload it from your user account, it should be solved.


La version windows x64 plantait, la correction est faite, vous pouvez télécharger à nouveau l'archive.
Avatar de comtois comtois - Responsable Purebasic https://www.developpez.com
le 18/10/2015 à 23:13
Apparemment Fred a fait une mise à jour de dernière minute de la lib SQLite, dans l'historique il indique Mise à jour: SQLite version 3.8.10.2

Mais si j'en crois ce code, il a mis la version 3.8.11.1 :
Code : Sélectionner tout
1
2
3
4
5
6
7
ImportC "sqlite3.lib"  
  sqlite3_libversion()  
  sqlite3_version.s{20} 
EndImport  
 
Debug PeekS(sqlite3_libversion(), #PB_Any, #PB_Ascii)  
Debug sqlite3_version
Avatar de comtois comtois - Responsable Purebasic https://www.developpez.com
le 20/10/2015 à 21:49
La doc française est en ligne :
http://www.purebasic.com/french/documentation

Avec un aperçu sur la nouvelle bibliothèque vectorielle :
Bibliothèque vectorielle

Avatar de comtois comtois - Responsable Purebasic https://www.developpez.com
le 16/11/2015 à 20:47
La commande CompilerWarning n'était pas documentée :
Code : Sélectionner tout
CompilerWarning "Hi there"
Timo, le co-développeur de PureBasic indique à son sujet :
Please note that what was implemented here is a compiler warning. This means the warning is triggered at compile-time and you have to use things like CompilerIf if you want to show it conditionally.
What ts-soft posted is code to trigger a debugger warning. This warning is issued by the debugger at run-time, and it will only show if the statement is actually executed (so you can show it conditionally using a regular if). There seems to be some confusion between the two at times.


Je ne traduis pas, votre anglais est bien meilleur que le mien.

Et il en profite pour annoncer quelques nouveautés de la version à venir 4.50 :
For completeness, i just added two functions DebuggerError(Message$) and DebuggerWarning(Message$) to trigger debugger errors (in essence what ts-soft showed as an official function). This will be in v5.50.

Et voici le code de ts-soft
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
CompilerIf #PB_Compiler_Debugger 
  CompilerSelect #PB_Compiler_OS 
    CompilerCase #PB_OS_Windows 
      Import "" 
         PB_DEBUGGER_SendWarning(Message.p-ascii) 
       EndImport 
    CompilerDefault 
      ImportC "" 
         PB_DEBUGGER_SendWarning(Message.p-ascii) 
       EndImport 
   CompilerEndSelect 
CompilerEndIf 
 
Macro CompilerWarning(error) 
  CompilerIf #PB_Compiler_Debugger 
    PB_DEBUGGER_SendWarning(error) 
  CompilerEndIf 
EndMacro 
 
CompilerWarning("A warning should appear in the IDE.")
Offres d'emploi IT
Ingénieur moa logiciel H/F
Safran - Ile de France - Villaroche
Responsable de lot vérification et qualification (IVVQ) H/F
Safran - Alsace - MASSY Hussenot
Ingénieur développement électronique H/F
Safran - Ile de France - 100 rue de Paris 91300 MASSY

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique PureBasic : comtois -