* Create pull.yml
* Update zcl_abapgit_git_transport.clas.abap
* Update zcl_abapgit_git_transport.clas.abap
* Update pull.yml
* Update pull.yml
* Delete pull.yml
* Refactored popup logic
Related to #3040
Refactoring of popup logic/calling to be able to reuse it as commit list.
* Removed reset flag
Removed reset flag cause it doesn't belong to this PR (will be readded later)
Co-authored-by: pull[bot] <39814207+pull[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* add proxy bypass option in settings
* add proxy bypass popup and persist settings
* add proxy bypass to proxy config class
* Fix Proxy Bypass Button HTML
* Fix indentation
* Implement Method popup_proxy_bypass
* Fix behaviour in case of empty range tab
* Fix behaviour in case of empty range tab 2
* Create pull.yml
* Update zcl_abapgit_git_transport.clas.abap
* Update zcl_abapgit_git_transport.clas.abap
* Update pull.yml
* Delete pull.yml
* Tags: Error author regex
> Regex couldn't match with string "pull[bot] <39814207+pull[bot]@users.noreply.github.com> 1573216988 +0000" because "[]" weren't allowed
* abapLint
* Added unit test for author_regex
#3042
* Any character in author name and Unit Tests
#3042#3069
* Unit Tests and utils method for author regex
#3042#3069
> Unit Tests for author_regex (zif_abapgit_definitions)
> New utils method for regex check as utils method in zcl_abapgit_utils
> Regex for author expects now at least one character for the author name ('^(.+)'...)
> Use zif_abapgit_definitions%3D>ty_commit_tt instead of local type of the same type in class zcl_abapgit_branch_overview
* Changed utils method/tests and moved unit tests
#3042 - Error author regex
#3069 - Add unit tests
> Renamed is_author to extract_author_data and moved related source code from branch_overview to utils class
> Changed related unit tests to handle exception or not
> Moved unit tests to local class of zcl_abapgit_utils
* abapLint
* abapLint
* abapLint
* abapLint
* exclude 7bit test for testclass
* Order by on repo page
* move render_cols_pec to zcl_abapgit_gui_chunk_lib
* cleanup
* cleanup
* first new working version
* fix lint
* add OrderByHelper
* add new feature clear
* rename ICON to CLEAR
* cleanup
* refactor actions
* fix typo in method name
* remove duplication
* rename render_col_spec to render_order_by_table_he
* refactor type
* fix eslint warning
* isoltate repo_tab CSS
* fix non-code and metadata files at the top
* refactor
* cleanup
* new features "diffs first" + remove clear
* refactor
* take directories into account
* cleanup
* draft rewrite hint to be dynamic
* linter fixes
* remove color setting
* remove backspace and esc handling
* close dropdowns
* return some comments in JS
* linter fixes
* Fix hint for dropdown first time + alw close drdwn
* 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
* 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
* Hotkeys no longer depend on abapGit installation
When this commit is applied hotkeys also work with
the single abapGit report. Limitation is still that users
only can override hotkeys with the installed abapGit repo.
* Fix hotkey display when no user def. hotkeys
* New: Override hotkeys within one file abapGit report
When this commit is applied it's possible to override the default
shortcut also in the one file abapGit report. It's no longer necessary
to installe the full abapGit repo to use this feature
* Extract is_merged + check in hotkey logic
* 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
With this commit a new user setting called 'disable octicons' is
introduced. Octicons should be disabled when the client doesn't have
internet access or the abapGit UI hangs sometimes.
By default this option isn't active.
* Implement facade for Change Transport System
* Render lock item in VIEW_REPO
* Add jump to SE01
* Display transport on stage page
* Optimize transport read on stage page
* Error handling CTS
* Fix indentation
* Disable transport column for local packages
* Code review changes
* 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
* add smart response checks for ref discovery
Added content-type check and content regex check for reference discovery
see https://github.com/schacon/igithub/blob/master/http-protocol.txt
* move ref check constants to TRANSPORT class
the check constants - content regex and responce Content-Type - don't have to be global right now so moved from zif_abapgit_definitionsto zcl_abapgit_git_transport
* PP and activate
* Staging smaller chunks of code like git add -p
With this commit a new feature which works similar to git add -p
is added. We are now able to patch, which means that we can
commit on line basis. And are not restricted anymore to commit
only on file basis.
* move get_page_patch to stage page
* Refactor JS
* Refactor JS
This commit adds three new methods to ZCL_ABAPGIT_OBJECTS_SUPER:
- SERIALIZE_LONGTEXTS
- DESERIALIZE_LONGTEXTS
- DELETE_LONGTEXTS
They can be called on demand in concrete object type serializers.
In this commit they were called from DTEL, DOMA and TABL
* Introduce customizable hotkeys
With this commit customizable hotkeys are introduced. They can
be defined in the user specific settings. Currently we support
only one letter keybindigs e.g. 's', 't' or 'x' and no modifiers.
Every page in the UI can decide which actions it offers for the
hotkeys. Therefore we introduce the interface ZIF_ABAPGIT_GUI_PAGE_HOTKEY
with the method GET_HOTKEY_ACTIONS. At this point in time only
the main page offers actions for hotkeys, but the mechanism works
already for all pages. New actions for hotkeys can be defined
easily.
Hotkeys are only available for installed abapGit repositories.
Because we need to detect the classes which implement the above
mentioned interface and it seems that there is no easy way to do
that for local classes. Maybe we can add it later when we know more.
We don't supply default key bindings. So it is totally up to the
user to define them.
* provide default hotkeys
* Optimized git object handling
- Introduced secondary indices for ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECTS_TT to allow fast access to git objects by SHA1 and TYPE
- Added a new column INDEX to ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECT to allow reconstruction of the correct sort order of git objects when after processing in ZCL_ABAPGIT_GIT_PACK
- Optimized git object accesses in ZCL_ABAPGIT_GIT_PACK, ZCL_ABAPGIT_GIT_PORCELAIN and ZCL_ABAPGIT_MERGE by using the newly introduced indices
* Removed excess fields
Removed excess fields from secondary index definitions of ´ty_objects_tt´, since they are not required.
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
* Vimium like link hint navigation
After this commit is applied, the link hint navigation can be used.
The feature can be activated and configured in the user settings.
Role model is the link hint navigation in the Google Chrome plugin
Vimium.
* refactoring: introduce KeyNavigation prototype
* refactoring: introduce LinkHints prototype
* 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
- new default behaviour is that the last seen repo isn't deserialized automatically. Instead the user has to choose a repo to work with
- old behaviour can be reactivated via user setting
- new local setting to set check variant
- new local setting to block pull if code inspector check fails
- check is executed before staging
- new page to display code inspector results
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
For the parameters WI_ORDER_TYPE and WI_TASK_TYPE of the function
TRINT_ORDER_CHOICE called from the method popup_transport_request
of the class zcl_abapgit_popups.
Sometimes we need a repair task but the function TRINT_ORDER_CHOICE
searches for Development/Correction tasks.
I hope that we can decide what task type is needed by a package (DEVC).
Related to #1446
* Merging per Textfile
* Add files via upload
* Delete WolfTreak_ABAPGIT_Merging
* Refactoring vom Coding, Darstellung verbessert
* Merging page changed and also merging class extended to instance and conflict methods added
* Refactoring for Travis
* Refactoring for Travis
* Escaping of merged content functions now correct
* ZCL_ABAPGIT_PERSIST_MIGRATE cleanup old migration
* delete ZCL_ABAPGIT_SERVICES_DB
by refactoring use to GUI pages
* pretty settings in db overview page
* refactor write protect and ignore subpackages
to local settings structure, this makes it a lot easier to exetend, plus adds structure
* delete method GET_MASTER_LANGUAGE
* add local settings to repo settings page
* add setting for only local objects #1260
* lcl_background to global
* lcl_branch_overview to global
* lcl_services_git to global
* lcl_services_repo and lcl_services_db to global
* lcl_services_abapgit to global
* lcl_gui_chunk_lib to global
* lcl_gui_view_tutorial to global
* lif_auth to global
* lcl_auth and lcl_gui_view_repo to global
* lcl_view_repo
* lcl_gui_page_syntax to global
* 2 pages to global
* refactor router, less dynamic references
* background pages to global
* branch overview to global
* settings page to global
* repo settings page to global
* explore page to global
* diff page to global
* debug info to global
* main page to global
* refactor router, no dynamic references
* db pages to global
* router to global
* gui to global
* clean up includes
* move type definnition to interface
to avoid syntax error after abapmerge
* move types to interface
* move types to interface
* rename tyep
* move type
* move types
* move type