You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/List-of-OSS-Components.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -6,19 +6,19 @@ These are the Open Source components used by Microsoft 1DS / C++ Client Telemetr
6
6
7
7
ZLIB DATA COMPRESSION LIBRARY.
8
8
9
-
SDK maintains its own snapshot of the mainline ZLib with some Intel architecture performance optimizations [here](https://github.com/microsoft/cpp_client_telemetry/tree/master/zlib).
9
+
SDK maintains its own snapshot of the mainline ZLib with some Intel architecture performance optimizations [here](../zlib).
10
10
11
11
## [SQLite](https://www.sqlite.org/index.html)
12
12
13
13
SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine.
14
14
15
-
SDK maintains its own snapshot of the mainline SQLite, which is used for Windows builds [here](https://github.com/microsoft/cpp_client_telemetry/tree/master/sqlite). Other platforms use platform-provided SQLite.
15
+
SDK maintains its own snapshot of the mainline SQLite, which is used for Windows builds [here](../sqlite). Other platforms use platform-provided SQLite.
SDK maintains its own snapshot of the mainline `nlohmann/json` header-only library [here](https://github.com/microsoft/cpp_client_telemetry/blob/master/lib/include/mat/json.hpp).
21
+
SDK maintains its own snapshot of the mainline `nlohmann/json` header-only library [here](../lib/include/mat/json.hpp).
22
22
23
23
## [libcurl](https://curl.haxx.se/libcurl/)
24
24
@@ -37,12 +37,12 @@ Google's C++ benchmarking framework. Used only for tests and not included in pro
37
37
## [Tony Million Reachability Framework](https://github.com/tonymillion/Reachability)
38
38
39
39
Reachability is a drop-in replacement for Apple's Reachability class. It is ARC-compatible, and it uses the new GCD methods to notify of network interface changes.
40
-
SDK maintains its own snapshot of the mainline `tonymillion/Reachability`[here](https://github.com/microsoft/cpp_client_telemetry/tree/master/third_party/Reachability). This code is not used nor included in the build of non-Apple OS.
40
+
SDK maintains its own snapshot of the mainline `tonymillion/Reachability`[here](../third_party/Reachability). This code is not used nor included in the build of non-Apple OS.
41
41
42
42
## SHA-1 by Steve Reid
43
43
44
44
Classic implementation of SHA-1 (Public Domain).
45
-
SDK maintains its own snapshot of it [here](https://github.com/microsoft/cpp_client_telemetry/blob/master/third_party/sha1/sha1.c).
45
+
SDK maintains its own snapshot of it [here](../third_party/sha1/sha1.c).
46
46
Note that this component is not included or compiled into any of the shipable bits of SDK. It is included for internal developer debug builds only.
47
47
For example, SHA-1 may be used to calculate destination ETW Provider GUID based on ETW Provider name on Windows OS in developer trace tooling / instrumentation.
Copy file name to clipboardExpand all lines: docs/cpp-start-android.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ You will ideally build the SDK using the same versions of the Android SDK, NDK,
12
12
13
13
The Gradle wrapper in ```android_build``` builds two modules, ```app``` and ```maesdk```. The ```maesdk``` module is the SDK packaged as an AAR, with both the Java and C++ components included. The AAR includes C++ shared libraries for four ABIs (two ARM ABIs for devices and two Intel ABIs for the emulator). Android Gradle (as usual) supports debug and release builds, and the Gradle task ```maesdk:assemble``` should build both flavors of AAR.
14
14
15
-
On Android, there are two database implementations to choose from. By default (the master branch on Github), the SDK will use the Android-supported androidx.Room database package. This reduces APK size because we don't need to compile and link in a copy of SQLite in native code (SQLite is hundreds of kB per ABI of APK file size). Room does have a slight CPU performance disadvantage since database transactions cross the JNI boundary when native code uses it. If you wish to change from Room to the native SQLite implementation, you should change the two module ```build.gradle``` files (app and maesdk). In those files, you will see an argument to CMake to select Room: ```"-DUSE_ROOM=1"```. Change this to ```"-DUSE_ROOM=0``` to select the native SQLite.
15
+
On Android, there are two database implementations to choose from. By default (the main branch on Github), the SDK will use the Android-supported androidx.Room database package. This reduces APK size because we don't need to compile and link in a copy of SQLite in native code (SQLite is hundreds of kB per ABI of APK file size). Room does have a slight CPU performance disadvantage since database transactions cross the JNI boundary when native code uses it. If you wish to change from Room to the native SQLite implementation, you should change the two module ```build.gradle``` files (app and maesdk). In those files, you will see an argument to CMake to select Room: ```"-DUSE_ROOM=1"```. Change this to ```"-DUSE_ROOM=0``` to select the native SQLite.
16
16
17
17
The Room database implementation adds one additional initialization requirement, since it needs a pointer to the JVM and an object reference to the application context. See below (4.5) for the required call to either ```connectContext``` (in Java) or ```ConnectJVM``` (in C++) to set this up.
You're done! You can now compile and run your app, and it will send a telemetry event using your ingestion key to your tenant.
139
139
140
-
Note that it is possible to use more than one log manager. See [examples/cpp/SampleCppLogManagers](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/SampleCppLogManagers) for a sample implementation.
140
+
Note that it is possible to use more than one log manager. See [examples/cpp/SampleCppLogManagers](../examples/cpp/SampleCppLogManagers) for a sample implementation.
141
141
142
-
Please refer to [EventSender](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/). The lib/android_build gradle wrappers will use the Android gradle plugin, and that in turn will use CMake/nmake to build C++ object files.
142
+
Please refer to [EventSender](../examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](../examples/cpp/). The lib/android_build gradle wrappers will use the Android gradle plugin, and that in turn will use CMake/nmake to build C++ object files.
Copy file name to clipboardExpand all lines: docs/cpp-start-ios.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -58,4 +58,4 @@ LogManager::FlushAndTeardown();
58
58
59
59
You're done! You can now compile and run your app, and it will send a telemetry event using your ingestion key to your tenant.
60
60
61
-
Please refer to [EventSender](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/). All of our SDK samples require CMake build system, but you may consume the SDK using any other alternate build system of your choice (GNU Make, gn, etc.).
61
+
Please refer to [EventSender](../examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](../examples/cpp/). All of our SDK samples require CMake build system, but you may consume the SDK using any other alternate build system of your choice (GNU Make, gn, etc.).
Copy file name to clipboardExpand all lines: docs/cpp-start-linux.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -62,4 +62,4 @@ LogManager::FlushAndTeardown();
62
62
63
63
You're done! You can now compile and run your app, and it will send a telemetry event using your ingestion key to your tenant.
64
64
65
-
Please refer to [EventSender](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](https://github.com/microsoft/cpp_client_telemetry/tree/master/examples/cpp/). All of our SDK samples require CMake build system, but you may consume the SDK using any other alternate build system of your choice (GNU Make, gn, etc.).
65
+
Please refer to [EventSender](../examples/cpp/EventSender) sample for more details. Other sample apps can be found [here](../examples/cpp/). All of our SDK samples require CMake build system, but you may consume the SDK using any other alternate build system of your choice (GNU Make, gn, etc.).
Copy file name to clipboardExpand all lines: docs/cpp-start-windows.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -68,7 +68,7 @@ depending on what Visual Studio version you are using.
68
68
69
69
## **Instrument your code to send a telemetry event**
70
70
71
-
- Make sure you added the [public SDK headers](https://github.com/microsoft/cpp_client_telemetry/tree/master/lib/include/public) to [your project include path](https://docs.microsoft.com/en-us/cpp/build/reference/c-cpp-prop-page?view=msvc-160#additional-include-directories).
71
+
- Make sure you added the [public SDK headers](../lib/include/public) to [your project include path](https://docs.microsoft.com/en-us/cpp/build/reference/c-cpp-prop-page?view=msvc-160#additional-include-directories).
72
72
- Make sure you added the SDK that you built, e.g. `ClientTelemetry.lib` to [your project library path](https://docs.microsoft.com/en-us/cpp/build/reference/vcpp-directories-property-page).
73
73
74
74
### 1. Include the main 1DS C++ SDK header file in your main.cpp by adding the following statement to the top of your app's implementation file
@@ -113,6 +113,6 @@ More examples can be found under *examples* folder.
- [Runtime Library Variants: static vs dynamic runtime](https://www.oreilly.com/library/view/c-cookbook/0596007612/ch01s24.html)
115
115
116
-
If you encounter troubles building the project, please refer to our CI/Build pipeline settings [here](https://github.com/microsoft/cpp_client_telemetry/blob/master/.github/workflows/build-windows-vs2019.yaml). This pipeline runs on a standard GitHub image with a standard Visual Studio 2019 installation. If you are still stuck, please log your build question as [GitHub issue](https://github.com/microsoft/cpp_client_telemetry/issues) with labels `question` and `build infra`. We would be glad to help and adjust documentation accordingly.
116
+
If you encounter troubles building the project, please refer to our CI/Build pipeline settings [here](../.github/workflows/build-windows-vs2019.yaml). This pipeline runs on a standard GitHub image with a standard Visual Studio 2019 installation. If you are still stuck, please log your build question as [GitHub issue](https://github.com/microsoft/cpp_client_telemetry/issues) with labels `question` and `build infra`. We would be glad to help and adjust documentation accordingly.
117
117
118
118
If you find that some documentation is incorrect, please send a PR to fix it. We ❤️ community contributions!
Copy file name to clipboardExpand all lines: docs/dev-branch-process.md
+7-9
Original file line number
Diff line number
Diff line change
@@ -4,25 +4,23 @@
4
4
5
5
Naming convention is simple and straightforward.
6
6
7
-
-**Master (master)** is the default branch available in the Git repository for the `current` release. Current SDK release is `v3.x`. This branch should be stable all the time and won’t allow any direct check-in. You can only merge it after code review. All team members are responsible for keeping the master stable and up-to-date.
7
+
-**Main (main)** is the default branch available in the Git repository for the `current` release. Current SDK release is `v3.x`. This branch should be stable all the time and won’t allow any direct check-in. You can only merge it after code review. All team members are responsible for keeping the main stable and up-to-date.
8
8
9
-
-**Development (dev)** is the main development branch for the next major release `v4.x`. The dev branch’s idea is to make changes in it and restrict the developers from making any changes in the master branch directly. Changes in the dev branch undergo reviews. When ready, the branch will be fully promoted to `master`.
9
+
-**Development (dev)** is the main development branch for the next major release `v4.x`. The dev branch’s idea is to make changes in it and restrict the developers from making any changes in the main branch directly. Changes in the dev branch undergo reviews. When ready, the branch will be fully promoted to `main`.
10
10
11
-
## `master` branch renaming to `main` would commence in 2021
12
-
13
-
It is planned for `v4.x` branch to coincide with renaming of the `master` branch to `main`. Many communities, both on GitHub and in the wider Git community, are considering renaming the default branch name of their repository from `master`. We are also committed to gradually rename the default branch of our repository from `master` to `main`.
11
+
-**Master (master)** is the copy of `main` branch created after migration of original `master` branch to `main` branch. The branch is temporarily created to ensure that builds for projects using this repo in their CI pipeline doesn't start breaking immediately after migration. This newly created copy is locked against any new commits, and would be deleted in future once all the teams hae migrated their CI pipelines to build from `main`.
14
12
15
13
## Continuous Integration on `dev` branch
16
14
17
-
All of the existing tests are enabled on both `master` and `dev` branches. While implementing any refactoring changes, please adjust all tests accordingly.
15
+
All of the existing tests are enabled on both `main` and `dev` branches. While implementing any refactoring changes, please adjust all tests accordingly.
18
16
19
17
## Documenting Feature and API changes
20
18
21
-
Please use Markdown format to document any API changes from v3.x to v4.x in [docs directory](https://github.com/microsoft/cpp_client_telemetry/tree/master/docs).
19
+
Please use Markdown format to document any API changes from v3.x to v4.x in [docs directory](../docs).
22
20
23
21
## Release labels for multiple versions
24
22
25
-
While the `master` (`main`) branch contains linear history of all releases and associated git tags, it may be practical to branch-off specific releases for use in concrete products.
23
+
While the `main` branch contains linear history of all releases and associated git tags, it may be practical to branch-off specific releases for use in concrete products.
26
24
27
25
Sometimes a product may require a feature to be added on top of old long-term supported release.
28
26
@@ -38,7 +36,7 @@ All feature work made by maintainers on latest release (or `dev` branch) will no
38
36
Commmitters use their best judgment if they'd like to backport a feature.
39
37
40
38
In case of a backport of a new feature to old release, `release/$product/v3.x.y` branch would be created.
41
-
Old release long-term support branches should never be full-promoted back into `dev` or `master` (`main`).
39
+
Old release long-term support branches should never be full-promoted back into `dev` or `main`).
42
40
43
41
Continuous Integration is enabled on `release/*` branches.
Copy file name to clipboardExpand all lines: docs/start_macOS_iOS.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# 1DS C++ SDK iOS/macOS Podspec Onboarding
2
2
3
-
This tutorial guides you through the process of integrating the [1DS SDK](https://github.com/microsoft/cpp_client_telemetry) into your existing iOS and macOS app. Here we consume the [Msblox Podspec]() and published [Obj-C Wrappers](https://github.com/microsoft/cpp_client_telemetry/tree/master/wrappers/obj-c). If you want to consume the C++ Library directly, please follow the tutorials at [Getting started - iOS](https://github.com/microsoft/cpp_client_telemetry/blob/master/docs/cpp-start-ios.md) and [Getting Started - Mac OS X](https://github.com/microsoft/cpp_client_telemetry/blob/master/docs/cpp-start-macosx.md)
3
+
This tutorial guides you through the process of integrating the [1DS SDK](https://github.com/microsoft/cpp_client_telemetry) into your existing iOS and macOS app. Here we consume the [Msblox Podspec]() and published [Obj-C Wrappers](../wrappers/obj-c). If you want to consume the C++ Library directly, please follow the tutorials at [Getting started - iOS](./cpp-start-ios.md) and [Getting Started - Mac OS X](./cpp-start-macosx.md)
0 commit comments