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

The great documentation update #2248

Closed
4 of 12 tasks
Mpdreamz opened this issue Sep 13, 2016 · 11 comments
Closed
4 of 12 tasks

The great documentation update #2248

Mpdreamz opened this issue Sep 13, 2016 · 11 comments
Assignees

Comments

@Mpdreamz
Copy link
Member

Mpdreamz commented Sep 13, 2016

We made great strides in 2.x having our documentation generated from actual code using roslyn to visit certain tests.

This issue serves as an aggregate for remaining documentation issues so we can track it in one issue and make one big last swoop to get it into its final shape.

@russcam
Copy link
Contributor

russcam commented Mar 11, 2017

Here's the rough Table of Contents for the new documentation

NEST Documentation

  • Introduction

  • Breaking Changes

    • Elasticsearch.Net breaking changes
    • NEST breaking changes
  • Elasticsearch.Net - Low level client

    • Getting started
      • Installing
      • Connecting
      • Calling an API
      • Providing a request body
  • NEST - High level client

    • Getting started
      • Installing
      • Connecting
      • Indexing
      • Searching
      • Aggregations
    • Connecting
      • Configuration Options
      • Connection pools
      • Configuring SSL
      • Modifying the default connection
    • Serialization
      • Changing serializers
      • Modifying the default serializer
    • Mapping
      • Automapping
        • Inferred / Mapping from POCOs
        • Attributes
        • Fluent
        • Visitor pattern
      • Multi-fields
    • Analysis
      • Writing analyzers
      • Testing Analyzers
        • Analyze API
        • Explain API
    • Working with documents
      • Indexing
        • Single Document
        • Bulk
        • Ingest Node
      • Retrieving
      • Updating
      • Deleting
    • Search
      • Writing queries
        • Full-text
        • Term level
      • Compound queries
      • Conditionless queries
      • Single search
      • Multi search
      • Source filtering
      • Sorting
      • Highlighting
      • Covariant search results
      • Suggesters
    • Aggregations
      • Writing aggregations
      • Handling aggregation results
      • Sub aggregations
    • Common types
      • Indices
      • Types
      • Fields
      • Time
      • Distance
      • DateMath
    • X-Pack plugins
      • Security
      • Alerting
      • Graph
    • Debugging and Troubleshooting
      • Audit Trail and DebugInformation
      • Logging requests and responses

/* Reference */

  • Document APIs
  • Analysis
  • Mapping
  • Search APIs
    • Search Parameters
  • Query DSL
    • Full text
    • Term level
    • Compound
    • Joining
    • Geo
    • Specialized
    • Span
    • Nest specific
  • Aggregations
    • Metric
    • Bucket
    • Pipeline
    • Matrix

russcam added a commit that referenced this issue Apr 8, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248

(cherry-picked from commit 95ba4de)
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248

(cherry-picked from commit 95ba4de)
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248

(cherry-picked from commit 6268353)
russcam added a commit that referenced this issue Apr 10, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of #2248

(cherry-picked from commit 6268353)
@stevejgordon
Copy link
Contributor

It might just be a personal thing but I find it frustrating that many of the public classes and methods do not seem to have XML comments against them explaining their usage / what they do. We exploring the public API I find this useful to learn my way around it. I find myself having to try and find the info in documentation or as I've just done, by pulling source.

Are their plans to include more XML comments?

For example, I was trying to work out how the TypeName parameter of BulkRequest should be used and have resorted to starting to read the source this morning.

@Mpdreamz
Copy link
Member Author

@stevejgordon thanks for voicing your concerns around this, we absolutely started doing this more and more. I'm personally allergic to generated xmldocs so I rather opt for none over "Sets TypeName".

That said our goal is to definitely retroactively go over our public API to add them in.

awelburn pushed a commit to Artesian/elasticsearch-net that referenced this issue Nov 6, 2017
- Introduce additional TOC level and simplify asciidoc structure
- Use MsBuildWorkspace to get the ASTs of each document of interest.
  This will allow us to query the Semantic Model to obtain richer information for doc generation
- Refactor source code walking
  Simplified walking into a base walker implementation that can be modified by a derived walker to perform different actions on syntax nodes e.g. usage tests apply conventions for Fluent, Object Initializer API examples with JSON output.
- Process attribute entries found within document bodies to generate and include asciidoc elements within the document.
- Generate XML documentation file from the compilation of the Elasticsearch.Net and NEST projects.
  Could refactor current implementation further to extract all comments using Roslyn without taking a dependency on NuDoq.
- Update the naming of query usage tests to be consistent; these are used as headers in the table of contents
- Introduce sections for
  - Getting started with NEST
  - Getting started with Elasticsearch.Net
  - Configuration options from XML docs for ConnectionSettings
  - Modifying serialization
  - Using Client certificates
  - Writing Analyzers
  - Testing Analyzers
  - Writing queries
  - Improve Writing bool queries
  - Logging
  - Debugging

Part of elastic#2248

(cherry-picked from commit 6268353)
@schmitch
Copy link

schmitch commented Nov 9, 2018

btw.

Working with documents

    Indexing
        Single Document
        Bulk
        Ingest Node
    Retrieving
    Updating
    Deleting

is completly missing

@russcam
Copy link
Contributor

russcam commented Nov 9, 2018

Thanks for the bump, @schmitch!

There's a few documentation sections in the table of contents that have not yet been implemented. We've kept the issue open because we would like to implement them, but other work has taken priority; we're looking at improving the performance of the client at the moment.

We would be super happy to accept a contribution for documentation, if it's something you'd be interested in?

@Trisped
Copy link

Trisped commented Jun 24, 2019

Not sure if this is the correct place, but Mapping an Index name for a .NET type needs some work.

The first code sample is the same as the second sample and does not exemplify MapDefaultTypeIndices as indicated by the line describing what should be in the example.

At the time of this writing, the current documentation was version 6.0.

@Trisped
Copy link

Trisped commented Jun 27, 2019

Also, I have run into a few places in the intelisense documenation where the links are broken. For example, the DeleteIndexAsync method on Nest.ElasticClient states:

The delete index API allows to delete an existing index.
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-delete-index.html

The link will work if you replace http://www.elasticsearch.org with https://www.elastic.co.

@russcam Please confirm that this is the correct place to log this and the above issue.

@russcam
Copy link
Contributor

russcam commented Jun 28, 2019

@Trisped Thanks for reporting. It's probably best to open new, separate issues for each of these

@aeslinger0
Copy link

aeslinger0 commented Oct 18, 2019

This issue has been open for three years and still no example on how to update a document with Nest?

@russcam
Copy link
Contributor

russcam commented Oct 19, 2019

There are plenty of examples in the source and out on the web, but not in the docs as yet. We're currently working on bringing parity with Elasticsearch 7.4 to the client, but after this there may be an opportunity to address this.

@stevejgordon
Copy link
Contributor

Closing due to age/inactivity. Please let us know if this issue is still a relevant priority for your usage?

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

No branches or pull requests

6 participants