-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for doctrine/orm 3.0 #43
Comments
I am currently forking and updating libraries ( |
Hello. When can we expect support for "doctrine/orm 3.1"? Thank you |
I don't know. I am a volunteer, doing this in my spare time, and I haven't yet studied the impact between doctrine:orm 2.0 and |
longitude/geo-parser is done.
|
I can now focus on Todo :
|
thanks for your time |
Thanks for your time. If you have a Ko-fi or similar I'd love to make a donation, it's a helpful package. |
Thank you very much @danielgwood : ko-fi.com/alexandret
All CrEOF libraries have been replaced (thanks for their initial work) by the longitude-one ones. Todo :
|
I'm about to create a pull request on the Good News!
Target Release Date:Based on my progress, I'm confident I can publish the 5.0.0 release candidate version by May 14th. |
## Doctrine 3 Feature * Compatibility with doctrine/orm:2.19 * Compatibility with doctrine/orm:3.1 * Compatibility tested (and currently working) with doctrine/orm:3.2.x-dev * Compatibility tested (and currently working) with doctrine/orm:4.0.x-dev * Fixing #40 * Fixing #42 * Fixing #43 * Fixing #55 ## List of commits * Composer upgrade feature (#47) * PHP-Code-sniffer upgraded * Composer upgraded (internal) * Github Actions upgraded * Using last stable version of geo-parser and wkt-parser * Using last stable version of longitude-one/wkb-parser instead of creof/wkb-parser * Upgrading to Phpunit 10 to be able to stop tests on deprecation * Fixing deprecations from geo-parser * Fixing hosts and ports * Restoring code coverage * Add pcov for code coverage * Fixing a bug * TODO check the code coverage * pcov added in PHP * Fixing directory for code coverage * Fixing directory for code coverage * PHP-CS-FIXER * Quality code steps * Deprecated method getName() removed Issue #40 fixed * Some deprecated calls removed, Deprecated File SQL Logger replaced, Unused methods removed * Ormtest split feature (#52) * Some deprecated calls removed, Deprecated File SQL Logger replaced, Unused methods removed * Logger class declared outside of OrmTestCase.php * Truncate tables before each test * Removing method * Quality code improved * Typo * Decrease OrmTestCase class complexity * Phpunit files updated * Removing 'else' expressions * Improving quality code * Test were not executed * Message fixed * Typo fixed * Class-string called without a string * MySql replaced with MySQL * All internal exceptions implements ExceptionInterface. * Fixing comment * Issue #42 fixed (#53) * test to reproduce issue added * Fixing test * Issue #42 fixed * Issue 12 (#54) * Removing travis directories and files * Creating a new composer script to create code coverage in cov format * Merging *.cov into a clover.xml file * Fixing coveralls.io * Fixing issues with doctrine/orm:3.0 * Adding "with all dependencies" option * Adding test with doctrine/orm:4.1.x-dev * Headers updated * README.md updated
Good job, thank you that we encourage us to migrate to doctrine 3 ;-) |
Thank you very much !! |
Cheers 🍻 |
Thanks for your messages! Don't hesitate to give me feedback on the migration process for your applications. My demo application migrated without errors, but I only use a limited portion of the library and just the PostgreSQL engine. |
Thanks for your work on this. I have found:
$point['value'][1] should be float but is now a string "-39.1" |
The migration is available on this branch dev-doctrine3-feature |
Was available, seems to be on dev branch now. |
Thank you, for your feedbacks @captain-igloo !
I created the issue #57 about AbstractPoint. My bad! :-) I will fix it tomorrow.
About the wkt-parser, Yes, it returns no longer float, but string. Because the doctrine/lexer only accepts string as input, I had to update the CrEOF code. And I got a lot of conversion issues when I convert it internally. Latitudes like 42.66 could become 42.67 or 42.65!!!! So, I readproof lexer and postgis manuals and the advices was to avoid float and used decimal or strings. Why this decision... Because neither the geo-parser nor doctrine-spatial manipulates numbers. Doctrine-spatial sends these values to PostGIS or MySQL, and it is the DBMS that does the calculations and the ORM retrieves strings. IMHO, my floating-point conversions were only creating unnecessary conversion problems.
Yes, version 5.0.0 is still compatible with doctrine/orm:^2.19. The composer.json file allows it, and unlike AbstractPoint, this is not an oversight on my part. To my surprise, my tests revealed that the code worked with both versions almost flawlessly. I applied one or two changes and the code is compatible with all versions, from 2.19 to 4.0! To ensure that this does not change over time, I have added a matrix to change the orm in the actions. I believe that a team that wants to stay on version orm:2.19 can use version 4doctrine-spatial:4 . A team that plans to upgrade can go to 5. This allows the team not to change everything at once. |
If no issues are reported, |
* Interfaces created to prepare 3.1.0 and 4.0.0 * Interfaces created to prepare 3.1.0 and 4.0.0 * Security issue in doctrine 2.8.3 * Headers updated * Removing no-more existent rule * Doctrine3 feature (#55) ## Doctrine 3 Feature * Compatibility with doctrine/orm:2.19 * Compatibility with doctrine/orm:3.1 * Compatibility tested (and currently working) with doctrine/orm:3.2.x-dev * Compatibility tested (and currently working) with doctrine/orm:4.0.x-dev * Fixing #40 * Fixing #42 * Fixing #43 * Fixing #55 ## List of commits * Composer upgrade feature (#47) * PHP-Code-sniffer upgraded * Composer upgraded (internal) * Github Actions upgraded * Using last stable version of geo-parser and wkt-parser * Using last stable version of longitude-one/wkb-parser instead of creof/wkb-parser * Upgrading to Phpunit 10 to be able to stop tests on deprecation * Fixing deprecations from geo-parser * Fixing hosts and ports * Restoring code coverage * Add pcov for code coverage * Fixing a bug * TODO check the code coverage * pcov added in PHP * Fixing directory for code coverage * Fixing directory for code coverage * PHP-CS-FIXER * Quality code steps * Deprecated method getName() removed Issue #40 fixed * Some deprecated calls removed, Deprecated File SQL Logger replaced, Unused methods removed * Ormtest split feature (#52) * Some deprecated calls removed, Deprecated File SQL Logger replaced, Unused methods removed * Logger class declared outside of OrmTestCase.php * Truncate tables before each test * Removing method * Quality code improved * Typo * Decrease OrmTestCase class complexity * Phpunit files updated * Removing 'else' expressions * Improving quality code * Test were not executed * Message fixed * Typo fixed * Class-string called without a string * MySql replaced with MySQL * All internal exceptions implements ExceptionInterface. * Fixing comment * Issue #42 fixed (#53) * test to reproduce issue added * Fixing test * Issue #42 fixed * Issue 12 (#54) * Removing travis directories and files * Creating a new composer script to create code coverage in cov format * Merging *.cov into a clover.xml file * Fixing coveralls.io * Fixing issues with doctrine/orm:3.0 * Adding "with all dependencies" option * Adding test with doctrine/orm:4.1.x-dev * Headers updated * README.md updated * Removing unused file * Code coverage improved * Issue #57 fixed (#59) * Fix comments in #43 * Fix #57 * "declare(strict_types=1)" added. * Fix CI * Fixing comment headers * Quality tools feature (#61) * Longitude-One quality tools added * Headers updated * PHP-Cs-Fixer Rules updated * Code sniffer rules updated * Ecologic feature (#63) * Ecologic feature. To avoid useless tests, the full tests are only launched when tests and quality tools are completed on stable version. * Specify return types (#56) * Return types of test methods specified * Quality-tools after merge * PHP Stan level 0 * Restore compatibility with ORM ^2.19 * Architecture updated * PHP-Stan level 2 * PHP-Stan level 3 * PHP-Stan level 4 * Fixing UnsupportedPlatform test * PHP-Stan level 5 * PHP-Stan level 6 * Fixing platform test on orm:^2.19 * PHP-Stan level 7 * PHP-Stan level 8 * PHP-Stan level 9 * Fixing warning * Issue #65 (#66) * Enhancement #65 implemented * Php-Stan check activated * Add delta because results are different between MySQL5.7 and MySQL8.0 * Return types mentioned (#67) * Return types mentioned * Unexpected file removed * Show installed libraries * Remove no-longer existing error in baseline * Remove no-longer used libraries in composer * Php-stan fix * Php-stan fix
Version 5.0.0 released : #69 |
Further to your comment about floats changing to strings above. Now LongitudeOne\Spatial\PHP\Types\AbstractPoint::setX() and setY() take a string. Should these not take int or string? |
Thank you for your feedback. I edited my comment, because I was wrong. Don't hesitate to create an issue. Yes, it should. IMHO, the geo-parser could have a lot of issues with these unexpected conversions. I have to check it and proofread the code. |
doctrine/orm 3.0 was released a few days ago. Would it be possible to add support for this?
Thanks
The text was updated successfully, but these errors were encountered: