Commit Graph

619 Commits

Author SHA1 Message Date
Marc Bernard
6dfa4eee17
Reduce memory consumption during deserialize (#4357)
* Reduce memory consumption during deserialize

Import of objects required unnecessarily a lot of memory. This was the especially the case during the initial import of repos with large (binary) objects or high number of objects (even if they were not under /src/). 

With this fix, an instance of an object serializer now contains only the files associated with this object (rather than all (!) files of the repo).

* Change path logic

* Comment

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-30 08:59:41 +01:00
Marc Bernard
6f38ae63dd
ENxx: Fix error when uninstalling (#4359)
Uninstall of enhancements failed with "Action cancelled" error and left object locked. 

Removed call of `save` since calling `delete` method is sufficient. Also added `run_dark` for `delete`.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-29 09:41:13 +01:00
Marc Bernard
871a47516b
SHI5: Add object to transport (#4358)
Closes #4211
2020-12-29 09:28:41 +01:00
Marc Bernard
e7d7723bd5
Raise error if package is not part of package hierarchy (#4331)
* Raise error if package is not part of package hierarchy

If a package exists locally and remotely, but the local package is not part of the package hierarchy associated with the repo, then an error message will be raised.

The local package must be assigned manually to the package hierarchy before abapGit can process this scenario. 

Note: The assignment is not done automatically, since it's not clear where in the hierarchy the new package should be located.

* lv_msg

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 13:26:45 +01:00
d034973
afb8ff8671
new handler for SUSH (#4324)
* neu handler for SUSH

* fix ABAP

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

* fixed SUSH

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 13:24:03 +01:00
Marc Bernard
4bfc56b79e
Fix pull errors related to files deleted remotely (#4338)
* Fix pull errors related to files deleted remotely

Improve #4281 by moving "ignore logic" to `filter_files_to_deserialize`

* Added unit test

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-28 12:59:21 +01:00
Fabian Lupa
e1e039a446
Implement jump for CUS1 (#4354) 2020-12-24 12:55:47 +01:00
Fabian Lupa
dac05e5eb6
Implement jump for CUS0 (#4353) 2020-12-24 10:01:25 +01:00
Marc Bernard
a3ce719b0c
Remove unnecessary constructors (#4341)
* Remove unnecessary constructors

A constructor that redefines the super constructor but only calls the super constructor with the same parameters is unnecessary and can be removed

https://github.com/abaplint/abaplint/issues/1417

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 07:05:13 +01:00
Marc Bernard
c74ca9eb4c
TABL: No structure comparison for global temp tables (#4347)
Closes #4081

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 06:52:58 +01:00
Jānis B
6e4982f417
fix creation of TR entries for uninstalled PROGs (#4343)
* fix creation of TR entries for uninstalled PROGs

Fixes creation of CTS Transport Request entries for PROG Objects uninstalled from transportable package.

* Abaplint Fixes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-22 06:44:46 +01:00
jan-jezek
158d1e27b7
Serialise only main language for ENHS and ENHO objects (#4337)
* Add language parameter to sotr

* Added language parameter to accomodate change

* Abaplint fixes

* Abaplint

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Abaplint

* abaplint bot

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* abaplint bot

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* Removed iv_language from object

* Method call without parameter name

Co-authored-by: Jan Jezek <jan.jezek@sap.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-18 11:11:24 +01:00
Marc Bernard
01a2363c72
ENHO: Implement missing deserialize for WDYC (#4332)
* ENHO: Implement missing deserialize for WDYC

Related to #3586

* Downport

* Update src/objects/enh/zcl_abapgit_object_enho_wdyc.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-15 10:23:02 +01:00
Marc Bernard
744ce9efce
Align naming of object super classes (#4327)
* Align naming of object super classes

- SAXX_SUPER for SAMC %26 SAPC
- W3XX_SUPER for W3HT %26 W3MI

* Delete old classes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-15 08:05:11 +01:00
Sercan K.D
55ee890080
Fix missing i_suppress_dialog parameter syntax error in 731 system (#4328)
* Fix missing i_suppress_dialog parameter syntax error in 731 system

* replace cx_root with cx_sy_dyn_call_param_not_found

* revert back to cx_root because checks have failed

"Statement does not exist in ABAPv702(or a parser error)"

* Revert "revert back to cx_root because checks have failed"

This reverts commit 73b9b2aa6f.

* replace cx_root with cx_sy_dyn_call_param_not_found, sorry i didn't see that extra quote character, should be fine now.

* fix whitespace

Co-authored-by: larshp <larshp@hotmail.com>
2020-12-15 08:00:29 +01:00
Marc Bernard
c6f6ddb17e
VIEW: Fix deserialize of maintenance views (#4317)
Maintenance views can have dependencies on tables with foreign keys. Such cases can lead to errors during deserialize since the foreign key relationships between tables are processed only in the "late" step.

This fix moves the processing of maintenance views (viewclass = c) to the "late" step.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-14 14:52:50 +01:00
Marc Bernard
ac1c3baa0d
Fix typo "odd" > "of" (#4316) 2020-12-13 08:29:28 +01:00
Lars Hvam
260af61407
ecatt exceptions, test (#4312) 2020-12-12 08:51:49 +01:00
Marc Bernard
869c0bccb5
WDYN: Improve error messages (#4310)
Pass exception text to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-11 07:54:19 +01:00
Marc Bernard
46e2dd827b
Package Structure - Part 4 (#4305)
* Package Structure - Part 4

$ABAPGIT_OBJECTS_CORE:

ZCL_ABAPGIT_DEPENDENCIES
ZCL_ABAPGIT_FILE_STATUS
ZCL_ABAPGIT_FOLDER_LOGIC
ZCL_ABAPGIT_OBJECTS
ZCL_ABAPGIT_OBJECTS_ACTIVATION
ZCL_ABAPGIT_OBJECTS_FILES
ZCL_ABAPGIT_SERIALIZE
ZCL_ABAPGIT_TADIR
ZIF_ABAPGIT_COMPARATOR
ZIF_ABAPGIT_OBJECT
ZIF_ABAPGIT_OBJECTS
ZIF_ABAPGIT_TADIR
ZCL_ABAPGIT_SKIP_OBJECTS

$ABAPGIT_OBJECTS_TEXTS:

ZIF_ABAPGIT_LANG_DEFINITIONS

#4253

* ZIF_ABAPGIT_LANG_DEFINITIONS

* Sync

* Sync

* Sync

* Sync

* Move objects

* Sync

* always upload build artifact

* Move type to interface

* Types

* Add package

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-11 07:50:10 +01:00
Lars Hvam
efaa0e65c0
more generic exception catching (#4307) 2020-12-11 07:46:07 +01:00
jan-jezek
c6a54b9912
Fix master language only, duplicate entries for shi3 objects (#4308)
* Fix master language only for shi3 objects

* Fix abaplint

* Fix duplicates in shi3

* Abaplint

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2020-12-11 07:43:52 +01:00
Marc Bernard
8fcc5c2f95
DSYS: Get changed by (#4303)
Get "changed by" user

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-09 09:27:11 +01:00
Marc Bernard
8118ab836d
SMIM: Improve error messages (#4304)
Pass T100 messages to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-09 08:02:55 +01:00
Marc Bernard
eb1a6fab90
SOTS: Get changed by (#4302)
Get "changed by" user
2020-12-09 05:27:13 +01:00
Marc Bernard
b31885796d
Fix pull errors related to files deleted remotely (#4281)
In case files are deleted remotely, the files are now ignored during a pull. In other words, "pull" will not touch objects that exist only locally and not remotely.

To delete such objects locally, use "reset local (forced pull)" which will show a popup for these objects and let you delete them.

Closes #4277

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-08 17:16:04 +01:00
Marc Bernard
0fc7b43a35
PROG: Fix transport and work area (#4242)
* PROG: Remove objects from work area 

Fixes issue with incomplete deletion of inactive objects

Closes #4151

* Lint

* Add correction

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-07 09:38:56 +01:00
Marc Bernard
5ed2f5bb22
DOMA: Fix serialize for missing translations (#4283)
Closes #4278

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 09:01:24 +01:00
Marc Bernard
1c8f8038c5
Package Structure - Part 3 (#4286)
$ABAPGIT_OBJECTS_OO:

ZCL_ABAPGIT_OO_BASE
ZCL_ABAPGIT_OO_CLASS
ZCL_ABAPGIT_OO_FACTORY
ZCL_ABAPGIT_OO_INTERFACE
ZCL_ABAPGIT_OO_SERIALIZER
ZIF_ABAPGIT_OO_OBJECT_FNC

#4253

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:51:43 +01:00
Marc Bernard
58024be52e
TRAN: Improve error messages (#4280)
* TRAN: Improve error messages

Pass T100 messages to UI/log

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:46:08 +01:00
Marc Bernard
d11c82148e
Package Structure - Part 2 (#4273)
* Package Structure - Part 2

$ABAPGIT_OBJECTS_TEXTS:

ZCL_ABAPGIT_LONGTEXTS
ZCL_ABAPGIT_SOTR_HANDLER
ZIF_ABAPGIT_LANG_DEFINITIONS
ZIF_ABAPGIT_LONGTEXTS

$ABAPGIT_OBJECTS_ENH:

ZCL_ABAPGIT_OBJECT_ENHO_BADI
ZCL_ABAPGIT_OBJECT_ENHO_CLASS
ZCL_ABAPGIT_OBJECT_ENHO_CLIF
ZCL_ABAPGIT_OBJECT_ENHO_FUGR
ZCL_ABAPGIT_OBJECT_ENHO_HOOK
ZCL_ABAPGIT_OBJECT_ENHO_INTF
ZCL_ABAPGIT_OBJECT_ENHO_WDYC
ZCL_ABAPGIT_OBJECT_ENHO_WDYN
ZCL_ABAPGIT_OBJECT_ENHS_BADI_D
ZCL_ABAPGIT_OBJECT_ENHS_HOOK_D
ZIF_ABAPGIT_OBJECT_ENHO ENHO
ZIF_ABAPGIT_OBJECT_ENHS ENHS

$ABAPGIT_OBJECTS_TEST:

ZCL_ABAPGIT_OBJECTS_CI_TESTS
ZCL_ABAPGIT_PERFORMANCE_TEST
ZCL_ABAPGIT_TEST_SERIALIZE

* Interfaces for ENHx

* Git platform subpackage

* Git_platform, test packages

* Update package.devc.xml

* Update package.devc.xml

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-04 08:41:35 +01:00
Marc Bernard
a3c98afbef
PINF: Missing transport entry (#4275)
* PINF: Missing transport entry

- Added recording into transport for PINF 
- Added description for FTGL "Feature toggle"

* ftgl

* ftgl

* ftlg
2020-12-03 15:12:55 +01:00
Marc Bernard
5ca21a837d
CLIF: Improve error messages (#4271)
Pass T100 messages to UI/log

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-02 13:08:42 +01:00
Marc Bernard
7f61ebd645
UI: Clear progress bar (#4249)
* UI: Clear progress bar

Clears status/progress bar at end of process and removes leftover messages. 

Closes #3505

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-27 10:18:52 +01:00
Marc Bernard
ca0ff368c3
Remove obsolete late_deser from metadata (#4243)
* Remove obsolete late_deser from metadata

Final part to remove late_deser flag. Solution remains compatible with old bridge class which still uses the flag.

* Call

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-25 09:59:33 +01:00
Marc Bernard
e36486901d
Check objects when installing into main package (#4244)
* Check objects when installing into main package

Closes https://github.com/abapGit/abapGit/issues/2273

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-25 09:53:56 +01:00
Marc Bernard
bdcb725fc9
Replace cl_aunit_assert with cl_abap_unit_assert (#4239)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-24 17:28:43 +01:00
Lars Hvam
01d968c1f8
show log, remove title parameter (#4234)
* show log, remove title parameter

the log objec already have the title as part of the object, another input is not required

this aligns the code to always use the title from the object

closes #4223

* zif_abapgit_log, change title to csequence input
2020-11-24 15:41:26 +01:00
Lars Hvam
d3b68b8a48
remove broken dynamic call (#4221)
closes #4195

but lets keep #3453 open
2020-11-24 07:52:58 +01:00
Lars Hvam
381d40e35a
ZCL_ABAPGIT_HASH add shorthand methods (#4220)
This adds shorthand methods for the SHA1 calculation of the different git artifacts.
More logic in ZCL_ABAPGIT_HASH, but easier to read and less application logic.
2020-11-23 14:30:31 +01:00
Jaime Rodriguez Capote
9ef961cc8a
DDLS newline serialization in 750 and lower (#4143)
* DDLS: Empty line at serialization

Change included in 751+

* Newline serialization remove spaces

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-22 09:47:20 +01:00
Lars Hvam
4a30a3c079
VIEW file format updates (#4010) 2020-11-22 09:45:34 +01:00
Fabian Lupa
6c0df0f5bd
Support JUMP in SHI3 for GHIER (#4209) 2020-11-20 16:51:26 +01:00
Marc Bernard
46470da59d
Improvements for uninstall (#4198)
* Improvements for uninstall

- Improve error handling on deletion collecting errors in log
Closes #4197

- Remove limit of 3 loops which allows deleting objects with deeper dependencies
(Follow-up https://github.com/abapGit/abapGit/issues/3228#issuecomment-728800249)

* Exception

* Error msg

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-19 09:31:31 +01:00
Fabian Lupa
cac7cd42fb
Implement JUMP for SHI5 (#4202) 2020-11-18 18:27:53 +01:00
Marc Bernard
e93cbc5a1f
Move ty_deserialization, ty_step_data, ty_repo_ref_tt (#4181)
* Move ty_deserialization, ty_step_data

Remove dependencies from `zif_abapgit_definitions` (see https://github.com/abapGit/abapGit/issues/4179)

* Move to interface

* Move ty_repo_ref_tt
2020-11-16 08:34:29 +01:00
Lars Hvam
95e427b970
Move type ty_seocompotx_tt (#4168) 2020-11-12 14:29:42 +01:00
Marc Bernard
3d26041779
DEVC: Remove obsolete TADIR entries during uninstall (#4150)
* DEVC: Remove obsolete TADIR entries 

In case a package is local (ie no transports), abapGit will now check if objects still exist in the package. In case an object does not exist anymore, the corresponding TADIR entry will be removed. This allows empty local packages to be uninstalled automatically.

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-12 08:55:18 +01:00
Marc Bernard
cc6a207926
DDLS: Uninstall CDS views even if references exist (#4149)
Uninstall will now remove CDS views even if they are referenced in other views.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-12 08:48:48 +01:00
Marc Bernard
b25a67acea
Terminology: Inclusive Language - Part 2 (#4159)
* Terminology: Inclusive Language - Part 2

Change "Master Language" to "Main Language" in UI and comments (documentation and variables next)

* Docs

* Docs

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-11 10:36:38 +01:00