Michael Muré
3cf31fc404
repository: merge git.Hash in for one less /util package
2020-07-01 19:39:02 +02:00
Michael Muré
2ab6381a94
Reorganize the webUI and API code
...
Included in the changes:
- create a new /api root package to hold all API code, migrate /graphql in there
- git API handlers all use the cache instead of the repo directly
- git API handlers are now tested
- git API handlers now require a "repo" mux parameter
- lots of untangling of API/handlers/middleware
- less code in commands/webui.go
2020-06-27 23:03:05 +02:00
Michael Muré
88ad7e606f
repository: remove tie to Bug, improved and reusable testing
...
- allow the creation of arbitrary Lamport clocks, freeing the way to new entities and removing Bug specific (upper layer) code.
- generalize the memory-only and persisted Lamport clocks behind a common interface
- rework the tests to provide reusable testing code for a Repo, a Clock, a Config, opening a path to add a new Repo implementation more easily
- test previously untested components with those new tests
Note: one problem found during this endeavor is that `identity.Version` also need to store one time + Lamport time for each other Entity (Bug, config, PR ...). This could possibly done without breaking change but it would be much easier to wait for https://github.com/MichaelMure/git-bug-migration to happen.
2020-06-26 19:14:22 +02:00
Michael Muré
c326007d01
fix cache not rebuilding properly
2020-06-26 00:58:38 +02:00
Michael Muré
aab3a04d0c
bug: harmonize how time are used, fix some issues in command special formats
...
This assume that the convertion from time.Time <--> Unix timestamp is lossless which seems to be.
2020-06-25 23:18:17 +02:00
Michael Muré
314fcbb229
query: no need for an ast package
2020-03-28 17:13:28 +01:00
Michael Muré
5e4dc87ffe
cache: replace the all-in-one query parser by a complete one with AST/lexer/parser
2020-03-28 17:13:27 +01:00
Michael Muré
e0a702f41d
cache: fix missing login in LegacyAuthorExcerpt causing panic
2020-03-05 21:57:55 +01:00
Michael Muré
893de4f5c0
identity: bring back the login to hold that info from bridges (purely informational)
2020-02-25 21:35:57 +01:00
Michael Muré
e9aff2a2a1
Merge remote-tracking branch 'origin/master' into cheshirekow-jira
2020-02-14 22:56:59 +01:00
Michael Muré
929480fa0a
graphql: expose the name of Repository
2020-02-12 21:03:20 +01:00
Michael Muré
b3d3612393
Merge remote-tracking branch 'origin/master' into cheshirekow-jira
2020-02-09 20:23:38 +01:00
Michael Muré
b7dc5b8aeb
cache: add proper locking to avoid concurrent access
2020-02-09 02:44:00 +01:00
Michael Muré
81f5c3e0af
graphql: use the cache in priority for fast browsing at < 20ms instead of seconds
2020-02-09 02:18:44 +01:00
Michael Muré
74e9114410
more more wip
2020-02-08 17:19:57 +01:00
Michael Muré
8da522d97a
wip
2020-02-08 17:18:30 +01:00
Michael Muré
da0904d238
cache: rework resolving of bugs, identity
2020-02-08 17:18:29 +01:00
Michael Muré
390b13c9ff
identity: rework mutation
2020-02-08 17:18:29 +01:00
Michael Muré
f093be96e9
cache: don't store legacy identities IDs in bug excerpt as they are not reachable. Fix a panic
2020-02-03 22:02:01 +01:00
Josh Bialkowski
cd889572f7
codereview #2 : some cleanup, correct use of nothing-events
...
* return error, don't panic
* skipping status export is an error
* use switch in config.go
* move PromptPassword to input
* move client construction into getIdentityClient
* use non-pointer context throughout client since it is an interface
* remove some TODOs
* don't emit multiple nothing-events, just one per bug only if nothing
happened.
* rename EditBody to EditCreateComment
* add configuration notes about additional values
* store bug id map in a dictionary in the config
* some fixes from testing
2019-12-18 07:42:16 -08:00
Josh Bialkowski
eff830bdcb
Implement jira bridge
2019-12-18 07:42:13 -08:00
Michael Muré
da6591e480
cmd: "user create" only assign the user identity if not set
2019-12-10 20:13:49 +01:00
amine
8b5685bb99
bridge/github: importer corectly emit events
2019-11-19 19:54:07 +01:00
amine
618f896f66
cache: update RepoCache and identity to use new repository Config
2019-11-01 22:01:21 +01:00
Sebastien Devaux
7e123fbfca
issue 178: fetch the repo dir with rev-parse --git-dir
...
Since is returns the .git dir directly, it is not more needed to
concatenate .git.
2019-08-24 22:42:25 +02:00
Amine Hilaly
5ca326af83
bridge/core: add context.Context to ImportAll and ExportAll signatures
...
bridge/core: add ImportResult objects to stream import events
bridge/core: launchpad support asynchronous import
bridge/github: cancellable export and import functions
bridge/gitlab: cancellable export and import functions
commands: bridge pull/push gracefull kill
bridge/github: fix github import
bridge/github: use simple context for imports
bridge/core: name parameters in interfaces
github/core: Add EventError to export and import events types
bridge/gitlab: add context support in gitlab requests functions
bridge/gitlab: remove imported events count from importer logic
bridge/github: remove imported events count from importer logic
bridge/github: add context support in query and muration requets
bridge/github: fix bug duplicate editions after multiple calls
bridge/core: import import and export events String methods
bridge/gitlab: fix error handling in note import events
commands/bridge: Add statistics about imports and exports
bridge/gitlab: properly handle context cancellation
bridge/github: improve error handling
bridge: break iterators on context cancel or timeout
bridge: add context timeout support
bridge: improve event formating and error handling
commands: handle interrupt and switch cases
bridge/github: add export mutation timeouts
bridge: fix race condition bug in the github and gitlab importers
bridge/github: improve context error handling
2019-08-18 00:14:22 +02:00
Michael Muré
99b5c58d43
finish the refactoring for the dedicated identifier type
2019-08-12 16:12:14 +02:00
Michael Muré
67a3752e17
bug,entity: use a dedicated type to store IDs
2019-08-11 14:08:03 +02:00
Michael Muré
612a29b031
fix everything following the hash-->id change
2019-08-08 19:06:13 +02:00
Amine Hilaly
e511f3d885
[misc] update man docs and completion scripts
...
[cache] BugCache: Fix set metadata raw
[bridge/github] Fix graphql input objects
2019-06-24 21:30:45 +02:00
Amine Hilaly
6451dd2928
[cache] BugCache: Add set metadata methods
...
[bridge/github] fix add/remove mutation requests
[bridge/github] iterator: fix typo
2019-06-24 21:26:34 +02:00
Michael Muré
9f4da4ce4f
cache: consistently use "ref" to fetch a repository
2019-06-23 21:28:01 +02:00
Michael Muré
bc03a89aa7
fix tests
2019-06-16 21:40:45 +02:00
Michael Muré
b2f8572c44
graphql: change mutations to respect the Relay specification
...
https://facebook.github.io/relay/graphql/mutations.htm
This specification also allow to expose a mutationId for fire and forget,
as well as the created operation.
2019-06-16 21:29:49 +02:00
Michael Muré
08c0e18ade
cache: expose the operation when creating a new bug
2019-06-16 21:04:36 +02:00
Sladyn
2c4c0132bf
Add GetRemotes functionalities
2019-05-29 22:58:01 +02:00
Michael Muré
d564e37b31
repository: add ReadConfigBool and ReadConfigString functions
2019-05-27 21:39:55 +02:00
Michael Muré
c7abac388a
repo: refactor how test repo are created/cleaned
2019-05-27 21:14:55 +02:00
Amine Hilaly
f7ea3421ca
Add ForceLabelChange functionalities
2019-05-05 18:16:10 +02:00
Michael Muré
cc3a21acb6
doc: add an architecture overview
2019-04-18 02:48:27 +02:00
Michael Muré
5eeeae7cdf
commands: fix ls not displaying the new Identities properly
2019-04-11 20:04:44 +02:00
Amine Hilaly
1d00ded250
implement identityExcerpt match method and integrate it into filters
...
Update docs
2019-04-05 16:56:08 +02:00
Amine Hilaly
98169d5ad1
Support query with identity ID and truncated ID
2019-04-05 15:29:14 +02:00
Amine Hilaly
57f0c2f25d
improve docs
2019-04-05 00:01:08 +02:00
Amine Hilaly
682da55271
Improve actor/participant query filters
...
Lower case identity login
2019-04-04 17:21:40 +02:00
Amine Hilaly
2a5fbc4dc9
Expose actors and participants in snapshot and bug excerpt
...
Append operations authors to each list on Apply() call
Expose actors and participants in graphql
Add actor/participant query filter and documentation
2019-04-04 00:37:57 +02:00
Michael Muré
96987bf6ae
cache: add a push/pull test
2019-04-02 22:01:42 +02:00
Sladyn
1d758f9f64
cache/filter.go: Fix and match for labels
...
Fixed filter query for multiple labels from
`OR` to `AND` according to github conventions.
Fixed https://github.com/MichaelMure/git-bug/issues/115
2019-03-31 16:09:29 +05:30
Michael Muré
24d6714dd5
cache: properly push/pull identities and bugs
2019-03-27 21:44:11 +01:00
Michael Muré
d27e3849b8
cache: add basic unit testing
2019-03-25 22:06:01 +01:00