Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Rédacteur/Modérateur

    Alerte Info : Delphi 10.4 Sidney, deuxième patch dispo
    Bonjour,

    Oui, bon, le Alerte Info, c'est à la mode (pour tout et n'importe quoi) sur les chaines d'informations en continue alors pourquoi je ne l'utiliserai pas ?
    Cela écrit c'est tellement ponctuel que ce ne vaut pas le coup d'une vraie info

    Ce matin, un nouveau patch est disponible pour Delphi 10.4


    Après installation vous découvrirez la liste des bogues corrigés
    RAD Studio 10.4 Patch #2 addresses the following customer reported issues:

    RSP-29628 VCL Grids bug
    RSP-29560 [REGRESSION] Misalignment in TStringGrid, StretchDraw method in OnDrawCell
    RSP-29412 Compiler generates incorrect code for if-then
    RSP-29402 Delphi 10.4 TStringGrid.OnDrawCell bug
    RSP-29374 Wrong rect coords in TStringGridDrawCell, so image are drawn at wrong position
    RSP-29347 [DelphiLSP] IDE Crashes when view form as text is selected and running LSP server
    RSP-29310 Internal error L891 when linking because of complex types based on records with class var
    RSP-29299 CODEGEN bug in managed fields initialization, associated with new management operators.
    RSP-29271 [DelphiLSP] Code Insight adds unneeded () when changing procedures/functions
    RSP-29256 Compiler generates wrong code for template function
    RSP-29227 Incorrect property value obtained from the record
    RSP-29226 Access violation with working code under 10.2
    RSP-29218 compiling static library under Android error E4620 processing resource .fmx -2 raised
    RSP-29172 Access Violation when opening License Manager
    RSP-29142 GoTo statements not working
    RSP-29136 Dialog constantly pops up during debugging
    RSP-29129 iOS App simply crashes with a TWebBrowser on it.
    RSP-29127 Compiler internal error if you ignore the result of a function that returns a generic record
    RSP-29124 ICE E1812
    RSP-28989 License Manager has access violation error when i click on Workstation Licenses
    RSP-28887 Space does not finish code completion
    RSP-28857 Default(T) generates bad code for managed record
    RSP-28821 [Regression] TStringGrid.OnDrawCell parameter Rect contains wrong values
    RSP-28808 Project options dialog page "Delphi Compiler" is not populated when opening the dialog
    RSP-28796 RVO for M-records: initialisation of local variables
    RSP-28761 [REGRESSION] E2154 Type 'T' needs finalization - not allowed in variant record
    RSP-28737 Compiler error when inlining new Bit Counting Standard Functions
    RSP-28735 Managed Records Causing Internal Compiler Error
    RSP-28717 Delphi Package fails to compile
    RSP-28701 Bind visually on TDBGRID kills the IDE
    RSP-28669 [BadCG] Value M-record parameters: improper AddRefRecord
    RSP-28659 RVO for M-records: assignment to local variables
    RSP-28616 [BadCG] Operator Assign should not allow non-default calling conventions
    RSP-28615 [BadCG] In the absence of Initialize, finalisation is not guaranteed for local variables
    RSP-28552 Poor code generation for local managed record variables
    RSP-28499 Options - Translation tools - Font - Corrupted?
    RSP-28476 LSP ErrorInsight in Structure Pane only shows one keystroke after editor
    RSP-28400 [BadCG] Operator Assign is not always invoked for fields
    RSP-28372 [Regression] Bad codegen in function returning generic type
    RSP-27268 C++ Builder 10.3.3 Android Exceptions
    RSP-27251 Internal error when trying to inline with optimization on
    RSP-24079 Package version is broken
    RSP-23403 Build for linux 64 error
    RSP-23024 Record helper class constructor gives senseless compiler warning
    RSP-22318 Pointer type check missed when object field is a dynarray
    RSP-21554 Compiler generates incorrect code for parameterized record type
    RSP-21248 Const dynamic array unexpectedly contains uninitialized data
    RSP-20372 A generic "reference to function" will only match the first of several overloaded functions
    RSP-19714 Win32 compiler - Memory corruption with array helpers
    RSP-18241 *.c source files, added to C++ project, got added to DeploymentManager file list
    RSP-18148 AV in TList<T>.Remove (64-bit compiler only)
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  2. #2
    Membre expérimenté
    Merci Serge

    Petits ajouts :
    - le patch 1 doit être installé avant de mettre le patch 2. Ce n'est pas un cumulatif.
    - pour le patch 2 GetIt ne fait que le téléchargement. On doit lancer son installation à la main depuis le dossier affiché après avoir fermé l'IDE.
    N'oubliez pas cette étape, ça évitera que vous ne voyez aucune différence avant/après... comme certains s'en plaignent sur d'autres forums.

  3. #3
    Rédacteur/Modérateur

    Citation Envoyé par pprem Voir le message

    - le patch 1 doit être installé avant de mettre le patch 2. Ce n'est pas un cumulatif.
    ça je m'en doutais donc n'y ait pas vraiment fait attention

    - pour le patch 2 GetIt ne fait que le téléchargement. On doit lancer son installation à la main depuis le dossier affiché après avoir fermé l'IDE.
    Là je me suis fait avoir ! Comme je reste encore Rio pour ce qui est prod, je n'ai pas vérifié Sidney après "installation" du patch, l'indication [installé] de getit est donc trompeuse, pas glop
    Mais pourquoi cela ne s'est-il pas installé comme pour le premier ! Là c'est quand même dommage je m'attendais à la même chose que pour le patch 1.
    Du coup, il faut que je retrouve où s'est mis ce répertoire !
    et ben oui c'était indiqué

    Installation Steps (via GetIt)
    -Use GetIt to download the patch
    -The patch executable is copied along with a ZIP file in a folder like: C:\Users\<name>\Documents\Embarcadero\Studio\21.0\CatalogRepository\10.4Patch2-10xx\R104_Patch2
    -Close the RAD Studio 10.4 IDE (and also any other earlier versions of RAD Studio IDE)
    -From the folder, run the batch file patch2.bat

    -The installation will require elevation and proceed adding a detailed log file to the catalog repository folder
    -When completed, restart the IDE
    Mais que cela ne devienne pas une habitude, on nous a promis monts et merveilles avec ce Getit et les patchs, que cela se passe comme promis serait nettement moins criticable.

    Du coup, j'ai voulu vérifié si le patch était installé (getit me dit oui bien sûr) mais si IDE Patches dit aussi "Your version is up to date"
    Rien dans la fenêtre A propos (dommage)
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  4. #4
    Membre expérimenté
    Oui, ils ont encore du boulot pour intégrer les patchs complètement. Sur celui-ci la raison invoquée il y a eu débat et pas de raison convaincante mais Marco nous a confirmé qu'ils n'avaient pas pu faire autrement.

    L'indication "installé" de GetIt correspond au process géré via GetIt, donc en fait juste le téléchargement et le script post download qui affiche le readme et la fenêtre de l'explorateur sur le dossier dans lequel exécuter manuellement l'installeur. C'est cohérent, même si c'est bizarre.

  5. #5
    Rédacteur/Modérateur

    Je suis pour le moins déçu du peu de bug corrigés

    Plus ça va, plus j'ai l'impression que cet EDI devient une usine à gaz difficile (voire impossible) à maintenir.
    Même le code semble être de plus en plus fait à la va-vite.

  6. #6
    Membre averti
    bah moi ça marche pas du tout, j'ai le message: Impossible de charger les données depuis le serveur: le fichier de métadonnées "RADStudio.json" n'existe pas.

    Je trouve que la qualité des développements se dégrade, j'ai aussi remonté pas mal de bug depuis quelque temps.
    Que se passe-t-il chez Embarcadero ?


  7. #7
    Membre du Club
    Citation Envoyé par Andnotor Voir le message
    Je suis pour le moins déçu du peu de bug corrigés
    Les bugs corrigés par les patch sont les "nouveaux bugs" introduits par la version. Ils en ont corrigé plus depuis la 10.3

    Citation Envoyé par Andnotor Voir le message
    Plus ça va, plus j'ai l'impression que cet EDI devient une usine à gaz difficile (voire impossible) à maintenir.
    Même le code semble être de plus en plus fait à la va-vite.
    j'ai un peu la même impression, mais je crois que cela est dû au fait qu'ils disposent de plus de moyens en se lancent dans des réécritures tout azimut de code qui fonctionnait très bien. Et l'impression de "à la va-vite" viens du fait que cette réécriture se fait probablement par de jeunes ingénieurs en inde ou en chine qui ne voient que l'aspect de ce qu'ils réécrivent mais ne comprennent pas réellement les fonctionnalités (Ca fait un peu peur concernant la compatibilité ascendante qui était un des points forts du produit).

    il n'y a qu'à voir la nature des bugs corrigés, beaucoup de REGRESSIONS, florilège des plus surprenantes :
    RSP-29628 VCL Grids bug
    RSP-29560 [REGRESSION] Misalignment in TStringGrid, StretchDraw method in OnDrawCell
    RSP-29412 Compiler generates incorrect code for if-then
    RSP-29402 Delphi 10.4 TStringGrid.OnDrawCell bug
    RSP-29374 Wrong rect coords in TStringGridDrawCell, so image are drawn at wrong position
    RSP-29256 Compiler generates wrong code for template function
    RSP-29227 Incorrect property value obtained from the record
    RSP-29226 Access violation with working code under 10.2
    RSP-29142 GoTo statements not working
    RSP-29136 Dialog constantly pops up during debugging
    RSP-28821 [Regression] TStringGrid.OnDrawCell parameter Rect contains wrong values
    RSP-28808 Project options dialog page "Delphi Compiler" is not populated when opening the dialog
    RSP-28761 [REGRESSION] E2154 Type 'T' needs finalization - not allowed in variant record
    RSP-28701 Bind visually on TDBGRID kills the IDE
    On peux comprendre les bugs sur les nouvelles fonctionnalités, mais des régressions sur des composants dont aucune fonctionnalité n'a changé, pourquoi ?

  8. #8
    Membre du Club
    Citation Envoyé par franckcl Voir le message
    bah moi ça marche pas du tout, j'ai le message: Impossible de charger les données depuis le serveur: le fichier de métadonnées "RADStudio.json" n'existe pas.

    Je trouve que la qualité des développements se dégrade, j'ai aussi remonté pas mal de bug depuis quelque temps.
    Que se passe-t-il chez Embarcadero ?

    >ça marche pas du tout
    Si tu as utilisé l'installeur offline alors getit ne se configure pas pour internet (ce qui est absurde je te l'accorde)
    il faut taper "GetItCmd.exe -c=useonline" en ligne de commande pour l'activer.

    >Que se passe-t-il chez Embarcadero ?
    c'est le nouveau modèle de licence qui les oblige a produire en continu pour justifier les abonnements.
    Avant il y avait grosso-modo les versions paires qui étaient instables avec des nouveautés en Delphi et rien en C++, puis les versions impaires stables en Delphi avec peu de nouveautés mais un rattrapage pour C++.
    Maintenant il n'y a plus de versions stables, mais des nouveautés tout le temps.

  9. #9
    Membre averti
    Citation Envoyé par wchris Voir le message

    il faut taper "GetItCmd.exe -c=useonline" en ligne de commande pour l'activer.
    Je confirme...ça marche mieux en faisant ça !
    Ils auraient pu prévoir le cas et afficher au moins un message indiquant quoi faire !

    merci !
    Franck

  10. #10
    Rédacteur/Modérateur

    Bonjour
    Citation Envoyé par franckcl Voir le message

    Ils auraient pu prévoir le cas et afficher au moins un message indiquant quoi faire !
    Cet histoire de Getit non fonctionnel, à cause de l'installation offline a fait déjà beaucoup parler.
    https://www.developpez.net/forums/d2...-installation/
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  11. #11
    Membre habitué
    Il est dommage qu'ils n'aient pas encore corrigé le Bug
    concernant l'IDE lorsque que l'on choisi Classique Flottante
    il y à perte d'une partie de la barre des menus

  12. #12
    Expert éminent sénior
    Citation Envoyé par wchris Voir le message
    Les bugs corrigés par les patch sont les "nouveaux bugs" introduits par la version. Ils en ont corrigé plus depuis la 10.3
    ce n'est pas vrai, par contre les bugs introduits par la 10.4 avaient besoin d'être corrigés rapidement est ont été prioritaires sur ce coup là

    Citation Envoyé par wchris Voir le message

    j'ai un peu la même impression, mais je crois que cela est dû au fait qu'ils disposent de plus de moyens en se lancent dans des réécritures tout azimut de code qui fonctionnait très bien.
    les problèmes de complétion de code existaient depuis un bon moment, le passage à LSP est un gros morceau, qui a introduit de nouveaux bugs comme chaque modification majeure, mais à terme ça devrait être un gros plus sur une fonctionnalité qu'on utilise en permanence.

    Citation Envoyé par wchris Voir le message

    Et l'impression de "à la va-vite" viens du fait que cette réécriture se fait probablement par de jeunes ingénieurs en inde ou en chine qui ne voient que l'aspect de ce qu'ils réécrivent mais ne comprennent pas réellement les fonctionnalités (Ca fait un peu peur concernant la compatibilité ascendante qui était un des points forts du produit).
    le code n'est pas écrit à la va-vite par des développeurs sous-payés et incompétents...par contre, il y a eu des changements dans l'organisation et des effets de bords. Mais il y a toujours des gens très compétents et très impliqués qui mènent la barque.

    Citation Envoyé par wchris Voir le message


    il n'y a qu'à voir la nature des bugs corrigés, beaucoup de REGRESSIONS, florilège des plus surprenantes :

    On peux comprendre les bugs sur les nouvelles fonctionnalités, mais des régressions sur des composants dont aucune fonctionnalité n'a changé, pourquoi ?
    alors il ne faut pas oublier qu'il y a maintenant la gestion des records managés, ça implique des changements au niveau du compilateur qui affectent potentiellement tout le code

    ensuite,prenons le premier de la liste sur TStringGrid et regarde ici le nombre de bugs ou Grid est concerné, donc oui il y a régression, mais parce que le code a pas mal bougé, et c'est corrigé plutôt rapidement non ? En priorité comme je le disais plus haut.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  13. #13
    Rédacteur/Modérateur

    Citation Envoyé par Paul TOTH Voir le message
    ce n'est pas vrai, par contre les bugs introduits par la 10.4 avaient besoin d'être corrigés rapidement est ont été prioritaires sur ce coup là
    Et donc ils n'auront jamais le temps de corriger les anciens vu le rythme des sorties ?

    Code Insight qui marche quand il veut et comme il peut, Ctrl+clique qui t'envoie dans la mauvaise unité, les nouveaux records managés qui bloquent le code completion, de simples déclarations d'enregistrement (sans type) qui bloque la navigation, les dead-lock rien qu'en voulant fermer une unité ou interrompre une recherche, les "déconnexions" régulières en debug...

    Il y a beaucoup de problèmes et bien peu ont été corrigés.

    Citation Envoyé par Paul TOTH Voir le message
    le code n'est pas écrit à la va-vite
    Les tests ne sont clairement pas suffisants. Comment un tout nouveau composant comme le TitleBarPanel peut ne pas être DPI aware à son lancement ?
    J'ai regardé aussi GDPI+ (GDIPOBJ). Toutes les fonctions "From" devraient être des méthodes de classe, elles sont définies en méthode d'objet ! Non, c'est clairement du vite fait !

  14. #14
    Expert éminent sénior
    Citation Envoyé par Andnotor Voir le message
    Et donc ils n'auront jamais le temps de corriger les anciens vu le rythme des sorties ?

    Code Insight qui marche quand il veut et comme il peut, Ctrl+clique qui t'envoie dans la mauvaise unité, les nouveaux records managés qui bloquent le code completion, de simples déclarations d'enregistrement (sans type) qui bloque la navigation, les dead-lock rien qu'en voulant fermer une unité ou interrompre une recherche, les "déconnexions" régulières en debug...

    Il y a beaucoup de problèmes et bien peu ont été corrigés.
    tout cela implique LSP, nouvelle fonctionnalité avec des imperfections à corriger

    Citation Envoyé par Andnotor Voir le message
    Les tests ne sont clairement pas suffisants. Comment un tout nouveau composant comme le TitleBarPanel peut ne pas être DPI aware à son lancement ?
    alors je ne sais pas qui a pondu TitleBarPanel, mais , entre nous, je trouve cela super mal fichu

    Citation Envoyé par Andnotor Voir le message

    J'ai regardé aussi GDPI+ (GDIPOBJ). Toutes les fonctions "From" devraient être des méthodes de classe, elles sont définies en méthode d'objet ! Non, c'est clairement du vite fait !
    GDIPOBJ est un code de Henri Gourvest qui n'est pas tout à fait un débutant...mais en effet il aurait du en faire des méthodes de classes, voir des constructors....mais à mon sens, ces fonctions ne servent à rien car elles appellent des constructors
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  15. #15
    Rédacteur/Modérateur

    Citation Envoyé par Paul TOTH Voir le message
    tout cela implique LSP, nouvelle fonctionnalité avec des imperfections à corriger
    Des imperfections très pénalisantes qui démontrent que LSP n'était pas encore mûr.

    Citation Envoyé par Paul TOTH Voir le message
    il aurait du en faire des méthodes de classes, voir des constructors....mais à mon sens, ces fonctions ne servent à rien car elles appellent des constructors
    Elles font partie intégrante de GDI+ au contraire de Create qui n'existe pas. Mais puisqu'on ne peut pas réduire la visibilité de TObject.Create, la redondance est presque obligatoire (ou tout du moins logique) pour rester cohérent.

    Erik Van Bilsen (l'unité que j'utilise et vais continuer à utiliser) a été plus subtile puisque ces fonctions From retournent des interfaces.

  16. #16
    Expert éminent sénior
    Citation Envoyé par Andnotor Voir le message
    Des imperfections très pénalisantes qui démontrent que LSP n'était pas encore mûr.
    il faut juste espérer que les bugs ne traîneront pas pdt des années...

    Citation Envoyé par Andnotor Voir le message
    Elles font partie intégrante de GDI+ au contraire de Create qui n'existe pas. Mais puisqu'on ne peut pas réduire la visibilité de TObject.Create, la redondance est presque obligatoire (ou tout du moins logique) pour rester cohérent.

    Erik Van Bilsen (l'unité que j'utilise et vais continuer à utiliser) a été plus subtile puisque ces fonctions From retournent des interfaces.
    oui et non, GDI+ est au départ une API C++ inexploitable sous Delphi, c'est donc le wrapper C qui est utilisé, et dans ce wrapper, il n'y a pas de notion d'objet par définition..

    l'usage d'Interfaces c'est surtout pour gérer la durée de vie des objets, mais tu peux très bien utiliser des Record et maintenant même des record managés pour libérer les ressources automatiquement

    bref, je n'ai vu aucune entrée dans Quality sur la déclaration des méthodes "From" il n'y a donc aucune chance que cela change un jour...d'autant que ce n'est pas bloquant.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  17. #17
    Membre émérite
    Bonsoir,

    Le 3ème patch est disponible pour Sydney
    Il est récupérable via GetIt ou sur le site d'Embarcadero. Une fois téléchargé, fermez l'IDE et lancez le fichier patch3.bat (présent par exemple sous C:\Users\<name>\Documents\Embarcadero\Studio\21.0\CatalogRepository\10.4Patch3-10\R104_Patch3).
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  18. #18
    Membre expérimenté
    Et un troisième patch dispo pour les utilisateurs C++Builder (mais il corrige aussi une anomalie sur la TGrid de la VCL).

  19. #19
    Candidat au Club
    10.4 une cata
    apres un essai de la version 10.4 je retourne a la version 10.3.3.
    j'en ai marre des regressions et bugs visiblement cette version n'a pas était tester correctement.
    getit, aide, ide c'est du bricolage non tester
    j'espere que les problemes sont dus a la pandemie.
    et comme je l'avait deja ecrit il y a plusieurs mois j'attendrai la version 10.5

  20. #20
    Membre expérimenté
    Citation Envoyé par marc.maizier Voir le message
    apres un essai de la version 10.4 je retourne a la version 10.3.3.
    j'en ai marre des regressions et bugs visiblement cette version n'a pas était tester correctement.
    getit, aide, ide c'est du bricolage non tester
    j'espere que les problemes sont dus a la pandemie.
    et comme je l'avait deja ecrit il y a plusieurs mois j'attendrai la version 10.5
    Bonsoir

    10.4 ou 10.4.1 dispo depuis début septembre ?

    Pour les anomalies repérées, ont-elles déjà été recensées sur quality.embarcadero.com ou ça n'est pas le cas ? Car si personne d'autre ne tombe dessus, ça ne peut pas être repéré et encore moins réglé.

###raw>template_hook.ano_emploi###