Commit Graph

58 Commits

Author SHA1 Message Date
Frederik Hudák
509a69e480 'Duplicates' error: show duplicate object names (#3024)
* 'Duplicates' error: show duplicate object names

* Update zcl_abapgit_objects.clas.abap

* Update zcl_abapgit_objects.clas.abap
2019-11-01 17:22:04 +01:00
Alexander Tsybulsky
f2f82278e7 Serialize master lang only + settings UI improvements (#2954)
* repo settings ui improvements

* serialize_master_lang_only UI

* downport

* connect settings and serialization (MSAG)

* dtel doma tran prog fugr

* linter fixes
2019-10-07 23:03:57 -07:00
Martin Fuchs
67ebff3b7c No log messages for local objects after pull (#2932)
* No log messages for local objects after pull

In case a package contains objects that are are not part of the remote repository, the pull log contains messages like "Object (type ) only exists local; no import required". It is not necessary that messages for local object appears in the log. For pull requests, messages for the affected objects (objects to be imported) are sufficient.
This change ir related to issue #2931.

* rename (z)if_abapgit_definitions

rename (z)if_abapgit_definitions
2019-10-05 22:41:02 -07:00
Lars Hvam
48222ca050
indentation fixes (#2820)
* indentation fixes

* fixes
2019-07-31 00:49:10 -07:00
Christian Günter
5081ddf7d0 Improve error information - HTML error message (#2775)
* Improve error information

With this commit errors that are raised with zcx_abapgit_exception=>raise
and issued with message are enriched with two additional functions.

1) Go to source
Navigates to the source code position where zcx_abapgit_exception=>raise
is called

2) Callstack
Shows a popup with the full callstack and the possibility to navigate to
the source of each line with double click

This feature requires the full abapGit repository. Without nothing
changes.

* issue messages directly

* zcx_abapgit_exception: adapt callstack handling

- callstack as attribute
- export callstack to ABAP memory only when SAPGui is available

* rename memory id

* Add comment why we don't delete callstack from MEM

* cleanup

* first try html error display

* add some comments

* add longtext

* goto_source and callstack implemented

* part 2

* remove

* fix

* add close button

* fix long classname

* fix linter

* add jump to SE91

* fix lintmr

* fix and cleanup

* fix linter

* fix linter

* fix eslint

* fix linter

* remove message class

* remove superfluous constant

* add missing method implementation

* refactor

* add hotkey for message longtext toggling

* hotkey 2

* refactor + resize callstack popup

* Refactoring: simplify control flow

* fix goto callstack for merged abapGit

* refactor: simplify control flow

* Refactoring: introduce message helper

* fix linter

* remove TODO pragmas

* ren. render meth + move zcl_abapgit_gui_chunk_lib

* refactoring: simplify control flow

* simplify exception handling

* refactor

* refactor

* refactor

* remove duplication

* Rename method

* rename method

* remove superfluous constant

* call ZCL_ABAPGIT_MESSAGE_HELPER dynamically

* cleanup

* Improve UX

* fix linter

* remove hotkey
2019-07-28 03:46:53 -07:00
Martin Fuchs
4aab0166ac Pass log to deserialization API and show log (#2729)
* Pass log interface for de-serialization

Interface ZIF_ABAPGIT_LOG is now passed for deseriaization API.
This includes:
- Log messages for FUGR: Imported function modules and includes
- Improved error messages for TABL compare
- Log objects w/o changes
- Log is shown in the UI if available ("Log" entry appears if a log exists, no persistence!)
This PR enhances #2534 and #2694

Another important change: In case an object fails (or a single function module in a group fails), the import continues with the next object!

* small pretty printer changes

small pretty printer changes

* fix abaplint issues

reduce line sizes and ensure 7.02 compatibility

* show errors and warnings from pull

Errors and warnings after a pull are now part of the "message list" above the object list in the main screen and will be shown immediately. The new"Log" button shows errors, warnings and success messages on demand.
The log title is now part of the ZIF_ABAPGIT_LOG interface.

* fix abaplint issue

fix abaplint issue
2019-06-21 23:05:10 -07:00
Christian Günter
6b7e4d62dd Improve error handling for delete_tadir (#2741)
* Improve error handling for delete_tadir

* add TODO comment for delete tadir
2019-06-16 09:01:53 -07:00
Martin Fuchs
6560cbe539 report name of xml file in case of format error (#2626)
* report name of xml file in case of format error

In case of an error in the XML file, for support reason I want to know which file causes the error. The file name is mentioned if the XML itself is corrupt or if there is an XML version mismatch.
This PR fixes issue #2619.

* fix abaplint issues

fix abaplint issues
2019-04-14 00:14:22 -07:00
Lars Hvam
f9318305e9
Minor fixes (#2532)
* minor fixes regarding unused variables

* minor code inspector fixes
2019-03-15 05:54:39 -07:00
Martin Fuchs
31fc55af56 fix filter_files_to_deserialize
in method zcl_abap_objects->filter_files_to_deserialize the object condense is done too early, need to be done at the end
2019-03-14 10:14:49 +01:00
larshp
25f6284493 implement GET_DESERIALIZE_STEPS
this is a quick fix, field LATE_DESER will be removed in future
2019-03-12 07:37:56 -07:00
GoWale
6b7b2ba5c5 Implement deserialize steps and swap DDIC/ABAP order (#2449)
* Implement deserialize steps swap DDIC/ÁBAP order

* fix for wapa and abaplint

* bugfix in falback logic and type definition

* fixed constant usage

* fixed abaplint and constant usage

* focus only on design change of deserialze

* focus only on design change of deserialze

* Bugfix for CI because of changes of the order

* cleanup

* cleanup

* minor changes

* move types to IF
2019-03-12 02:08:00 -07:00
Lars Hvam
3213d0c2dd
Deserialization performance, refactor COMPARE_TO_REMOTE_VERSION (#2438)
* core part refactored #2436

* indentation

* fix implementations

* delete ZCL_ABAPGIT_COMPARISON_NULL

* pretty print

* Update serializers.md

* downport
2019-02-20 22:20:24 -08:00
Lars Hvam
25d4c9ea07
Remove HAS_CHANGED_SINCE #1021 (#2401)
* core part removed

* remove method implementations
2019-02-15 06:51:57 -08:00
larshp
01f1af8b7f PINF fix deserialization sequence 2019-02-12 21:45:39 -08:00
Lars Hvam
cb4479b95b
Cleanup (#2361)
* pretty print

* move identical code outside IF

* remove space before .

* remove unreferenced variables

* remove unreferenced variables

* remove unreferenced variables

* fix pseudo comment

* remove unreferenced field symbols
2019-02-04 23:08:29 -08:00
Christian Günter
6cc064d794 SPRX: Proxy Object
Proxy objects are quite complex. With this commit we add basic SPRX support.

Working scenarios are:
- Service Consumer
- Service Provider
2019-02-02 03:06:11 -08:00
Lars Hvam
e8b6b0020d
Add interface for ZCL_ABAPGIT_PROGRESS #2303 (#2316)
* interface for progress class

* adjust branch overview

* adjust git pack

* adjust diff page

* adjust objects class

* adjust activation class

* adjust repo online class

* adjust serialize class

few methods moved

* adjust tadir class
2019-01-23 06:28:54 +01:00
Christian Guenter
d4cd7e2639 ZCL_ABAPGIT_OBJECTS: optimize with sec.key 2019-01-13 10:28:06 +01:00
Lars Hvam
c9252b1b2a
CLAS cleanup (#2204)
* cleanup old experimental CLAS

* Move ZCL_ABAPGIT_OO_CLASS_NEW to _CLASS
2018-12-17 08:17:07 +01:00
Lars Hvam
54e0155891
parallel: refactoring, #2121 (#2122)
* parallel: refactoring, #2121

* move cache handling outside of main loop

* fix error found by abaplint
2018-11-22 05:07:49 +01:00
Christian Günter
ea29dc8c03 Fix deserialization with unsupported object type 2018-11-17 06:23:30 +01:00
Christian Günter
dc173ad906 DCLS: Fix activation error + TADIR handling + late deserialization #2051 (#2085)
* DCLS: Fix activation and move to late deser.

* DCLS: improve tadir handling + activation
2018-11-11 06:32:56 +01:00
Christian Guenter
997ca1d139 Fix dupl. deserialization + add unit tests 2018-11-10 08:08:40 +01:00
Lars Hvam
06616580eb
Naming conventions (#2059)
* fix naming conventions

* naming conventions
2018-11-07 12:50:20 +01:00
Lars Hvam
89e5010fd0
Naming conventions fixes, #2053 (#2058)
* fix more naming conventions

* more naming conventions fixes
2018-11-07 12:05:27 +01:00
larshp
788a7fedb9 naming conventions #2053 2018-11-07 09:00:12 +01:00
Domi Bigl
cf05295170 mark inactive objects in repo list #1943 (#2017)
* mark inactive objects in repo list

Inactive object are marked in the repo list
The sort order for changed files is not changed
unchanged inactive files come right after the changed files

* move acitve check to object interface

* add is_active for objects up to F

* add is_active for objects up to P

* add is_active for objects up to T

* add is_active for objects up to X

all core object implement (except SSFO) the standard active check via FM RS_INACTIVE_OBJECTS_WARNING now

* add is_active to plugins bridge - always active

* finish object interface implementation + objects

* add is_active for offline with object interface

* rename returning to RV_

* use returning for serialize

* cleanup, PP, UT
2018-10-31 15:54:57 +01:00
Frederik Hudák
1bb195b344 Removed the rest of endmethod/endclass comments 2018-10-18 07:27:27 +02:00
Christian Guenter
898efade3e JUMP: check if object exists 2018-10-13 10:00:42 +02:00
Alexander Tsybulsky
ef2b90c0a9 Dump on assert rv_user, fix #1960 2018-10-12 07:56:14 +02:00
Domi Bigl
f61eb50dbf Code inspector results do not respect 'Jump to ADT first' setting #1892 (#1903)
* enable ADT jump from CI result

* enable ADT jump from CI result for all objects

* cleanup + PP

* cleanup + PP + save/activate in ADT

* remove commented code
2018-09-16 10:05:38 +02:00
Johannes Konings
d25bfaf725 fix some naming conventions
https://github.com/larshp/abapGit/issues/1132
2018-08-17 09:24:22 +02:00
larshp
49ee796fc9 move responsibility for SHA1 calc
move responsibility for SHA1 calculation, in preparation for parallel object serialization move calculation
2018-08-13 18:35:08 +02:00
larshp
f0fb0f0470 TADIR performance
TADIR performance #1756

All usages of TADIR aligned to use the same structure. 
DELFLAG added in the structure.
2 identical structure definitions deleted.

todo: test this PR works after abapmerge has run
2018-08-06 15:39:15 +02:00
Michael Käsemann
b3679f0868 Added Buffering to ZCL_ABAPGIT_FOLDER_LOGIC (#1723)
* Added Buffering to ZCL_ABAPGIT_FOLDER_LOGIC

- Converted ZCL_ABAPGIT_FOLDER_LOGIC=>PACKAGE_TO_PATH and ZCL_ABAPGIT_FOLDER_LOGIC=>PATH_TO_PACKAGE to instance methods, so they can work with buffered data when constructiing path information. This gives a performance advantage in repos with a depp tree structure and multiple leaf packages
- Adapted all calling code to use an instance of ZCL_ABAPGIT_FOLDER_LOGIC instead of the previously available static methods
- Where applicaple PACKAGE_TO_PATH and PATH_TO_PACKAGE were called in an instance of ZCL_ABAPGIT_FOLDER_LOGIC, which was instanced outside of a processing loop and thus profited from the introduced buffering

* Fixed errors

* Removed obsolete coding artifacts

Removed an obsolete parameter, that accidentally got merged into the code when building the pull request

* Forwarded FOLDER_LOGIC instance to recursed calls

Forwarded ZCL_ABAPGIT_FOLDER_LOGIC instance to subsequent BUILD calls to make use of buffering, until the optimizations in #1725 are in place.
2018-07-31 12:19:29 +02:00
Christian Günter
67b7f74911 Fix: warning package shown twice (#1644) 2018-07-17 07:28:57 +02:00
Christian Günter
4f9f47cd59 Set transport request if needed during uninstall or reset local (#1596)
* delete checks: set transport request if needed

this ensures that the transport request is set when deleting objects.
E.g. uninstalling the repositoy or reset local.

* separate type for delete checks
2018-07-11 16:18:08 +02:00
larshp
583397ff31 avoid duplicate objects in reset local #1552
avoid duplicate objects in reset local #1552
2018-07-07 07:56:07 +00:00
Christian Guenter
a3d26b9901 WAPA: better delta handling 2018-06-26 11:01:42 +02:00
Christian Guenter
79a0a8fa85 Delete: checks if any object is locked 2018-06-19 13:32:25 +00:00
Christian Guenter
36f257f0bb Dependency injection for ZCL_ABAPGIT_SAP_PACKAGE 2018-06-18 15:37:16 +02:00
christianguenter2
6521d09470 Block pull if any of deserialized object is locked 2018-06-18 14:18:58 +02:00
Lars Hvam
de23d5bf95
Merge pull request #1484 from larshp/issue_1390
first dependency injection, TADIR #1390
2018-06-14 06:27:04 +02:00
Jakub Filak
fb6efabfb9 tp: use the correct transport type in the tr popup
We are developing in an infinity system which is somehow cloned into a
new releases system. When we need to backport a bug fixes we do
cherry-pick the commits and pull them the release system. However, in
those systems we need to use the task type Repair.

Hence, we need to overwrite the default value of the parameter
wi_task_type of the function TRINT_ORDER_CHOICE which is 'S'
(Development/Correction) with the value 'R'.

I use the function TRINT_GET_REQUEST_TYPE and for the sake of simplicity
I assume that it is enough to know the transport type of the repository
package - in other words, it is no necessary to check every deserialized
object.

Related to #1446
2018-06-12 13:33:49 +02:00
larshp
4e67e884de first dependency injection #1390
* extract public methods of ZCL_ABAPGIT_TADIR to new interface
* create factory ZCL_ABAPGIT_FACTORY
* refactor existing calls
2018-06-10 12:11:48 +00:00
Lars Hvam
5baeaf070c
Minor changes (#1461)
* remove double space after IF

* remove accesses to table bodies

* remove parameter name where possible

* identical code in conditions
2018-06-06 16:24:15 +02:00
Christian Guenter
35ec1085e2 Only show transport popup when needed 2018-05-10 21:48:36 +02:00
Christian Guenter
582a3ab02a refactor transport popup 2018-05-08 19:09:30 +02:00
Lars Hvam
3b09bdba29
fix SUPPORTED_LIST (#1293)
* fix SUPPORTED_LIST

* and fail unit test if nothing is supported

* moved test objects to abapGit organization
2018-04-03 16:22:03 +02:00