Open apurvabanka opened 1 week ago
This PR implements Network Link Control functionality by adding new attributes to the _Feature class and introducing a new NetworkLinkControl container class. The implementation includes support for network link control parameters like refresh periods, session length, and update operations.
classDiagram
class _Feature {
+Optional~float~ min_refresh_period
+Optional~float~ max_session_length
+Optional~str~ cookie
+Optional~str~ message
+Optional~str~ link_name
+Optional~str~ link_description
+Optional~str~ link_snippet
+Optional~KmlDateTime~ expires
+Optional~Update~ update
}
classDiagram
class NetworkLinkControl {
+Optional~str~ ns
+Optional~Dict~str, str~ name_spaces
+Optional~str~ id
+Optional~str~ target_id
+Optional~float~ min_refresh_period
+Optional~float~ max_session_length
+Optional~str~ cookie
+Optional~str~ message
+Optional~str~ link_name
+Optional~str~ link_description
+Optional~str~ link_snippet
+Optional~KmlDateTime~ expires
+Optional~Update~ update
+Optional~Union~Camera, LookAt~ view
+List~Schema~ schemata
}
class Update {
+Optional~str~ target_href
+Optional~Change~ change
+Optional~Create~ create
+Optional~Delete~ delete
}
class Change {
+str target_id
+List~Dict~str, Any~~ elements
}
class Create {
}
class Delete {
}
NetworkLinkControl --> Update
Update --> Change
Update --> Create
Update --> Delete
Change | Details | Files |
---|---|---|
Added Network Link Control attributes to the _Feature base class |
|
fastkml/features.py |
Implemented new NetworkLinkControl container class |
|
fastkml/containers.py |
Created new Update module for handling KML updates |
|
fastkml/update.py |
Updated KML module to support NetworkLinkControl |
|
fastkml/kml.py fastkml/__init__.py |
Enhanced KmlDateTime functionality |
|
fastkml/times.py |
[!IMPORTANT]
Review skipped
Draft detected.
Please check the settings in the CodeRabbit UI or the
.coderabbit.yaml
file in this repository. To trigger a single review, invoke the@coderabbitai review
command.You can disable this status message by setting the
reviews.review_status
tofalse
in the CodeRabbit configuration file.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Hello @apurvabanka! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:
fastkml/containers.py
:Line 50:1: F401 'fastkml.network_control._NetworkControl' imported but unused Line 373:1: E302 expected 2 blank lines, found 1 Line 386:11: E231 missing whitespace after ':' Line 400:15: E231 missing whitespace after ':' Line 419:1: W293 blank line contains whitespace Line 447:1: E305 expected 2 blank lines after class or function definition, found 1 Line 549:2: W292 no newline at end of file
fastkml/kml.py
:Line 63:90: E501 line too long (98 > 89 characters) Line 290:90: E501 line too long (108 > 89 characters) Line 291:90: E501 line too long (104 > 89 characters)
fastkml/update.py
:Line 17:1: F401 'typing.Any' imported but unused Line 19:1: F401 'typing.Dict' imported but unused Line 21:1: F401 'typing.List' imported but unused Line 31:1: E302 expected 2 blank lines, found 1 Line 32:1: W293 blank line contains whitespace Line 42:1: W293 blank line contains whitespace Line 46:1: E302 expected 2 blank lines, found 1 Line 56:1: W293 blank line contains whitespace Line 60:1: E302 expected 2 blank lines, found 1 Line 70:1: W293 blank line contains whitespace Line 74:1: E302 expected 2 blank lines, found 1 Line 89:1: E305 expected 2 blank lines after class or function definition, found 1 Line 133:2: W292 no newline at end of file
Preparing review...
Preparing review...
Preparing review...
Attention: Patch coverage is 77.89474%
with 21 lines
in your changes missing coverage. Please review.
Project coverage is 99.63%. Comparing base (
a6b5087
) to head (1ca395f
). Report is 6 commits behind head on develop.
Files with missing lines | Patch % | Lines |
---|---|---|
fastkml/network_control.py | 77.08% | 11 Missing :warning: |
fastkml/update.py | 78.78% | 7 Missing :warning: |
fastkml/containers.py | 77.77% | 2 Missing :warning: |
fastkml/times.py | 66.66% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
🚨 Try these New Features:
Preparing review...
Summary by Sourcery
Add support for network link control in KML files by introducing the NetworkLinkControl class and extending the _Feature class with new attributes. Implement new classes for handling KML update operations, enhancing the library's capability to manage dynamic KML content.
New Features:
Enhancements: