mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
Merge branch 'main' into Fix-timestamp-comparisons-in-ZCL_ABAPGIT_FIELD_RULES
This commit is contained in:
commit
b398a206f1
|
@ -11,11 +11,43 @@
|
||||||
"folder": "/deps"
|
"folder": "/deps"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"url": "https://github.com/abaplint/deps",
|
||||||
"files": "/src/**/*.*",
|
"files": "/src/**/*.*",
|
||||||
"folder": "/lint_deps",
|
"folder": "/lint_deps"
|
||||||
"url": "https://github.com/abaplint/deps"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"syntax": {
|
||||||
|
"errorNamespace": "^(Z|Y|LT?CL_|TY_|LIF_|C_|.*ABAPGIT)",
|
||||||
|
"globalConstants": [
|
||||||
|
"abap_func_exporting",
|
||||||
|
"abap_func_tables",
|
||||||
|
"cssf_formtype_text",
|
||||||
|
"seok_access_free",
|
||||||
|
"seok_access_modify",
|
||||||
|
"sews_c_vif_version",
|
||||||
|
"skwfc_obtype_folder",
|
||||||
|
"skwfc_obtype_loio",
|
||||||
|
"so2_controller",
|
||||||
|
"srext_ext_class_pool",
|
||||||
|
"srext_ext_interface_pool",
|
||||||
|
"ststc_c_type_dialog",
|
||||||
|
"ststc_c_type_object",
|
||||||
|
"ststc_c_type_parameters",
|
||||||
|
"ststc_c_type_report",
|
||||||
|
"swbm_c_op_delete_no_dialog",
|
||||||
|
"swbm_c_type_ddic_db_tabxinx",
|
||||||
|
"swbm_c_type_wdy_application",
|
||||||
|
"swbm_version_active",
|
||||||
|
"swbm_version_inactive",
|
||||||
|
"swfco_org_standard_task",
|
||||||
|
"swfco_org_workflow_template",
|
||||||
|
"wbmr_c_skwf_folder_class",
|
||||||
|
"wdyn_limu_component_controller",
|
||||||
|
"wdyn_limu_component_definition",
|
||||||
|
"wdyn_limu_component_view"
|
||||||
|
],
|
||||||
|
"version": "v702"
|
||||||
|
},
|
||||||
"rules": {
|
"rules": {
|
||||||
"7bit_ascii": {
|
"7bit_ascii": {
|
||||||
"exclude": [
|
"exclude": [
|
||||||
|
@ -25,6 +57,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"abapdoc": false,
|
"abapdoc": false,
|
||||||
|
"align_type_expressions": true,
|
||||||
"align_pseudo_comments": false,
|
"align_pseudo_comments": false,
|
||||||
"invalid_table_index": true,
|
"invalid_table_index": true,
|
||||||
"tables_declared_locally": true,
|
"tables_declared_locally": true,
|
||||||
|
@ -259,7 +292,7 @@
|
||||||
"/json/",
|
"/json/",
|
||||||
"zcl_abapgit_object_pdts.clas.testclasses.abap"
|
"zcl_abapgit_object_pdts.clas.testclasses.abap"
|
||||||
],
|
],
|
||||||
"length": 120
|
"length": 125
|
||||||
},
|
},
|
||||||
"line_only_punc": {
|
"line_only_punc": {
|
||||||
"ignoreExceptions": true
|
"ignoreExceptions": true
|
||||||
|
@ -468,37 +501,5 @@
|
||||||
"when_others_last": true,
|
"when_others_last": true,
|
||||||
"whitespace_end": true,
|
"whitespace_end": true,
|
||||||
"xml_consistency": true
|
"xml_consistency": true
|
||||||
},
|
|
||||||
"syntax": {
|
|
||||||
"errorNamespace": "^(Z|Y|LT?CL_|TY_|LIF_|C_|.*ABAPGIT)",
|
|
||||||
"globalConstants": [
|
|
||||||
"abap_func_exporting",
|
|
||||||
"abap_func_tables",
|
|
||||||
"cssf_formtype_text",
|
|
||||||
"seok_access_free",
|
|
||||||
"seok_access_modify",
|
|
||||||
"sews_c_vif_version",
|
|
||||||
"skwfc_obtype_folder",
|
|
||||||
"skwfc_obtype_loio",
|
|
||||||
"so2_controller",
|
|
||||||
"srext_ext_class_pool",
|
|
||||||
"srext_ext_interface_pool",
|
|
||||||
"ststc_c_type_dialog",
|
|
||||||
"ststc_c_type_object",
|
|
||||||
"ststc_c_type_parameters",
|
|
||||||
"ststc_c_type_report",
|
|
||||||
"swbm_c_op_delete_no_dialog",
|
|
||||||
"swbm_c_type_ddic_db_tabxinx",
|
|
||||||
"swbm_c_type_wdy_application",
|
|
||||||
"swbm_version_active",
|
|
||||||
"swbm_version_inactive",
|
|
||||||
"swfco_org_standard_task",
|
|
||||||
"swfco_org_workflow_template",
|
|
||||||
"wbmr_c_skwf_folder_class",
|
|
||||||
"wdyn_limu_component_controller",
|
|
||||||
"wdyn_limu_component_definition",
|
|
||||||
"wdyn_limu_component_view"
|
|
||||||
],
|
|
||||||
"version": "v702"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -481,9 +481,10 @@ CLASS zcl_abapgit_git_pack IMPLEMENTATION.
|
||||||
ls_node-chmod = lv_chmod.
|
ls_node-chmod = lv_chmod.
|
||||||
IF ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-dir
|
IF ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-dir
|
||||||
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-file
|
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-file
|
||||||
|
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-symbolic_link
|
||||||
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-executable
|
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-executable
|
||||||
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-submodule.
|
AND ls_node-chmod <> zif_abapgit_git_definitions=>c_chmod-submodule.
|
||||||
zcx_abapgit_exception=>raise( |Unknown chmod| ).
|
zcx_abapgit_exception=>raise( |Unknown chmod { ls_node-chmod }| ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lv_offset = lv_match + 1.
|
lv_offset = lv_match + 1.
|
||||||
|
|
|
@ -809,6 +809,7 @@ CLASS zcl_abapgit_git_porcelain IMPLEMENTATION.
|
||||||
CASE <ls_node>-chmod.
|
CASE <ls_node>-chmod.
|
||||||
WHEN zif_abapgit_git_definitions=>c_chmod-file
|
WHEN zif_abapgit_git_definitions=>c_chmod-file
|
||||||
OR zif_abapgit_git_definitions=>c_chmod-executable
|
OR zif_abapgit_git_definitions=>c_chmod-executable
|
||||||
|
OR zif_abapgit_git_definitions=>c_chmod-symbolic_link
|
||||||
OR zif_abapgit_git_definitions=>c_chmod-submodule.
|
OR zif_abapgit_git_definitions=>c_chmod-submodule.
|
||||||
APPEND INITIAL LINE TO rt_expanded ASSIGNING <ls_exp>.
|
APPEND INITIAL LINE TO rt_expanded ASSIGNING <ls_exp>.
|
||||||
<ls_exp>-path = iv_base.
|
<ls_exp>-path = iv_base.
|
||||||
|
@ -822,7 +823,7 @@ CLASS zcl_abapgit_git_porcelain IMPLEMENTATION.
|
||||||
iv_base = iv_base && <ls_node>-name && '/' ).
|
iv_base = iv_base && <ls_node>-name && '/' ).
|
||||||
APPEND LINES OF lt_expanded TO rt_expanded.
|
APPEND LINES OF lt_expanded TO rt_expanded.
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
zcx_abapgit_exception=>raise( 'walk_tree: unknown chmod' ).
|
zcx_abapgit_exception=>raise( |walk_tree: unknown chmod { <ls_node>-chmod }| ).
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
|
|
|
@ -82,6 +82,7 @@ INTERFACE zif_abapgit_git_definitions
|
||||||
executable TYPE ty_chmod VALUE '100755',
|
executable TYPE ty_chmod VALUE '100755',
|
||||||
dir TYPE ty_chmod VALUE '40000 ',
|
dir TYPE ty_chmod VALUE '40000 ',
|
||||||
submodule TYPE ty_chmod VALUE '160000',
|
submodule TYPE ty_chmod VALUE '160000',
|
||||||
|
symbolic_link TYPE ty_chmod VALUE '120000',
|
||||||
END OF c_chmod .
|
END OF c_chmod .
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
|
|
|
@ -46,7 +46,7 @@ CLASS zcl_abapgit_objects_activation DEFINITION
|
||||||
|
|
||||||
CONSTANTS:
|
CONSTANTS:
|
||||||
c_domain TYPE c LENGTH 9 VALUE 'DOMA DOMD',
|
c_domain TYPE c LENGTH 9 VALUE 'DOMA DOMD',
|
||||||
c_types TYPE c LENGTH 50 VALUE 'DTEL DTED TABL TABD SQLT SQLD TTYP TTYD VIEW VIED',
|
c_types TYPE c LENGTH 55 VALUE 'DTEL DTED TABL TABD SQLT SQLD TTYP TTYD VIEW VIED DRTY',
|
||||||
c_technset TYPE c LENGTH 24 VALUE 'TABT VIET SQTT INDX XINX',
|
c_technset TYPE c LENGTH 24 VALUE 'TABT VIET SQTT INDX XINX',
|
||||||
c_f4_objects TYPE c LENGTH 35 VALUE 'SHLP SHLD MCOB MCOD MACO MACD MCID',
|
c_f4_objects TYPE c LENGTH 35 VALUE 'SHLP SHLD MCOB MCOD MACO MACD MCID',
|
||||||
c_enqueue TYPE c LENGTH 9 VALUE 'ENQU ENQD',
|
c_enqueue TYPE c LENGTH 9 VALUE 'ENQU ENQD',
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
CLASS zcl_abapgit_object_fugr DEFINITION PUBLIC INHERITING FROM zcl_abapgit_objects_program FINAL.
|
CLASS zcl_abapgit_object_fugr DEFINITION
|
||||||
|
PUBLIC
|
||||||
|
INHERITING FROM zcl_abapgit_objects_program
|
||||||
|
CREATE PUBLIC .
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES zif_abapgit_object.
|
|
||||||
|
INTERFACES zif_abapgit_object .
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
|
|
||||||
|
@ -945,7 +949,6 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <lv_include> LIKE LINE OF lt_includes.
|
FIELD-SYMBOLS: <lv_include> LIKE LINE OF lt_includes.
|
||||||
|
|
||||||
|
|
||||||
lt_includes = includes( ).
|
lt_includes = includes( ).
|
||||||
|
|
||||||
LOOP AT lt_includes ASSIGNING <lv_include>.
|
LOOP AT lt_includes ASSIGNING <lv_include>.
|
||||||
|
|
17
src/objects/zcl_abapgit_object_fugs.clas.abap
Normal file
17
src/objects/zcl_abapgit_object_fugs.clas.abap
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
CLASS zcl_abapgit_object_fugs DEFINITION
|
||||||
|
PUBLIC
|
||||||
|
INHERITING FROM zcl_abapgit_object_fugr
|
||||||
|
FINAL
|
||||||
|
CREATE PUBLIC .
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
PRIVATE SECTION.
|
||||||
|
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CLASS zcl_abapgit_object_fugs IMPLEMENTATION.
|
||||||
|
ENDCLASS.
|
16
src/objects/zcl_abapgit_object_fugs.clas.xml
Normal file
16
src/objects/zcl_abapgit_object_fugs.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||||
|
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||||
|
<asx:values>
|
||||||
|
<VSEOCLASS>
|
||||||
|
<CLSNAME>ZCL_ABAPGIT_OBJECT_FUGS</CLSNAME>
|
||||||
|
<LANGU>E</LANGU>
|
||||||
|
<DESCRIPT>abapGit - FUGS</DESCRIPT>
|
||||||
|
<STATE>1</STATE>
|
||||||
|
<CLSCCINCL>X</CLSCCINCL>
|
||||||
|
<FIXPT>X</FIXPT>
|
||||||
|
<UNICODE>X</UNICODE>
|
||||||
|
</VSEOCLASS>
|
||||||
|
</asx:values>
|
||||||
|
</asx:abap>
|
||||||
|
</abapGit>
|
|
@ -154,6 +154,7 @@ CLASS zcl_abapgit_objects_program DEFINITION
|
||||||
!it_source TYPE abaptxt255_tab
|
!it_source TYPE abaptxt255_tab
|
||||||
!iv_title TYPE repti
|
!iv_title TYPE repti
|
||||||
!iv_package TYPE devclass
|
!iv_package TYPE devclass
|
||||||
|
!iv_state TYPE progdir-state DEFAULT c_state-inactive
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
METHODS update_program
|
METHODS update_program
|
||||||
|
@ -161,8 +162,22 @@ CLASS zcl_abapgit_objects_program DEFINITION
|
||||||
!is_progdir TYPE zif_abapgit_sap_report=>ty_progdir
|
!is_progdir TYPE zif_abapgit_sap_report=>ty_progdir
|
||||||
!it_source TYPE abaptxt255_tab
|
!it_source TYPE abaptxt255_tab
|
||||||
!iv_title TYPE repti
|
!iv_title TYPE repti
|
||||||
|
!iv_state TYPE progdir-state DEFAULT c_state-inactive
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
|
METHODS is_exit_include
|
||||||
|
IMPORTING
|
||||||
|
!iv_program TYPE syrepid
|
||||||
|
RETURNING
|
||||||
|
VALUE(rv_is_exit_include) TYPE abap_bool.
|
||||||
|
METHODS deserialize_exit_include
|
||||||
|
IMPORTING
|
||||||
|
!is_progdir TYPE zif_abapgit_sap_report=>ty_progdir
|
||||||
|
!it_source TYPE abaptxt255_tab
|
||||||
|
!it_tpool TYPE textpool_table
|
||||||
|
!iv_package TYPE devclass
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
@ -456,12 +471,53 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD deserialize_exit_include.
|
||||||
|
|
||||||
|
DATA:
|
||||||
|
lv_progname TYPE reposrc-progname,
|
||||||
|
lv_title TYPE rglif-title.
|
||||||
|
|
||||||
|
" Includes in SAP exit function groups must be processed in active state only
|
||||||
|
" (check in RS_INSERT_INTO_WORKING_AREA)
|
||||||
|
lv_title = get_program_title( it_tpool ).
|
||||||
|
|
||||||
|
SELECT SINGLE progname FROM reposrc INTO lv_progname
|
||||||
|
WHERE progname = is_progdir-name
|
||||||
|
AND r3state = c_state-active.
|
||||||
|
|
||||||
|
IF sy-subrc = 0.
|
||||||
|
update_program(
|
||||||
|
is_progdir = is_progdir
|
||||||
|
it_source = it_source
|
||||||
|
iv_title = lv_title
|
||||||
|
iv_state = '' ).
|
||||||
|
ELSE.
|
||||||
|
insert_program(
|
||||||
|
is_progdir = is_progdir
|
||||||
|
it_source = it_source
|
||||||
|
iv_title = lv_title
|
||||||
|
iv_package = iv_package
|
||||||
|
iv_state = '' ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD deserialize_program.
|
METHOD deserialize_program.
|
||||||
|
|
||||||
DATA:
|
DATA:
|
||||||
lv_progname TYPE reposrc-progname,
|
lv_progname TYPE reposrc-progname,
|
||||||
lv_title TYPE rglif-title.
|
lv_title TYPE rglif-title.
|
||||||
|
|
||||||
|
IF is_exit_include( is_progdir-name ) = abap_true.
|
||||||
|
deserialize_exit_include(
|
||||||
|
is_progdir = is_progdir
|
||||||
|
it_source = it_source
|
||||||
|
it_tpool = it_tpool
|
||||||
|
iv_package = iv_package ).
|
||||||
|
RETURN.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
zcl_abapgit_factory=>get_cts_api( )->insert_transport_object(
|
zcl_abapgit_factory=>get_cts_api( )->insert_transport_object(
|
||||||
iv_object = 'ABAP'
|
iv_object = 'ABAP'
|
||||||
iv_obj_name = is_progdir-name
|
iv_obj_name = is_progdir-name
|
||||||
|
@ -579,7 +635,7 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
program_name = is_progdir-name
|
program_name = is_progdir-name
|
||||||
program_type = is_progdir-subc
|
program_type = is_progdir-subc
|
||||||
title_string = iv_title
|
title_string = iv_title
|
||||||
save_inactive = c_state-inactive
|
save_inactive = iv_state
|
||||||
suppress_dialog = abap_true
|
suppress_dialog = abap_true
|
||||||
uccheck = is_progdir-uccheck " does not exist on lower releases
|
uccheck = is_progdir-uccheck " does not exist on lower releases
|
||||||
TABLES
|
TABLES
|
||||||
|
@ -597,7 +653,7 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
program_name = is_progdir-name
|
program_name = is_progdir-name
|
||||||
program_type = is_progdir-subc
|
program_type = is_progdir-subc
|
||||||
title_string = iv_title
|
title_string = iv_title
|
||||||
save_inactive = c_state-inactive
|
save_inactive = iv_state
|
||||||
suppress_dialog = abap_true
|
suppress_dialog = abap_true
|
||||||
TABLES
|
TABLES
|
||||||
source_extended = it_source
|
source_extended = it_source
|
||||||
|
@ -674,6 +730,13 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD is_exit_include.
|
||||||
|
rv_is_exit_include = boolc(
|
||||||
|
iv_program CP 'LX*' OR iv_program CP 'SAPLX*' OR
|
||||||
|
iv_program+1 CP '/LX*' OR iv_program+1 CP '/SAPLX*' ).
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD is_text_locked.
|
METHOD is_text_locked.
|
||||||
|
|
||||||
DATA: lv_object TYPE eqegraarg.
|
DATA: lv_object TYPE eqegraarg.
|
||||||
|
@ -1062,7 +1125,7 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
EXPORTING
|
EXPORTING
|
||||||
program_name = is_progdir-name
|
program_name = is_progdir-name
|
||||||
title_string = iv_title
|
title_string = iv_title
|
||||||
save_inactive = c_state-inactive
|
save_inactive = iv_state
|
||||||
TABLES
|
TABLES
|
||||||
source_extended = it_source
|
source_extended = it_source
|
||||||
EXCEPTIONS
|
EXCEPTIONS
|
||||||
|
@ -1080,7 +1143,9 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
|
||||||
" for generated table maintenance function groups, the author is set to SAP* instead of the user which
|
" for generated table maintenance function groups, the author is set to SAP* instead of the user which
|
||||||
" generates the function group. This hits some standard checks, pulling new code again sets the author
|
" generates the function group. This hits some standard checks, pulling new code again sets the author
|
||||||
" to the current user which avoids the check
|
" to the current user which avoids the check
|
||||||
|
IF is_exit_include( is_progdir-name ) = abap_false.
|
||||||
zcx_abapgit_exception=>raise( |Delete function group and pull again, { is_progdir-name } (EU522)| ).
|
zcx_abapgit_exception=>raise( |Delete function group and pull again, { is_progdir-name } (EU522)| ).
|
||||||
|
ENDIF.
|
||||||
ELSE.
|
ELSE.
|
||||||
zcx_abapgit_exception=>raise_t100( ).
|
zcx_abapgit_exception=>raise_t100( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user