Commit Graph

4570 Commits

Author SHA1 Message Date
Marc Bernard
cd6da45a12
ENHx: Improve error messages (#4686)
Include reference to previous exception and exception texts in error messages for enhancement implementations (`ENHO`, `ENHC`)
2021-04-07 17:48:53 +02:00
Lars Hvam
1fb55fe3e8
TLOCK performance (#4636)
* add new method get_transports_for_list

* downport

* read tlock into local buffer

* fix

* refactor

* upd

* cleanup

* bugfix

* return data

* refactor staging page to use new logic

* lower case

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-04-03 09:06:45 +02:00
Marc Bernard
bf5199b8d2
APACK: Replace interface name with constant (#4684)
* APACK: Replace interface name with constant

Closes #4248

* Lint

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-03 08:59:44 +02:00
Marc Bernard
de6f8b9bbc
Ignore unit test if experimental features are not enabled (#4683)
Closes #4678

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-03 08:47:22 +02:00
Marc Bernard
2a99c742eb
Add header for status column in repo view (#4680)
* Add header for status column in repo view

* Sort status

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-04-01 17:12:54 +02:00
Marc Bernard
b6e7efd75b
New online repo: Replace "clone" with "create" (#4682)
Closes #4681
2021-04-01 17:11:11 +02:00
Alexander Tsybulsky
e5e558a312
Log refactoring, part 1 (#4676)
* log: new features

* log in exception

* log via gui_services

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-27 10:57:57 +01:00
Marc Bernard
56a0dca134
Refactor: Objects Class (#4664)
* Refactor: Objects Class

Splits `zcl_abapgit_objects` into smaller classes

Moves the following methods and related test cases:

`zcl_abapgit_objects_check`
- `deserialize_check`
- `warning_overwrite_find`
- `warning_package_find`
- `checks_adjust`
- `warning_overwrite_adjust`
- `warning_package_adjust`

`zcl_abapgit_files_deserialize`
- `files_to_deserialize`
- `filter_files_to_deserialize`
- `prioritize_deser`
- `adjust_namespaces`

* PP

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-27 10:46:38 +01:00
Marc Bernard
fd49e8dbe6
No changes during upgrade or locked system/client (#4674)
In addition to the client setting (repository objects modifiable or not, scc4), abapGit will not allow changes to any local objects, if

- system is set to "not modifiable" (se03)
- system is running an upgrade
- system is a shadow system

Closes #4267

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-27 10:29:38 +01:00
Mike Pokraka
624616674c
Replace SELECT * with field list (#4675) 2021-03-27 09:07:08 +01:00
Marc Bernard
73dde20557
Add warning if namespace is not modifiable (#4669)
* Add warning if namespace is not modifiable

Closes #4648

* If

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-26 09:11:35 +01:00
Marc Bernard
0c2f060445
Fix namespace check (for DOCT objects) (#4671)
Improve regex to avoid conflict with object names that contain multiple `/`

Closes #4670
2021-03-26 06:45:48 +01:00
Marc Bernard
8f0532d015
ENHC: Fix error when updating object (#4667)
If the composite enhancement already exists, trying to update it fails with error "Error while creating enhancement implementation"

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-25 12:19:34 +01:00
Marc Bernard
18d484af39
PROG: Refactor deserialize and fix inactive code (#4657)
* PROG: Refactor deserialize and fix inactive code

This is a follow-up to #4500, #4509, #4518

- Split `ZCL_ABAPGIT_OBJECTS_PROGRAM->DESERIALIZE_PROGRAM` into smaller methods
- `INSERT_PROGRAM` now uses standard `RPY_PROGRAM_INSERT` and only does `INSERT REPORT` in exceptional cases like function groups (see below)
- Special case of Code Inspector variants is handled by `ZCL_ABAPGIT_OBJECT_PROG->DESERIALIZE_WITH_EXT` since these aren't actual programs (but includes containing data)

Using the standard function fixes the issue of inactive code that can't be accessed after a pull. This used to happen, for example, when a program contained syntax errors due to missing objects.

* Update zcl_abapgit_objects_program.clas.abap

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-25 07:56:20 +01:00
Marc Bernard
4c8f7fe117
ENHO: Clear fields for exceptions (#4666) 2021-03-24 14:55:11 +01:00
g-back
eee6b00378
Minor fixes/changes (#4665)
* remove assert, remove unused variable

* update documentation, follow-up to #4663
2021-03-24 13:34:02 +01:00
Kjetil Kilhavn
cfcee287a8
Fix for Java GUI so new repo can be defined (#4655)
* Fix for Java GUI so new repo can be defined

The HTML demo programs are able to pass values from a form, so why does abapGit not work with Java GUI?
I've been trying to figure this out. The key to a break-through was not any fancy code analysis, it was "brute force".
I added a method in ZCL_ABAPGIT_HTML_FORM to replace the generated HTML by a copy of the resulting HTML. Then I removed things until POST-data was filled, and added things back until it broke again.

The main issue was of course the complete lack of POST-data for the event.
This is solved by adding an action attribute to the form element and removing the form-action attribute from the 'default' submit button.

The biggest surprise was that radion buttons don't work as they should. Values are returned as if both radio buttons (in the new online repository form) are checked - which of course is not possible. I tried enabling the query table in the HTML viewer just in case this was specific to the POST-data, but no such luck, it is probably a problem with the HTML viewer itself. You won't find any samples from SAP with radio buttons either.
The bug is possibly fixed by the patch in Note 2832978.

The solution is far from perfect, but at least it is now possible to add new repositories in Java GUI.
The most annoying problem that remains is that if a dialog is opened to select a package or branch the existing input data are lost. One step at a time though...

* Update src/ui/zcl_abapgit_html_form.clas.abap

Linter fix

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

* Single-parameter calls on one line

One extended line, mind you...

* One argument per line - when possible

Don't break the string expression up over more lines thna neessary.

* Keep line length under 120 characters

* Playing catch-up

Fixing the conflict after another pull-request was merged

* Catch up with main branch

I didn't understand from the conflict resolution view on github the total difference between main and my fork. Looked at the source file and it became clear. 
So hopefully this is the last commit... (and hopefully that won't be "famous last words")

* Time to learn about rebase...

Removed duplicate statement to get number of rows

* Conflicting line reset

Reset to main
<<<<<<< kjetil-kilhavn/javagui-fix
          ii_html->add( |<td><input type="text" name="{ lv_cell_id }" id="{ lv_cell_id }"|
                     %26%26 | value="{ lv_value }"{ lv_readonly }></td>| ).
=======
          ii_html->add( |<td><input type="text" name="{ lv_cell_id }" id="{
                        lv_cell_id }" value="{ lv_value }"{ lv_readonly }></td>| ).
>>>>>>> main

Now, may I have all green lights please?

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-24 12:55:53 +01:00
Lars Hvam
65c9b5c717
update abaplint to latest (#4662)
* update abaplint to latest

* upd
2021-03-24 12:53:50 +01:00
Marc Bernard
a68cbbd5ce
Refactor "Background Mode" to HTML Form (#4663)
* Refactor "Background Mode" to HTML Form

ref #4171

- Moved "Background Mode" from "Advanced" menu to "Repo Settings"
- Changed Bckg Setting and Bckg Run to new HTML pages

* Add back_toolbar
2021-03-24 12:50:53 +01:00
Marc Bernard
18c9b404f1
Empty tables in HTML forms (#4658)
Previously if there were no data rows, it would render just the column headers of the table. 

After this change, it shows "Not available".

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-23 06:49:04 +01:00
Marc Bernard
1104c88e48
Data deserialize (#4654)
* Data deserialize

Continuing on #3441 

- Fixes issue with namespaced tables 
- Adds deserialize of table content during pull but does NOT persist changes to database

`zcl_abapgit_repo->deserialize` now contains the following call to deserialize "data":

```abap
    zcl_abapgit_data_factory=>get_deserializer( )->deserialize(
      ii_config  = get_data_config( )
      it_files   = get_files_remote( )
      iv_persist = abap_false ). "<<no persisting, just test for now
```

Closes #4650

* Fixes and max record check

* Get result preview

* Split deser/actualize

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-23 06:40:09 +01:00
Marc Bernard
e143ec7f70
SOTS: Fix error during deserialize (#4660)
Error "The concept will be created in the non-original system" (`SOTR_MESS  137`) 

It's not an error (see function `SOTR_STRING_CREATE_CONCEPT`) and has been removed.
2021-03-23 06:34:42 +01:00
Lars Hvam
3193550f66
1.107.0 (#4656)
* 1.107.0

* v1.107.0
2021-03-22 13:27:31 +01:00
g-back
1cbda2f2ae
Refactor "Export Package to ZIP" to HTML Form (#4652)
* refactor export package to zip to HTML form

* change literal to constant

* downport statement

* remove popup package_export

* reorder methods, unify whitespace

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-22 13:17:54 +01:00
Lars Hvam
cac2de1ced
user exit: wall messages (#4653)
* wall messages

closes #4530

* update docs
2021-03-22 13:15:03 +01:00
Jānis B
59479570c5
Change DDIC activation mode (#4503)
* Fixes DDIC activation

The changes mimic the behavior of CTS Activatin Job as of 7.40 SP 23

* fixes Activation of dependant DDIC (#4496)

The change attempts to mimic behaviour of SAP CTS DDIC Mass Activation Job

* Revert to DDMODE = 'O'

Reverts to activation mode "in original" system; adds "forced activation" (FRCACT = abap_true)

* restore variable definitions

* and Pretty Printer

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-22 13:12:49 +01:00
Daniel Wegner
193ad660fd
Respect wildcard characters in proxy bypass settin (#4649)
Co-authored-by: Daniel Wegner <d.wegner@fis-gmbh.de>
2021-03-18 19:08:02 +01:00
Marc Bernard
56bd2b1b13
Add measures to repo stats (#4646)
* Add measures to repo stats

- Lines in ABAP Files
- Lines of Code in ABAP Files (no empty or comment lines)

* Split read_stats

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-17 07:17:02 +01:00
Lars Hvam
11fd111572
move perf test option to new repo (#4645)
* move perf test option to new repo

Moving the performance test option to separate repository,
https://github.com/abapGit/performance-test

I guess this feature is not used very often, it will reduce the overall code size, and instead of refactoring these popups to HTML they can stay ALVs in the new repo

* fixes
2021-03-17 07:12:59 +01:00
Lars Hvam
630012aea9
refactor presist check to persist level (#4644)
The old code called the REPO service class to check if a repo exists, to better encapsulate the packages, the check will now stay inside the persistence package
2021-03-17 07:10:31 +01:00
Lars Hvam
055d631d75
update deps (#4638)
* update deps

* add ZCL_ABAPGIT_GIT_ADD_PATCH

* upd
2021-03-16 16:56:06 +01:00
Lars Hvam
e31e641f10
overview page, dont display ".git" (#4632)
* overview page, dont display ".git"

dont display ".git" in the urls in the overview page, to save a bit more horizontal space

also see #4539

* dont use regex
2021-03-16 16:51:04 +01:00
Lars Hvam
5a121a2174
perf test, dont look for current package (#4642)
the user can input the package anyhow

decouples the perf test option from gui #4639, plus will make it easier to implement #4641
2021-03-15 15:54:56 +01:00
Lars Hvam
16ca0fef77
ZCL_ABAPGIT_GUI delete unused GO_PAGE (#4640) 2021-03-15 15:30:21 +01:00
Lars Hvam
f108143a90
add ORDER BY (#4629)
* add ORDER BY

* wdcc, add ORDER BY

* wapa add order by

* udmo, add order by

* tobj, add order by

* stvi, add order by

* CHAR, add order by

* CMOD, add order by

* dial, order by
2021-03-15 15:25:02 +01:00
Lars Hvam
70fdc8771e
CTS API: remove unused iv_resolve_task_to_request (#4633) 2021-03-13 13:29:05 +01:00
g-back
72f34f5bdf
Refactor "Object to Files" to html form (#4623)
* start conversion from popup to html form

* replace magic with constants

* revert label

* restructure to gui component


modify export object logic

* adjust whitespace

* remove test_changed_by functionality

* remove popup_object

Co-authored-by: Goran Back <g.back@geringhoff.de>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-12 12:31:17 +01:00
Lars Hvam
a5856a04c7
update npm deps, update abaplint configuration to latest (#4628)
* update deps

* update abaplint config

* update to latest

* upd

* upd
2021-03-12 07:17:05 +01:00
Marc Bernard
a1cc7f8668
CLAS: Fix several issues related to class includes (#4510)
* CLAS: Remove test class include

Once unit tests are disabled, the test class include is now completely removed (before it might have still contains obsolete code).

Closes #4460

* Reverse pp

* Update 6 objects

* Typo

* Typo

* Revert

* Revert

* Revert

* Revert

* Revert

* Lint

* Update zcl_abapgit_oo_class.clas.abap

* Move add_to_activation

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-12 07:05:47 +01:00
Mike Pokraka
bb0591f12e
Update unit test to match changed message (#4631) 2021-03-12 07:02:25 +01:00
g-back
71c4849ae5
Minor Fixes (#4627)
* remove exception from signature, remove comment

* change search help, try fieldname first

* enable lang switch when multiple tcodes are assgnd
2021-03-11 14:51:48 +01:00
Lars Hvam
8dc1156d75
Apack migration, Suppress dialog (#4616)
#4612
2021-03-10 07:31:18 +01:00
Lars Hvam
26c81be9fd
Refactor "Change Remote" to html form (#4617)
* Refactor "Change Remote" to html form

* upd

* cleanup

* less whitespace

* update logic and descriptions
2021-03-10 07:29:13 +01:00
Marc Bernard
f28d3e9441
CI Tests: Small improvements (#4618)
- Allow passing of longer test repo names (len > 4)
- Raise errors after each test phase
2021-03-09 17:00:36 +01:00
yellappam
0f2020b5c1
Unsupported object count in repo statistics (#4601)
* Add unsupported object count in repo statistics

* lint fix: Keep single parameter on one line

* Fix indentation

* Undo changes to TADIR and DEFINITIONS

Undo changes to ZCL_ABAPGIT_TADIR and ZIF_ABAPGIT_DEFINITIONS

* Refactor code

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-09 12:13:10 +01:00
Lars Hvam
f6fe626cbb
update deps + abapmerge, expand unit testing (#4604)
* update deps

* upd

* upd

* update deps

* another file covered

* update deps

* add intf

* add intf

* update to latest

* update

* zcl_abapgit_time covered

* update deps

* zcl_abapgit_html_action_utils done

* add zcl_abapgit_gui_event

* update abapmerge
2021-03-09 07:22:17 +01:00
Christian Günter
d7e43fc0b9
Diff calculation: improve performance (#4603)
* Diff calculation improve performance

* optimize table access

Co-authored-by: Christian Günter <Christian.Guenter@zuerich.ch>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-07 12:25:10 +01:00
Lars Hvam
72f08d64b1
refactor, remove use of CNHT_POST_DATA_LINE (#4607) 2021-03-07 12:18:20 +01:00
Lars Hvam
d7f74bd49c
zif_abapgit_poups cleanup (#4608)
* zif_abapgit_poups cleanup

delete method POPUP_TO_INFORM

* delete method POPUP_PROXY_BYPASS
2021-03-07 12:15:26 +01:00
Jakub Filak
cce8660054
objects: do not consider only native objects as supported (#4611)
After the pull request:
https://github.com/abapGit/abapGit/pull/4589

Objects supported by abapGit-plugins are not deserialized and
all are reported as not supported.

Closes #4610

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-06 22:31:49 +01:00