Skip to content

Conversation

Cadons
Copy link
Contributor

@Cadons Cadons commented Aug 16, 2025

No description provided.

@Cadons
Copy link
Contributor Author

Cadons commented Aug 16, 2025

@microsoft-github-policy-service agree

@Cadons Cadons marked this pull request as draft August 16, 2025 13:44
@Cadons Cadons closed this Aug 16, 2025
@Cadons Cadons reopened this Aug 16, 2025
@Cadons
Copy link
Contributor Author

Cadons commented Aug 16, 2025

  • 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.

@Cadons Cadons marked this pull request as ready for review August 16, 2025 13:51
@Cadons Cadons changed the title [tusclient] First submission [tusclient] First submission for tusclient library Aug 16, 2025
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.

[x] 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.

This does not appear to be true as far as I can tell? repology does not have the name and casual searching points to several libraries all claiming to be a 'tusclient' but none of which are "Cadons/tusclient". I think the name of the port needs to become cadons-tusclient. See also https://learn.microsoft.com/vcpkg/contributing/maintainer-guide#check-names-against-other-repositories

Note that this is only about the name of the port. The name used

[x] The license declaration in vcpkg.json matches what upstream says.

https://github.com/Cadons/libtusclient/blob/main/lib/tusclient/LICENSE does not say MIT. Since you are upstream, can you delete this file if you actually hold copyright on the repo contents and your intent is to ship MIT?

The linux builds failed due to:

Change Dir: '/mnt/vcpkg-ci/b/tusclient/x64-linux-dbg'

Run Build Command(s): /vcpkg/downloads/tools/ninja/1.12.1-linux/ninja -v -v -j33 install
[1/14] /usr/bin/c++ -DBOOST_CONTAINER_NO_LIB -DBOOST_CONTAINER_STATIC_LINK -DCURL_STATICLIB -DGFLAGS_IS_A_DLL=0 -DGLOG_USE_GFLAGS -DGLOG_USE_GLOG_EXPORT -I/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/include/tusclient -isystem /mnt/vcpkg-ci/installed/x64-linux/include -fPIC -g -std=c++20 -MD -MT lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -MF lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o.d -o lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -c /mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp
FAILED: lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o 
/usr/bin/c++ -DBOOST_CONTAINER_NO_LIB -DBOOST_CONTAINER_STATIC_LINK -DCURL_STATICLIB -DGFLAGS_IS_A_DLL=0 -DGLOG_USE_GFLAGS -DGLOG_USE_GLOG_EXPORT -I/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/include/tusclient -isystem /mnt/vcpkg-ci/installed/x64-linux/include -fPIC -g -std=c++20 -MD -MT lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -MF lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o.d -o lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -c /mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp
/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp:16:10: fatal error: format: No such file or directory
   16 | #include <format>
      |          ^~~~~~~~
compilation terminated.

... which may be fixed by asking for a later C++ standard version but I'm not positive if the Ubuntu we use for testing has that yet. If that's the case and you otherwise expect this to build for Linux please add entries to scripts/ci.baseline.txt and/or ci.feature.baseline.txt to skip this port on Linux.

@BillyONeal BillyONeal added the category:new-port The issue is requesting a new library to be added; consider making a PR! label Aug 20, 2025
@Cadons
Copy link
Contributor Author

Cadons commented Aug 20, 2025

[x] 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.

This does not appear to be true as far as I can tell? repology does not have the name and casual searching points to several libraries all claiming to be a 'tusclient' but none of which are "Cadons/tusclient". I think the name of the port needs to become cadons-tusclient. See also https://learn.microsoft.com/vcpkg/contributing/maintainer-guide#check-names-against-other-repositories

Note that this is only about the name of the port. The name used

[x] The license declaration in vcpkg.json matches what upstream says.

https://github.com/Cadons/libtusclient/blob/main/lib/tusclient/LICENSE does not say MIT. Since you are upstream, can you delete this file if you actually hold copyright on the repo contents and your intent is to ship MIT?

The linux builds failed due to:

