Skip to content
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

[libsersi] Add new library #39349

Merged
merged 27 commits into from
Jul 18, 2024
Merged

Conversation

crhowell3
Copy link
Contributor

@crhowell3 crhowell3 commented Jun 18, 2024

  • Changes comply with the maintainer guide.
  • The name of the port matches an existing name for this component on https://repology.org/ if possible, and/or is strongly associated with that component on search engines.
  • Optional dependencies are resolved in exactly one way. For example, if the component is built with CMake, all find_package calls are REQUIRED, are satisfied by vcpkg.json's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx.
  • The versioning scheme in vcpkg.json matches what upstream says.
  • The license declaration in vcpkg.json matches what upstream says.
  • The installed as the "copyright" file matches what upstream says.
  • The source code of the component installed comes from an authoritative source.
  • The generated "usage text" is accurate. See adding-usage for context.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Only one version is in the new port's versions file.
  • Only one version is added to each modified port's versions file.

This PR introduces the libsersi package, a C++ implementation of the IEEE 1278.1a-1998 Distributed Interactive Simulation standard.

@crhowell3
Copy link
Contributor Author

@microsoft-github-policy-service agree

ports/opendis6/usage Outdated Show resolved Hide resolved
@LilyWangLL LilyWangLL added the category:new-port The issue is requesting a new library to be added; consider making a PR! label Jun 18, 2024
@LilyWangLL LilyWangLL self-assigned this Jun 18, 2024
@LilyWangLL LilyWangLL changed the title Add opendis6 library [opendis6] Add new library Jun 18, 2024
@LilyWangLL
Copy link
Contributor

The CI pipeline error could be fixed by run command .\vcpkg x-add-version opendis6 --overwrite-version.

@crhowell3
Copy link
Contributor Author

The CI pipeline error could be fixed by run command .\vcpkg x-add-version opendis6 --overwrite-version.

I ran this command and updated the version database in my latest commit, but the microsoft.vcpkg.pr (x86_windows) CI job is still failing. Is there something else I need to do?

@crhowell3 crhowell3 marked this pull request as ready for review June 18, 2024 15:58
ports/opendis6/portfile.cmake Outdated Show resolved Hide resolved
ports/opendis6/usage Outdated Show resolved Hide resolved
ports/opendis6/portfile.cmake Outdated Show resolved Hide resolved
ports/opendis6/portfile.cmake Outdated Show resolved Hide resolved
ports/opendis6/portfile.cmake Outdated Show resolved Hide resolved
ports/opendis6/usage Outdated Show resolved Hide resolved
ports/opendis6/usage Outdated Show resolved Hide resolved
@BillyONeal BillyONeal requested a review from LilyWangLL June 20, 2024 06:19
@LilyWangLL
Copy link
Contributor

Usage test passed on x64-windows.

LilyWangLL
LilyWangLL previously approved these changes Jun 20, 2024
@LilyWangLL LilyWangLL added the info:reviewed Pull Request changes follow basic guidelines label Jun 20, 2024
@BillyONeal BillyONeal added requires:vcpkg-team-review This PR or issue requires someone on the vcpkg team to take a further look. and removed info:reviewed Pull Request changes follow basic guidelines labels Jun 21, 2024
Copy link
Member

@BillyONeal BillyONeal left a comment

Choose a reason for hiding this comment

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

I'm a bit nervous about the name, as searching for opendis points to https://github.com/open-dis/open-dis-cpp rather than this library. The name 'opendis6' points to this repo on repology, but only from Conan and the author of the Conan recipe is also @crhowell3 . I'm torn between saying 'it's in repology, it's already out there' and asking for crhowell3-opendis6 instead.

Tagging vcpkg-team-review for a 2nd opinion

@crhowell3
Copy link
Contributor Author

@BillyONeal Maybe this is too drastic of a suggestion, but what if I were to just change the name of my package to avoid confusion with the other opendis library? I could name it something like dis-cpp or disprotocol, maybe even just dis6. Thoughts? Alternative name suggestions?

@BillyONeal
Copy link
Member

@BillyONeal Maybe this is too drastic of a suggestion, but what if I were to just change the name of my package to avoid confusion with the other opendis library? I could name it something like dis-cpp or disprotocol, maybe even just dis6. Thoughts? Alternative name suggestions?

The problem is that there's nonzero potential confusion with https://github.com/open-dis . (That is, we want someone who does vcpkg install opendis6 to not be surprised when they get something not owned by that org)

I think odds are pretty high we take the name as written here, we just want more than one maintainer to OK any time anything is worth questioning because once we 'give away' a name like that, we can't take it back. Whereas we can always rename crhowell3-opendis6 to opendis6 should the library in question become the unambiguous defacto meaning of that name in the future.

@crhowell3
Copy link
Contributor Author

crhowell3 commented Jun 30, 2024

Looks like the pipeline is getting an error stating that the package directory is nonexistent. I pushed a fix to my upstream main branch, but I was only able to confirm it was resolved locally using vcpkg install libdis6 --head. Just using vcpkg install libdis6 does not work. Is there something I need to do to correct that?

Fixed in the latest commits

@crhowell3 crhowell3 marked this pull request as ready for review June 30, 2024 18:47
@crhowell3 crhowell3 requested a review from BillyONeal June 30, 2024 18:47
LilyWangLL
LilyWangLL previously approved these changes Jul 8, 2024
@LilyWangLL LilyWangLL added the info:reviewed Pull Request changes follow basic guidelines label Jul 8, 2024
@JavierMatosD JavierMatosD added the requires:vcpkg-team-review This PR or issue requires someone on the vcpkg team to take a further look. label Jul 8, 2024
@JavierMatosD
Copy link
Contributor

@data-queue, @vicroms, @AugP, and below discussed this today.

We don't count trailing numbers as a distinguisher between ports. For example, we expect libfoo6 to be related to libfoo5 and libfoo. Additionally, a lib prefix isn't considered a distinguisher between ports. For example, we don't want libpng to be different that png. Therefore, this name is taking the stem dis.

@BillyONeal - Still concerned about the name being confused with the open-dis project. A user cannot type the name you picked and think they got open-dis and dis or even libdis6 isn't sufficiently different enough to disambiguate between projects. I'm weakly against this. I still propose <org>-name

@ras0219-msft - For example, we wouldn't accept the name libecmascript6. dis is less known than ecmascript but using the name of the standard as the name of the library is problematic unless blessed by owners of the standard.

Given the discussion above, we would still like a more unique name.

@JavierMatosD JavierMatosD marked this pull request as draft July 11, 2024 22:50
@crhowell3
Copy link
Contributor Author

I understand. I'll try to think of a package name that does not incorporate the dis stem so as to avoid confusion with the open-dis library. If I can't think of anything, then I'll just go with <org>-name as you all have proposed. Thank you for taking the time to review and comment.

@crhowell3
Copy link
Contributor Author

@JavierMatosD, @data-queue, @vicroms, @AugP and whomever else may be involved:

Here is my final name proposition: libsersi (from serialize and simulation). If this is sufficient, I'll change it upstream. If not, then I am fine moving forward with the <org>-name suggestion. In either case, thank you for being patient with me and for being as helpful as you have been.

@JavierMatosD
Copy link
Contributor

JavierMatosD commented Jul 15, 2024

@JavierMatosD, @data-queue, @vicroms, @AugP and whomever else may be involved:

Here is my final name proposition: libsersi (from _ser_ialize and _si_mulation). If this is sufficient, I'll change it upstream. If not, then I am fine moving forward with the <org>-name suggestion. In either case, thank you for being patient with me and for being as helpful as you have been.

@crhowell3, I think libsersi is good. Thank you for your patience and understanding. Make sure to mark "ready for review" when you've applied the changes.

@JavierMatosD JavierMatosD removed the requires:vcpkg-team-review This PR or issue requires someone on the vcpkg team to take a further look. label Jul 15, 2024
@crhowell3 crhowell3 changed the title [libdis6] Add new library [libsersi] Add new library Jul 15, 2024
@JavierMatosD JavierMatosD marked this pull request as ready for review July 15, 2024 20:48
@JavierMatosD JavierMatosD marked this pull request as draft July 15, 2024 20:49
@crhowell3 crhowell3 marked this pull request as ready for review July 16, 2024 17:56
@JavierMatosD JavierMatosD merged commit ee4728e into microsoft:master Jul 18, 2024
16 checks passed
@crhowell3 crhowell3 deleted the add-opendis6-library branch July 18, 2024 21:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:new-port The issue is requesting a new library to be added; consider making a PR! info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants