Commit Graph

639 Commits

Author SHA1 Message Date
Marc Bernard
c48c030a0c
Fix status calculation on package move (#4447)
* Fix status calculation on package move

If an object is moved to another package *and* changed, the status was "blank". Now the object status is properly shown as "added/deleted". Also the `packmove` flag is *not* set anymore since a simple `tadir` change would not be sufficient. 

Extended unit test to cover this case.

* Split test method

* pretty

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-25 13:55:21 +01:00
Marc Bernard
40efc567f6
Automatic creation of top repository package (#4431)
* Automatic creation of top repository package

When adding a repository, it is not necessary anymore that the top SAP package assigned to the repository exists. Just enter a package name and clone (works for offline, too). 

The initial diff will now show that the top package exists remotely only. Therefore, when pulling, you will not get the "confirm overwrite package" popup anymore. Yippie!

* Typo

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-23 10:11:54 +01:00
Marc Bernard
cd3b29aac1
NSPC: Add support for namespaces (#4426)
* NSPC: Add support for namespaces

Part 2 of #835

If a repo contains any namespaced object, then this PR will make namespaces part of the repository. So far, serializing and updating an existing namespace is supported.

abapGit can not (yet) create the namespace automatically. This will require a bit of refactoring which will then also support creating the top repo package automatically. Coming soon. 

See readme of test case https://github.com/abapGit-tests/NSPC

* Refactor build

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-23 10:05:58 +01:00
DerGuteWolf
4c07c33c21
TABL, default ROWORCOLST on deserialize (#4430)
* Fix for #4425

* Remove whitespace at end of line

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

* Remove whitespace at end of line

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

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2021-01-21 06:21:23 +01:00
Marc Bernard
31a550db0f
Refactor I18N settings (#4423)
* Refactor I18N settings

- Consolidate I18N parameters into a structure and pass it to xml and serializer classes (#4415)
- Continue change of terminology (#4043)

* Remove changes to serializer class

* Main lang

* DSYS

* OTGR

* Repo view

* Main langu

* Repo view %26 stage

* Serialize

* Settings

* Repo view

* Defs

* Stage

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-19 14:29:09 +01:00
Marc Bernard
7d4773ca23
NSPC: Add warning if namespace does not exist (#4420)
* NSPC: Add warning if namespace does not exist

Part 1 of #835

* Limit to xml files

* Unit test

* RC

* Regex

* Refactor checks into methods

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-18 17:55:34 +01:00
Marc Bernard
8ff0445673
DEVC: Avoid dump when creating new package (#4419)
Usually, in abapGit packages are created by the folder logic already. But it dumps with "`li_package` is not assigned," if deserialize is used in other ways.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-18 09:19:31 +01:00
Marc Bernard
7e2d05a30b
AVAR: Remove tadir when uninstalling (#4418) 2021-01-18 07:34:31 +01:00
Marc Bernard
a824eef662
Prevent staging of duplicate files (#4403)
* Prevent staging of duplicate files

Since objects cannot exist in multiple packages, the staging page is now checking the selected files to prevent the resulting repo from containing an object multiple times.

If an object is moved to another SAP package and the corresponding files are seleted to be added to the repo (for the new package), then the files must also be removed from the repo (from the old package). If not, an error is raised.

* Remove other changes

* Update file status

* Extend unit test

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-17 09:28:54 +01:00
Lars Hvam
db6db7cf79
remove more unused variables (#4413) 2021-01-15 17:22:51 +01:00
Lars Hvam
690da4e51f
delete some unused variables (#4411)
* delete some unused variables

* bdef, remove unused vars

* remove some more
2021-01-15 08:31:01 +01:00
Marc Bernard
9ef3f1ee7e
Uninstall ENQU before TABL (#4412)
Lock objects must be uninstalled before corresponding tables
2021-01-15 08:27:48 +01:00
Marc Bernard
231d0c01e6
Fix ignore logic for local files (#4407)
Closes #4405

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-13 08:16:04 +01:00
ThomasPloski
468a1f3df8
Adjustment to BDEF Object Handler (#4012)
* Adjustment to BDEF Object Handler

Adjustment to BDEF Object Handler regarding exchange file format

* fix abaplint stuff

* fix abaplint issue

* adaptation in deserialize method

* fix abaplint issues

* fixes abaplinter issues

* requested changes

* fix type issue

* fix type issue

* delete unused method FILL_METADATA_FROM_DB

* enhance signature with exception information

* change reference type

* change to initial activation logic

* change to abap step for activation

* change of reference type as part of create Service

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-13 08:10:27 +01:00
Marc Bernard
830a682421
W3xx: Add object to transport on uninstall (#4402)
Fix missing transport entry when uninstalling `w3mi` and `w3ht`.

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-12 08:49:44 +01:00
Lars Hvam
889d062e1c
data, basic serialization (#4369)
* data

* refactor ZCL_ABAPGIT_SERIALIZE

* upd

* serializing

* cleanup

* fix

* fix

* rename
2021-01-09 10:50:58 +01:00
Marc Bernard
6b23aaa0fd
Reduce memory consumption during deserialize (#4389)
* Reduce memory consumption during deserialize 

Fix issue with namespace objects

https://github.com/abapGit/abapGit/pull/4357

* Unit test
2021-01-08 11:57:47 +01:00
Marc Bernard
46bc6dc5db
ENHC: Last changed by (#4380) 2021-01-05 07:55:19 +01:00
Lars Hvam
8b506aa077
omit some default parameter names (#4370)
* apack, omit parameter names

* mass and objects

* omit

* omit
2021-01-04 10:41:20 +01:00
Marc Bernard
25f2bf4d40
DDLS: Fix dump during serialization (#4371)
The specific dump occurred when the source was empty. Now it checks the string length properly.

Closes #4309

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-04 10:06:42 +01:00
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