Change Dir: '/mnt/vcpkg-ci/b/tusclient/x64-linux-dbg'

Run Build Command(s): /vcpkg/downloads/tools/ninja/1.12.1-linux/ninja -v -v -j33 install
[1/14] /usr/bin/c++ -DBOOST_CONTAINER_NO_LIB -DBOOST_CONTAINER_STATIC_LINK -DCURL_STATICLIB -DGFLAGS_IS_A_DLL=0 -DGLOG_USE_GFLAGS -DGLOG_USE_GLOG_EXPORT -I/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/include/tusclient -isystem /mnt/vcpkg-ci/installed/x64-linux/include -fPIC -g -std=c++20 -MD -MT lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -MF lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o.d -o lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -c /mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp
FAILED: lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o 
/usr/bin/c++ -DBOOST_CONTAINER_NO_LIB -DBOOST_CONTAINER_STATIC_LINK -DCURL_STATICLIB -DGFLAGS_IS_A_DLL=0 -DGLOG_USE_GFLAGS -DGLOG_USE_GLOG_EXPORT -I/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/include/tusclient -isystem /mnt/vcpkg-ci/installed/x64-linux/include -fPIC -g -std=c++20 -MD -MT lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -MF lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o.d -o lib/tusclient/CMakeFiles/tusclient.dir/src/tusclient/chunk/FileChunker.cpp.o -c /mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp
/mnt/vcpkg-ci/b/tusclient/src/1.0.0-a125a16405.clean/lib/tusclient/src/tusclient/chunk/FileChunker.cpp:16:10: fatal error: format: No such file or directory
   16 | #include <format>
      |          ^~~~~~~~
compilation terminated.

... which may be fixed by asking for a later C++ standard version but I'm not positive if the Ubuntu we use for testing has that yet. If that's the case and you otherwise expect this to build for Linux please add entries to scripts/ci.baseline.txt and/or ci.feature.baseline.txt to skip this port on Linux.

@BillyONeal Can you explain me better the first 2 points ( this is my first package submission)

@BillyONeal
Copy link
Member

@BillyONeal Can you explain me better the first 2 points ( this is my first package submission)

The first point is a request to rename the directory and the name in vcpkg.json to cadons-tusclient. Our overall design goal in requiring a component to be well known by a name to give it that 'pretty name' is that we want to avoid a situation where someone can do vcpkg install something and get a library that is totally different than the one they expect. We consider adding the github organization prefix (for things hosted on GitHub) as a sufficient marker that the person who said vcpkg install org-library actually meant that one.

But you don't need to rename your CMake configs or header names or documentation or whatever to have the cadons- prefix, we just want that for what the user types into vcpkg install.

The second point is just licensing. You're claiming that the contents are MIT but https://github.com/Cadons/libtusclient/blob/main/lib/tusclient/LICENSE is a EULA which is not MIT. It's not clear that it is safe to mark "license": "MIT" when the sources contain a different license.

@Cadons Cadons requested a review from BillyONeal August 23, 2025 11:19
@BillyONeal
Copy link
Member

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@Cadons Cadons requested a review from dg0yt August 27, 2025 22:00
Copy link
Contributor

@dg0yt dg0yt left a comment

Choose a reason for hiding this comment

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

Some suggestions are the same as last time...

@Cadons Cadons requested a review from dg0yt August 28, 2025 17:44
@BillyONeal BillyONeal marked this pull request as draft September 3, 2025 20:19
@BillyONeal
Copy link
Member

I changed this to draft because there are outstanding build failures for a long time; please fix those and mark 'Ready for review' when you're ready for us to take another look.

@Cadons Cadons marked this pull request as ready for review September 14, 2025 10:26
@BillyONeal BillyONeal changed the title [tusclient] First submission for tusclient library [cadons-ctus] New port Sep 16, 2025
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.

Thanks!

@BillyONeal BillyONeal enabled auto-merge (squash) September 16, 2025 06:56
@BillyONeal BillyONeal merged commit fa8c654 into microsoft:master Sep 16, 2025
18 checks passed
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!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants