Skip to content

Adding WebSocket (ws) URI #158

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

david-dick
Copy link
Contributor

Adding WebSocket scheme

Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for WebSocket URI schemes (ws:// and wss://) to the URI library. WebSocket URIs are defined in RFC 6455 and enable two-way communication between clients and servers, with wss:// providing SSL-secured connections.

  • Implementation of URI::ws and URI::wss modules that inherit from URI::http and URI::https respectively
  • Addition of comprehensive test coverage for WebSocket URI functionality
  • Documentation updates to include WebSocket scheme descriptions

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
lib/URI/ws.pm Implements the ws:// URI scheme by inheriting from URI::http
lib/URI/wss.pm Implements the wss:// URI scheme by inheriting from URI::https
t/ws.t Test suite covering WebSocket URI parsing, port handling, and scheme switching
lib/URI.pm Documentation additions describing the ws:// and wss:// schemes
dist.ini Adds "WebSocket" as an accepted spelling for documentation

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.


=head1 VERSION

Version 5.20
Copy link
Preview

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The version in the documentation (5.20) does not match the version declared in the code (5.33). This inconsistency could confuse users.

Suggested change
Version 5.20
Version 5.33

Copilot uses AI. Check for mistakes.


=head1 VERSION

Version 5.20
Copy link
Preview

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The version in the documentation (5.20) does not match the version declared in the code (5.33). This inconsistency could confuse users.

Suggested change
Version 5.20
Version 5.33

Copilot uses AI. Check for mistakes.


=head1 SEE ALSO

L<RFC 3507|http://tools.ietf.org/html/rfc3507>
Copy link
Preview

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SEE ALSO section references RFC 3507, but WebSocket URIs are defined in RFC 6455 as mentioned in the description. RFC 3507 appears to be unrelated to WebSocket protocols.

Suggested change
L<RFC 3507|http://tools.ietf.org/html/rfc3507>
L<RFC 6455|http://tools.ietf.org/html/rfc6455>

Copilot uses AI. Check for mistakes.


=head1 SEE ALSO

L<RFC 3507|http://tools.ietf.org/html/rfc3507>
Copy link
Preview

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SEE ALSO section references RFC 3507, but WebSocket URIs are defined in RFC 6455 as mentioned in the description. RFC 3507 appears to be unrelated to WebSocket protocols.

Suggested change
L<RFC 3507|http://tools.ietf.org/html/rfc3507>
L<RFC 6455|http://tools.ietf.org/html/rfc6455>

Copilot uses AI. Check for mistakes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant