I installed protoc to my ubuntu and got version libprotoc 3.12.4
I reproduce all my steps and got typical example of pb2.py file consisted 
all data

# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: test.proto

from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='test.proto',
  package='',
  syntax='proto3',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  
serialized_pb=b'\n\ntest.proto\"M\n\rSearchRequest\x12\r\n\x05query\x18\x01 
\x01(\t\x12\x13\n\x0bpage_number\x18\x02 
\x01(\x05\x12\x18\n\x10results_per_page\x18\x03 \x01(\x05\x62\x06proto3'
)




_SEARCHREQUEST = _descriptor.Descriptor(
  name='SearchRequest',
  full_name='SearchRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='query', full_name='SearchRequest.query', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=b"".decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR, 
 create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='page_number', full_name='SearchRequest.page_number', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR, 
 create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='results_per_page', full_name='SearchRequest.results_per_page', 
index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR, 
 create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=14,
  serialized_end=91,
)

DESCRIPTOR.message_types_by_name['SearchRequest'] = _SEARCHREQUEST
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

SearchRequest = _reflection.GeneratedProtocolMessageType('SearchRequest', 
(_message.Message,), {
  'DESCRIPTOR' : _SEARCHREQUEST,
  '__module__' : 'test_pb2'
  # @@protoc_insertion_point(class_scope:SearchRequest)
  })
_sym_db.RegisterMessage(SearchRequest)


# @@protoc_insertion_point(module_scope)


And I have a question  - what did I wrong in my first attempt? Is it a new 
version of protoc? or is it a problem in my Windows? Or anything else?
On Tuesday, 1 August 2023 at 14:35:32 UTC+3 Nikita Ig wrote:

> Hello. I'm a rookie in protocol buffers and I'm trying to repeat example 
> from documentation.
>
> Step 1. Installed protoc
> Step 2. Created test.proto file consisted this code:
> syntax = "proto3";
>
> message SearchRequest {
>   string query = 1;
>   int32 page_number = 2;
>   int32 results_per_page = 3;
> }
> Step 3. I ran protoc with help command:
> protoc.exe --proto_path=${PWD}/protobuf --python_out=${PWD}/protobuf/ 
> ${PWD}/protobuf/test.proto
>
> Step 4. I got test_pb2.py file consisted this code:
> # -*- coding: utf-8 -*-
> # Generated by the protocol buffer compiler.  DO NOT EDIT!
> # source: test.proto
> """Generated protocol buffer code."""
> from google.protobuf import descriptor as _descriptor
> from google.protobuf import descriptor_pool as _descriptor_pool
> from google.protobuf import symbol_database as _symbol_database
> from google.protobuf.internal import builder as _builder
> # @@protoc_insertion_point(imports)
>
> _sym_db = _symbol_database.Default()
>
>
>
>
> DESCRIPTOR = 
> _descriptor_pool.Default().AddSerializedFile(b'\n\ntest.proto\"M\n\rSearchRequest\x12\r\n\x05query\x18\x01
>  
> \x01(\t\x12\x13\n\x0bpage_number\x18\x02 
> \x01(\x05\x12\x18\n\x10results_per_page\x18\x03 \x01(\x05\x62\x06proto3')
>
> _globals = globals()
> _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
> _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'test_pb2', _globals)
> if _descriptor._USE_C_DESCRIPTORS == False:
>
>   DESCRIPTOR._options = None
>   _globals['_SEARCHREQUEST']._serialized_start=14
>   _globals['_SEARCHREQUEST']._serialized_end=91
> # @@protoc_insertion_point(module_scope)
>
> But documentation said about other format file for python generated file 
> and I have no idea what I need to import in my producer for create message 
> object. Generated file didn't contain any classes or something other entity 
> for import.
>
> Thanks for any help.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/5086f676-5629-491d-b374-a3290a6026d2n%40googlegroups.com.

Reply via email to