-
Notifications
You must be signed in to change notification settings - Fork 204
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
Merge wkt repository with history as /wkt dir #785
Conversation
79: BREAKING: move `Wkt::from_str` to `FromStr` trait r=urschrei a=nyurik Most of the user's code will stay the same, but will require `use std::str::FromStr;` See also discussion in georust#77 - [x] I agree to follow the project's [code of conduct](https://github.com/georust/geo/blob/master/CODE_OF_CONDUCT.md). - [x] I added an entry to `CHANGES.md` if knowledge of this change could be valuable to users. --- Co-authored-by: Yuri Astrakhan <[email protected]>
In order to auto-catch bugs and code quality, adding clippy and fmt to CI (same as geo)
80: Fix bench build bug, added CI lints r=lnicola a=nyurik In order to auto-catch bugs and code quality, adding clippy and fmt to CI (same as geo) - [x] I agree to follow the project's [code of conduct](https://github.com/georust/geo/blob/master/CODE_OF_CONDUCT.md). - ~[ ] I added an entry to `CHANGES.md` if knowledge of this change could be valuable to users.~ --- Co-authored-by: Yuri Astrakhan <[email protected]>
77: Prepare for 0.10.0 release r=urschrei a=urschrei - [x] I agree to follow the project's [code of conduct](https://github.com/georust/geo/blob/master/CODE_OF_CONDUCT.md). - [x] I added an entry to `CHANGES.md` if knowledge of this change could be valuable to users. --- Co-authored-by: Stephan Hügel <[email protected]>
81: Remove authors manifest field r=nyurik,urschrei a=lnicola - [x] I agree to follow the project's [code of conduct](https://github.com/georust/geo/blob/master/CODE_OF_CONDUCT.md). - [ ] I added an entry to `CHANGES.md` if knowledge of this change could be valuable to users. --- r? `@nyurik` Co-authored-by: Laurențiu Nicola <[email protected]>
Why do you want to do this? |
@urschrei I updated the top comment with the explanation -- mostly because there is a circular dependency between geo and wkt repos, and developing them in sync is becoming complicated. Currently i have to maintain a separate |
This merges the entire history of the wkt repository from https://github.com/georust/wkt/tree/dbd80f22099fc11ad69a1d072c3516f9a1ca4376 as a `/wkt` directory, and adds the CI and adds path links from Crates.toml files: * wkt/Cargo.toml - link to `/geo-types` * geo-test-fixtures/Cargo.toml - link to `/wkt`
How does moving the I'd consider this to be a rather large change to this repository and the |
@frewsxcv sure thing, will do. I thought that since PR and issues are nearly identical in terms of discussion, and it was fairly simple to create this PR to see the code changes if we wanted to, while we can discuss it as if it was an issue. Moving WKT does not solve circular dependency. What it does is it brings all components of the circular dependency into a single repo with a single CI. When a breaking change must be made to both modules, it can be done with a single PR. Having two repos forces us to go through this process:
P.S. alternatively we can always use |
@nyurik can you explain this part more?
Why ignore CI? |
There are two types of changes: those that can be done in steps, e.g. merge and release #786 that introduces There are also breaking changes which cannot IMO be done -- CI would not pass if geo repo introduces -/// assert!(matches!(my_type.geometry, Some(Point(_))));
+/// assert!(matches!(my_type.geometry, Some(PointTZM(_)))); Granted that there are very few of these, and in most cases they can be worked around, i.e. unit test in the doc can be removed, and a new wkt version would be released without that test, but this is no different than simply disabling certain parts of the CI during the migration, and re-enabling it later. |
This isn't a circular dependency. |
It's a circular dependency in terms of passing ci. See my comment above |
I'm also not convinced yet, that this break CI. @nyurik can you point us to where this line you pasted above is:
I'm inclined against this PR, and in general pro-actively merging repos. If anything, we should see a couple of PRs that do break CI due to circular deps, and try out the alternative / more cumbersome workflow before taking a call on this (imho). |
I don't understand -- why does |
@rmanoka see https://github.com/georust/wkt/pull/85/files#diff-0fb2eeea3273a4c9b3de69ee949567f546dc8c06b1e190336870d00b54ea0979R140 I created two PRs to demonstrate the difficulty of introducing any breaking changes that affect wkt -- see #790 and georust/wkt#85 |
closing for now thx for @lnicola proposed workaround - see https://github.com/georust/geo/pull/742/files#diff-d540e35931c0109d7b7d24d53436d1f2e5d883fc264fcfa22d517b8a43ec7cbb |
Just to be clear, that's not the solution I proposed. My suggestion was to skip |
@lnicola in that case I must have misunderstood your idea - i thought you meant conversion of old geo-types to the new ones. Could you sketch a prototype of your idea? |
I can't find the comment where I explained it, but at least I'm at the computer now 😄. The main geometry type in But you're not doing that. You're using a |
If we agree to merge this, the wkt repo should be archived, and all issues should be moved to this repo. I believe it would be good to merge it here because:
geo-test-fixtures
requireswkt
, andwkt
requiresgeo-types
- creating a circular dependency between two repos, making development more complicated and error-proneThis merges the entire history of the wkt repository from
https://github.com/georust/wkt/tree/dbd80f22099fc11ad69a1d072c3516f9a1ca4376
as a
/wkt
directory, and adds the CI and adds path links from Crates.toml files:/geo-types
/wkt
- [ ] I added an entry toCHANGES.md
if knowledge of this change could be valuable to users.