profile
viewpoint

zhiburt/g2h 1

A straightforward terminal graph viewer

zhiburt/niping 1

ping implementation in rust

zhiburt/actix-cache 0

Actix cache is a proxy actor and infrastructure for asynchronous and clear cache interaction for Actix actor and Actix-web frameworks.

zhiburt/bat 0

A cat(1) clone with wings.

zhiburt/bumpalo 0

A fast bump allocation arena for Rust

zhiburt/card_solution 0

wpf ui + dotnet core server

zhiburt/cargo-readme 0

Generate README.md from docstrings

zhiburt/cargo-spellcheck 0

WIP - Checks all your documentation for spelling mistakes

zhiburt/clima 0

A minimal viewer for Termimad

zhiburt/dictionary 0

dictionary sevice on gokit

push eventzhiburt/postal-rs

Maxim Zhiburt

commit sha 81691d55b7f3ff7246e164d83c0f3b281596cf9d

Init

view details

push time in 12 hours

create barnchzhiburt/postal-rs

branch : master

created branch time in 12 hours

create barnchzhiburt/postal-rs

branch : main

created branch time in 12 hours

created repositoryzhiburt/postal-rs

An http postal API library

created time in 12 hours

push eventzhiburt/gitea

Maxim Zhiburt

commit sha af3cff6e1f999da27481327bbf1d876f5344041c

Add copyright comment

view details

push time in a day

push eventzhiburt/gitea

Maxim Zhiburt

commit sha 6968eb935403fed5bfd665840eda50bc829fdf28

Fix mispelling

view details

push time in a day

pull request commentgo-gitea/gitea

Sendmail command

Thanks for the clarification.

So I've update the PR to use a private API

zhiburt

comment created time in a day

push eventzhiburt/gitea

Maxim Zhiburt

commit sha 3d5b393f1ef5c18de9f3973cfbfbafdfd3e29d3c

Connect to a running Gitea instance

view details

Maxim Zhiburt

commit sha cee82fff96ff1432998d32ec69070530786f58bf

Merge branch 'sendmail_command' of github.com:zhiburt/gitea into sendmail_command

view details

push time in a day

push eventzhiburt/gitea

Maxim Zhiburt

commit sha b350eea0cf54dbddc0bed21305d26ae4d05956f8

Update cmd/admin.go Co-authored-by: 6543 <6543@obermui.de>

view details

push time in 2 days

issue closedstevepryde/xenon

config/ Make driver_path optional

I think it doesn't necessary to provide a path. By default xenon could assume that it's visible (driver could be located through $PATH)

closed time in 2 days

zhiburt

pull request commentstevepryde/xenon

Make driver_path optional, instead use default name of drivers

@stevepryde ping, is this PR in a good shape?

zhiburt

comment created time in 2 days

Pull request review commentgo-gitea/gitea

Sendmail command

 var ( 		Action: runAddOauth, 		Flags:  oauthCLIFlags, 	}++	subcmdSendMail = cli.Command{+		Name:   "sendmail",+		Usage:  "Send a message to all users",+		Action: runSendMail,+		Flags: []cli.Flag{+			cli.StringFlag{+				Name:  "title",+				Usage: `a title of a message`,+				Value: "",+			},+			cli.StringFlag{+				Name:  "content",+				Usage: "a content of a message",+				Value: "",+			},+			cli.BoolFlag{+				Name:  "force,f",+				Usage: "A flag to bypass a confirmation step",+			},+			cli.DurationFlag{+				Name:  "timeout",+				Usage: "A timeout of sending emails",+				Value: 0,

If you're about an expected format it uses a Duration format so you can specify it via prefixes like 3s, 10m, 1h etc.

zhiburt

comment created time in 2 days

PullRequestReviewEvent

Pull request review commentgo-gitea/gitea

Sendmail command

 var ( 		Action: runAddOauth, 		Flags:  oauthCLIFlags, 	}++	subcmdSendMail = cli.Command{+		Name:   "sendmail",+		Usage:  "Send a message to all users",+		Action: runSendMail,+		Flags: []cli.Flag{+			cli.StringFlag{+				Name:  "title",+				Usage: `a title of a message`,+				Value: "",+			},+			cli.StringFlag{+				Name:  "content",+				Usage: "a content of a message",+				Value: "",+			},+			cli.BoolFlag{+				Name:  "force,f",+				Usage: "A flag to bypass a confirmation step",+			},+			cli.DurationFlag{+				Name:  "timeout",+				Usage: "A timeout of sending emails",+				Value: 0,

If you are speaking about default value It's not actually, as I've seen how mail service works when you set a Duration value to 0. There will be not timeout tracker. So it set intentionally to 0

zhiburt

comment created time in 2 days

PullRequestReviewEvent

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

It turns out after 4 days of debug.... :disappointed: (Yes I am so bad (kinda :smiley: ))

That there's main issues in optimization:

  • we cann't rebuild a tree at the time we are traversing it. There's 2 main reason here.
    • We may shadow not traversed yet node
    • And something else which I forgot
  • We need also some aditional storage for tmp variables.

That's why now I allocate a tempraly hashtable to put changes there. And I use tree_depth as temporaraly variable while traversing

zhiburt

comment created time in 2 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 5002e4f386681c908d959cb3a14f16eca0d549fe

Fix an optimization algorithm Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 2 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha bf2fb060c59cbf275ed903ac32b7a1245ecb1c58

Add an optional `provider_extension_id` field to an extension Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 2 days

pull request commentgo-gitea/gitea

Sendmail command

@lunny

I think we should do that via internal API but not push to the queue directly as @zeripath said.

@zeripath

If it is intended to communicate with a running Gitea we should create and use an internal api to call and communicate with the running server.

But use an API as an admin we need to authenticate yourself right? Maybe there's no reason to?

zhiburt

comment created time in 3 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 5c4fb3857a3b0b3d4e8e22a40de56b1f6dbab69e

Fix trailing whitespaces Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 4 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 7da16a5dfdc7f8b1af866544a1f444189137b0d5

Fix warnings Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 4 days

push eventzhiburt/htop

Zev Weiss

commit sha 2899ed4cb00f4d887ee92c91e274ef098fd14f2b

Number CPUs from zero by default. Numbering from one is idiosyncratic and inconsistent with basically everything else in the world; it doesn't make much sense as default behavior. All naming is updated to reflect that numbering from one is a non-default, opt-in option. The old label of the flag saved in htoprc ("cpu_count_from_zero") is still supported for backwards compatibility with existing configs, however.

view details

Bart Joy

commit sha 816734e2d4608e6ee2d4c0098c4f3bdb8c702b66

Add screen shot of htop to readme Added a basic screenshot of htop in action to the readme so that visitors to the page can quickly get a rough idea about what htop does.

view details

Christian Göttsche

commit sha 898a6903758ab64d59412c638322395f918537e8

Do not hard-code line numbers in help screen building code

view details

Benny Baumann

commit sha 29346d05616ce69e5988b3f1257c340f91299602

Provide basic configuration for IWYU

view details

Benny Baumann

commit sha 0f5262917fab34b44b43f63946fdf6bb0621875a

Make all required includes explicit Information as seen by IWYU 0.12 + clang 9 on Linux

view details

Christian Göttsche

commit sha 0db398d4c3472071b2814505242450cd8f831501

Allow low and high value of CLAMP to be equal Can for example occur in RichString_setAttrn(), when pausing and resuming process tracing: htop: RichString.c:56: void RichString_setAttrn(RichString *, int, int, int): Assertion `(0) < (this->chlen - 1)' failed. ./htop(backtrace+0x5b)[0x45d9eb] ./htop(CRT_handleSIGSEGV+0x189)[0x4ebab9] /lib/x86_64-linux-gnu/libpthread.so.0(+0x14140)[0x7fd249d35140] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fd249b6ac41] /lib/x86_64-linux-gnu/libc.so.6(abort+0x123)[0x7fd249b54537] /lib/x86_64-linux-gnu/libc.so.6(+0x2540f)[0x7fd249b5440f] /lib/x86_64-linux-gnu/libc.so.6(+0x345c2)[0x7fd249b635c2] ./htop(RichString_setAttrn+0x234)[0x526de4] ./htop(RichString_setAttr+0x50)[0x5275c0] ./htop(Panel_draw+0x17b6)[0x514c26] ./htop(InfoScreen_run+0x305)[0x4fe7a5] ./htop[0x4d59d8] ./htop[0x5029cf] ./htop(ScreenManager_run+0x69f)[0x52a82f] ./htop(main+0x704)[0x4f8774] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea)[0x7fd249b55cca] ./htop(_start+0x2a)[0x4268ea]

view details

Christian Göttsche

commit sha 361877454fe56c95a995d5bdbb7eb70c21e39d62

Cache PAGE_SIZE man:sysconf(3) states: The values obtained from these functions are system configuration constants. They do not change during the lifetime of a process.

view details

Christian Göttsche

commit sha 96e2a4259eb0cdf279b83d899f805d274d13a94f

Continue to update generic data in paused mode Generic data, as CPU and memory usage, are used by Meters. In paused mode they would stop receiving updates and especially Graph Meters would stop showing continuous data. Improves: #214 Closes: #253

view details

Christian Göttsche

commit sha 577416d1a946382ab9f0c523e5fae755f9d71f69

Assert allocating non-zero size memory Allocating zero size memory results in implementation-defined behavior: man:malloc(3) : If size is 0, then malloc() returns either NULL, or a unique pointer value that can later be successfully passed to free().

view details

Christian Göttsche

commit sha 4c66eb6d4cbdddc658e5f0274d8130155c6013f1

XUtils string related updates - allow count out-parameter of String_split() to be NULL - introduce xStrndup() - do not allow NULL pointers passed to String_eq() it is not used in any code - implement String_startsWith(), String_contains_i() and String_eq() as inline header functions - adjust several conversion issues

view details

Daniel Lange

commit sha 2d57d289b13011a7d237c9486053ef83af978018

Merge branch 'cache_pagesize' of cgzones/htop

view details

Daniel Lange

commit sha 475fd1ec2ddd88a7b0a3109a89ed6c587f7761b7

Merge branch 'help_lines' of https://github.com/cgzones/htop

view details

Daniel Lange

commit sha a0fb6e34f9e2dd83f535f3058f1a358637773298

Merge branch 'number-cpus-from-zero' of zevweiss/htop * This changes the default to count CPUs from zero (instead of starting at one) * Settings logic is inverted, backwards compatibility is preserved

view details

Daniel Lange

commit sha 9f1a9ab2c2d5984887f5b821afd34a8480790877

Merge branch 'header_pause' of cgzones/htop Continue to update generic data in paused mode

view details

Daniel Lange

commit sha 0ea18a6edbbf97c7bab21bb2aab40cf8213858e3

Merge branch 'Xalloc_Cleanup' of cgzones/htop

view details

Daniel Lange

commit sha 0c5430982e17029f90a55d0425781d6be0e244d3

Merge branch 'screenshot' of nzbart/htop

view details

srajmane

commit sha dea19b644f463c8409569957d008fb9d86b487e9

s390x support for travis

view details

Christian Göttsche

commit sha f8208f21730b21f284d9608a5b39f8ac1d15199b

Drop tabs in source indentions

view details

Christian Göttsche

commit sha 803234a58d12b23cbc700a14b50e57764718f5a5

update Github CI - Add a full featured clang job - Explicit disable options otherwise enabled by default in minimal job

view details

Christian Göttsche

commit sha 8a08a3209c093f9b1137ec5879d3804026b0df6e

IWYU update - Add Settings forward declaration in Process.h - Add assert.h include in XUitls.c - Add conditional stdbool.h include in Object.h - Drop unneeded stddef.h include in Richstring.c - Drop unneeded unistd.h include in Process.h - Drop unneeded string.h include in linux/Platform.c - Use String_eq to avoid string.h include in Action.c - Improve script to run custom iwyu version

view details

push time in 4 days

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 int ProcessList_size(ProcessList* this) {    return (Vector_size(this->processes)); } -static void ProcessList_buildTree(ProcessList* this, pid_t pid, int level, int indent, int direction, bool show) {+static int ProcessList_updateTreeSetLayer(ProcessList* this, unsigned int deep, unsigned int lft, unsigned int rht, int* index, int* tree_index, int indent) {+   Vector* layer = Vector_new(this->processes->type, false, DEFAULT_SIZE);+   for (int i = 0; i < Vector_size(this->processes); i++) {+      Process* proc = (Process*)Vector_get(this->processes, i);+      if (proc->tree_deep == deep && proc->tree_lft > lft && proc->tree_rht < rht) {+         Vector_add(layer, proc);+      }+   }

Look at the comment.

zhiburt

comment created time in 4 days

PullRequestReviewEvent

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

I tried an optimization where we would rebuild children first which seemed more efficient but it turns out not (an issue where we need to update a lhs of children after we resigned parents layer (as I remember something it was related to something like that)). So it still sort a parents first but uses right_bound and left_bound.

To implement any of the optimization it was necessary to have a tmp array with index of process. I decided to resolve it as a tree_index in Process structure.

The index though it's broken after sorting. It took me 2 days of debugging .... (:disappointed:) to try to understand why we can't update a map... And I still has no idea.

Overall I am not sure if it's still correct after the optimization

zhiburt

comment created time in 4 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 280d41b771e9c4c6e48d6a93283e2dac4c29484b

Add right_bound optimization Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 4 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 02e55902281d0965584eef0e5ebe60a7eee1dd93

Add an optimization to not look for a layer over the hole process list Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 4 days

Pull request review commentrambler-digital-solutions/actix-cache

Add Cacheable::cache_version into cache_key macro generation

 fn test_default_ttl_stale_ttl_version_work() {     assert_eq!(message.cache_stale_ttl(), 55);     assert_eq!(message.cache_version(), 0); }++#[derive(Cacheable, Serialize)]+struct MessageV {

Who knows :smile: I guess I wanted to add some tests with it.

zhiburt

comment created time in 5 days

PullRequestReviewEvent

push eventzhiburt/actix-cache

Maxim Zhiburt

commit sha cb2e84af1c2ef5f7a978219cda90c299aceba801

Remove unused MessageV struct Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 5 days

push eventzhiburt/gitea

Maxim Zhiburt

commit sha a25d8be24185aa681e64d5fdddc126dfc8f80e5c

Fix spelling mistake Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

pull request commentgo-gitea/gitea

Sendmail command

If, as it appears, it is intended not to communicate with a running Gitea you could have used the already available Async methods and just ran flush queues at the end of it.

Great proposal

We need to decide what type of command this is.

If it is intended to communicate with a running Gitea we should create and use an internal api to call and communicate with the running server.

We could support 2 types of calls probably, which could be determined by a flag.

zhiburt

comment created time in 6 days

push eventzhiburt/gitea

Maxim Zhiburt

commit sha 5b5f8c57344d7dcffce730d6973fddd5e04ef465

Use SendAsync+Flush instead of SendSync Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

Maxim Zhiburt

commit sha 042c259c411eef4ac278ae6f8d2092f5f1f848fa

Add timeout parameter to sendemail command Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

push eventzhiburt/lapin

Maxim Zhiburt

commit sha 68663b1d48a0e618463fa784dd5e5957cc79602b

Leave a note about with_tokio function

view details

push time in 6 days

PR opened CleverCloud/lapin

Update README.md

I am not sure if any other runtimes deep to update README

+9 -3

0 comment

1 changed file

pr created time in 6 days

create barnchzhiburt/lapin

branch : tokio_doc_comment

created branch time in 6 days

fork zhiburt/lapin

AMQP client library in Rust, with a clean, futures based API

fork in 6 days

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 int ProcessList_size(ProcessList* this) {    return (Vector_size(this->processes)); } -static void ProcessList_buildTree(ProcessList* this, pid_t pid, int level, int indent, int direction, bool show) {+static int ProcessList_updateTreeSetLayer(ProcessList* this, unsigned int deep, unsigned int lft, unsigned int rht, int* index, int* tree_index, int indent) {+   Vector* layer = Vector_new(this->processes->type, false, DEFAULT_SIZE);+   for (int i = 0; i < Vector_size(this->processes); i++) {+      Process* proc = (Process*)Vector_get(this->processes, i);+      if (proc->tree_deep == deep && proc->tree_lft > lft && proc->tree_rht < rht) {+         Vector_add(layer, proc);+      }+   }

An optimisation could be possible if we would know that this->processes was sorted already by TREE_SET. Since currently I assume it's may be false

zhiburt

comment created time in 6 days

PullRequestReviewEvent

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 int ProcessList_size(ProcessList* this) {    return (Vector_size(this->processes)); } -static void ProcessList_buildTree(ProcessList* this, pid_t pid, int level, int indent, int direction, bool show) {+static int ProcessList_updateTreeSetLayer(ProcessList* this, unsigned int deep, unsigned int lft, unsigned int rht, int* index, int* tree_index, int indent) {+   Vector* layer = Vector_new(this->processes->type, false, DEFAULT_SIZE);+   for (int i = 0; i < Vector_size(this->processes); i++) {+      Process* proc = (Process*)Vector_get(this->processes, i);+      if (proc->tree_deep == deep && proc->tree_lft > lft && proc->tree_rht < rht) {+         Vector_add(layer, proc);+      }+   }++   Vector_quickSort(layer);++   int size = Vector_size(layer);+   for (int i = 0; i < Vector_size(layer); i++) {+      int lft = (*tree_index)++;+      int idx = (*index)++;++      int level = deep-1;+      int currentIndent = indent == -1 ? 0 : indent | (1 << level);+      int nextIndent = indent == -1 ? 0 : (i < size - 1) ? currentIndent : indent;++      Process* proc = (Process*) (Vector_get(layer, i));+      size += ProcessList_updateTreeSetLayer(this, deep+1, proc->tree_lft, proc->tree_rht, index, tree_index, nextIndent);++      int rht = (*tree_index)++;++      Hashtable_put(this->treeSet, idx, proc);+      proc->tree_lft = lft;+      proc->tree_rht = rht;++      if (indent == -1) {+         proc->indent = 0;+      } else if (i == size - 1)+         proc->indent = -currentIndent;+      else+         proc->indent = currentIndent;+   }++   Vector_delete(layer);++   return size;+}++static void ProcessList_updateTreeSet(ProcessList* this) {

A good question. Both of these build a treeSet.

But ProcessList_buildTree doesn't use a privious map so basically it does look up the children by pid. Where ProcessList_updateTreeSet rebuild map only on knowledge of map.

https://github.com/htop-dev/htop/blob/a0c24b809dd7970019148b12d34c998f62b33bdc/ProcessList.c#L176-L182

https://github.com/htop-dev/htop/blob/a0c24b809dd7970019148b12d34c998f62b33bdc/ProcessList.c#L120-L125

That's the whole difference I suppose

zhiburt

comment created time in 6 days

PullRequestReviewEvent

push eventzhiburt/htop

Maxim Zhiburt

commit sha a0c24b809dd7970019148b12d34c998f62b33bdc

Fix trailing whitespace Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 long Process_compare(const void* v1, const void* v2) {       return (p1->processor - p2->processor);    case SESSION:       return (p1->session - p2->session);+   case TREE_SET:+      return (p1->tree_lft < p2->tree_lft) ? -1 : 1;

Actually it's not the same. It turned out it that it's p2->tree_lft - p1->tree_lft

zhiburt

comment created time in 6 days

PullRequestReviewEvent

push eventzhiburt/htop

Maxim Zhiburt

commit sha a93cee123cfbddd8ce9b9e4311cdde433e344223

Move delete of tree set before delete of processes Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha ca5ff7c5e44b25d3213b501d3b0c26123f28e6fc

Fix warnings Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 ProcessList* ProcessList_init(ProcessList* this, const ObjectClass* klass, Users    // tree-view auxiliary buffer    this->processes2 = Vector_new(klass, true, DEFAULT_SIZE); +   this->treeSet = Hashtable_new(140, false);

at ProcessList_init time it's impossible? But at the time we use the map we know the exact size (size == Vector_size(this->processes)).

zhiburt

comment created time in 6 days

PullRequestReviewEvent

push eventzhiburt/htop

Benny Baumann

commit sha 55eafd3b39eabdf60b5196d8c728b6eaf190650d

Add conf*/ and callgrind.out.* to list of ignored files

view details

Christian Göttsche

commit sha fc301b74473f2dc87dca6a338ac17126a058f68d

Compress size of default FunctionBar

view details

Christian Göttsche

commit sha b47bc667a254c1b1a8d6b5a635ca73f6c91c2e1a

Add key to pause process list updates

view details

Benny Baumann

commit sha 601480003ffdee444d8e48aed4222ad8dd23bb59

Centralise fault handling This should be done as all platforms essentially did the same anyway and there was nothing platform specific.

view details

Christian Göttsche

commit sha 25022c219df6d62827c4b10773288a30ec739e67

Read CPU count every cycle to avoid issues when HT/SMT mode changes

view details

Christian Göttsche

commit sha 0b9a0014989b8557eb16697984d9fd02b59bf47a

Meter: use explicit type for drawData

view details

Christian Göttsche

commit sha 9f5b50edd78111a42b5824f3725794f8762326d2

CPUMeter: avoid crashes and leaks in case the CPU count changes E.g. if the HT/SMT mode changes Use separate data for sub-meters Do not reuse drawData for maintainability

view details

Christian Göttsche

commit sha 5cc20e7cb27800166499d90ca457e17097adb3f4

Settings: do not save initial cpu count Not needed and confusing with ProcessList.cpuCount

view details

Christian Göttsche

commit sha 7af06659e2694823c9430e1ef249d1cd4e565926

Mark remaining classes const

view details

Christian Göttsche

commit sha 59edb2e80ce0430d13be8374d45a7eeafdf65604

Enclose macro argument in parentheses

view details

Christian Göttsche

commit sha 1df7fa387a1b5c9541a5b3b49c1ac0fb77bba05f

Misc CRT cleanup

view details

Benny Baumann

commit sha 2f9381d8671d560f40986faffea87f19ce965a1b

Keep building on errors Doing so allows for more than one error to be detected in builds

view details

Christian Göttsche

commit sha bfa7d1fbe275c6b7551af3afa99f4e90eaa315e7

Mark search parameter in Vector_indexOf const

view details

Christian Göttsche

commit sha 3c08fa3c638df1b275d106062e6b3c2dd3950100

Keep building on errors Doing so allows for more than one error to be detected in builds

view details

Christian Göttsche

commit sha 846fe8a71fd8ee5d91b297610e885b93ca039cd6

Mark Vector parameter const for non-modifying functions

view details

Christian Göttsche

commit sha 1d00893110bd7cc68b49c751d4fd734610eac959

Automatically detect if backtrace(3) needs -lexecinfo

view details

Christian Göttsche

commit sha af4f58d0136fedca4894194daf89ab242167185d

Misc conversion fixes

view details

Christian Göttsche

commit sha d744dac7ee6a651670387b6cc83878ef82202839

Add SELinuxMeter

view details

Christian Göttsche

commit sha 783be7711db0081a77fbcf84fbb63ab2a31ccc05

Do not use extra starttime process field on Linux

view details

Christian Göttsche

commit sha a63cfc8b7c172aa7e849521a479d39af737681a8

Refactor generating starttime string into Process class

view details

push time in 6 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 3c82dea7321567eba57c6519f004409551c8cddd

A draft of creating a nested set Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

Maxim Zhiburt

commit sha 347f4693215535ce0cb4746fa8238779824ad377

Use nested sets to sort tree Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

push eventzhiburt/htop

Maxim Zhiburt

commit sha 6da024d9c2e2baf0d7031ae3b783386e054168f4

draft: bump version so now it works Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 6 days

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

PS: is it save delete?

https://github.com/htop-dev/htop/blob/9a277f25fae6913057707e2810b9338b73be4394/ProcessList.c#L149

We don't take the value but get here

zhiburt

comment created time in 8 days

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

It will be fair to say that I stuck here.

These my small changes to buildTree function to collect lhs, rht, deep information. There also changes in sorting which does pretty the same as building function so basically I am not using the new fields at all.

https://github.com/zhiburt/htop/blob/3c82dea7321567eba57c6519f004409551c8cddd/ProcessList.c#L168-L212

Barely see the way how to keep list sorted.

Was it supposed to build a tree from the ground in ProcessList_add? And could you enghliten me what order means in your map. Since as it is a basic index why not just using a Vector<process>

To be candor I was hesitating to write since I was trying to understand this question as well as have it done for this period :disappointed: .

zhiburt

comment created time in 8 days

create barnchzhiburt/htop

branch : proxy_sock_version_nested_draft

created branch time in 8 days

Pull request review commentgo-gitea/gitea

Sendmail command

 func runSendMail(c *cli.Context) error { 		} 	} -	mailer.NewContext()-	msg := mailer.NewMessage(emails, subject, body)-	err = mailer.SendSync(msg)+	var emails []string+	err := models.IterateUser(func(user *models.User) error {+		emails = append(emails, user.Email)+		return nil+	}) 	if err != nil {-		return err+		return errors.New("Cann't find users")+	}++	mailer.NewContext()+	for _, email := range emails {+		msg := mailer.NewMessage([]string{email}, subject, body)+		err = mailer.SendSync(msg)+		if err != nil {+			return err+		}

Agreed. Good catch by the way.

But @lunny am I wrong that if we will push it in the queue and terminate the app most like a bunch of the messages will be missed?

If you missed the context I am trying to send emails from from cmd command. And as I understand if it will use this queue there's no way to way before it's finished.

zhiburt

comment created time in 8 days

PullRequestReviewEvent

push eventzhiburt/thirtyfour

Maxim Zhiburt

commit sha 1ecfcd2aa6cf00d2c36563348719f8bccbc66e08

Add socks_version proxy setting Tested that `socks_proxy.is_some()` && `socks_version.is_none()` causes an error. Setting `sock_version` to some number eliminate the issue.

view details

push time in 8 days

PR opened stevepryde/thirtyfour

Add socks_version proxy setting

Tested that socks_proxy.is_some() && socks_version.is_none() causes an error. Setting sock_version to some number eliminate the issue.

closes #27

+3 -1

0 comment

2 changed files

pr created time in 8 days

create barnchzhiburt/thirtyfour

branch : proxy_sock_version

created branch time in 8 days

pull request commentstevepryde/xenon

Make driver_path optional, instead use default name of drivers

I think it would be very useful. What if there were two or more in the path? you'd want to be sure which one you were running. Accidentally running the wrong one could lead to bugs that could be difficult to track down.

I think it is useful but at the end of the day we are running default one in his shell basically the same one (I guess) which he/she would start from his shell so he/she can figure out which it was.

However, this could be alleviated somewhat by making each driver output its version and then display that in the console/logs.

I consider that's a good option.

zhiburt

comment created time in 8 days

push eventzhiburt/xenon

Maxim Zhiburt

commit sha ff4b92f7326135f543f48d97f2e6f4babea8eb28

Refactoring Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 8 days

push eventzhiburt/xenon

Maxim Zhiburt

commit sha fc58fa4e0b87bae60a02f74267434b2cc3bfe7a6

Refactoring Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 8 days

Pull request review commentgo-gitea/gitea

Sendmail command

 func runSendMail(c *cli.Context) error { 		} 	} -	mailer.NewContext()-	msg := mailer.NewMessage(emails, subject, body)-	err = mailer.SendSync(msg)+	var emails []string+	err := models.IterateUser(func(user *models.User) error {+		emails = append(emails, user.Email)+		return nil+	}) 	if err != nil {-		return err+		return errors.New("Cann't find users")+	}++	mailer.NewContext()+	for _, email := range emails {+		msg := mailer.NewMessage([]string{email}, subject, body)+		err = mailer.SendSync(msg)+		if err != nil {+			return err+		}

But there's no way to wait before each one is sent in such case.

zhiburt

comment created time in 8 days

PullRequestReviewEvent

pull request commentstevepryde/xenon

Make driver_path optional, instead use default name of drivers

Performance is not critical here as this is executed only once during startup. The difference would be negligible.

Currently it's called on each seesion spawn :disappointed:

I'm not sure if it's ok to use which chromedriver here. There would need to be some kind of cross platform equivalent.

I think doing such sort of look up doesn't bring a lot to the table.

User can find a path, on its own since we just running default one in his shell. We could display that it's running running default chromedriver :smile:

Can you please elaborate more on what you mean by adding a deserializer?

By this I wanted to move parsing responsibility to parsing stage instead of a time where we spawn a session as I mention above. It may be just a constructor function as well.

zhiburt

comment created time in 9 days

Pull request review commentgo-gitea/gitea

Sendmail command

 func runSendMail(c *cli.Context) error { 		} 	} -	mailer.NewContext()-	msg := mailer.NewMessage(emails, subject, body)-	err = mailer.SendSync(msg)+	var emails []string+	err := models.IterateUser(func(user *models.User) error {+		emails = append(emails, user.Email)+		return nil+	}) 	if err != nil {-		return err+		return errors.New("Cann't find users")+	}++	mailer.NewContext()+	for _, email := range emails {+		msg := mailer.NewMessage([]string{email}, subject, body)+		err = mailer.SendSync(msg)+		if err != nil {+			return err+		}

By the way I am not sure about this commit.

It may be not save to do it in parallel? Otherwise why SendAsync uses a queue instead of just spawning a goorutine with send

https://github.com/go-gitea/gitea/blob/b222dbc1d1df2559206ec1c27928d4666a48f0e8/services/mailer/mailer.go#L338-L352

zhiburt

comment created time in 9 days

PullRequestReviewEvent

Pull request review commentgo-gitea/gitea

Sendmail command

 func runSendMail(c *cli.Context) error { 		} 	} -	mailer.NewContext()-	msg := mailer.NewMessage(emails, subject, body)-	err = mailer.SendSync(msg)+	var emails []string+	err := models.IterateUser(func(user *models.User) error {+		emails = append(emails, user.Email)+		return nil+	}) 	if err != nil {-		return err+		return errors.New("Cann't find users")+	}++	mailer.NewContext()+	for _, email := range emails {+		msg := mailer.NewMessage([]string{email}, subject, body)+		err = mailer.SendSync(msg)+		if err != nil {+			return err+		}

f5a108d

zhiburt

comment created time in 9 days

PullRequestReviewEvent

push eventzhiburt/gitea

Maxim Zhiburt

commit sha f5a108da12c4256dc386afd26c2f0d3f8e7508b9

Send messages concurantly Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 9 days

Pull request review commentgo-gitea/gitea

Sendmail command

+// Copyright 2020 The Gitea Authors. All rights reserved.+// Use of this source code is governed by a MIT-style+// license that can be found in the LICENSE file.++package cmd++import (+	"errors"+	"fmt"++	"code.gitea.io/gitea/models"+	"code.gitea.io/gitea/services/mailer"++	"github.com/urfave/cli"+)++func runSendMail(c *cli.Context) error {+	if err := argsSet(c, "title"); err != nil {+		return err+	}++	if err := initDB(); err != nil {+		return err+	}++	users, _, err := models.SearchUsers(&models.SearchUserOptions{+		Type:        models.UserTypeIndividual,+		OrderBy:     models.SearchOrderByAlphabetically,+		ListOptions: models.ListOptions{},+	})+	if err != nil {+		return errors.New("Cann't find users")+	}++	var emails []string+	for _, user := range users {+		emails = append(emails, user.Email)

59a1bee

zhiburt

comment created time in 9 days

PullRequestReviewEvent

push eventzhiburt/gitea

Maxim Zhiburt

commit sha 59a1bee26d5e60e45b0c348223dcc1cabdedef7c

Send emails one by one instead of as one chunck Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

push time in 9 days

Pull request review commentgo-gitea/gitea

Sendmail command

+// Copyright 2020 The Gitea Authors. All rights reserved.+// Use of this source code is governed by a MIT-style+// license that can be found in the LICENSE file.++package cmd++import (+	"errors"+	"fmt"++	"code.gitea.io/gitea/models"+	"code.gitea.io/gitea/services/mailer"++	"github.com/urfave/cli"+)++func runSendMail(c *cli.Context) error {+	if err := argsSet(c, "title"); err != nil {+		return err+	}++	if err := initDB(); err != nil {+		return err+	}++	users, _, err := models.SearchUsers(&models.SearchUserOptions{+		Type:        models.UserTypeIndividual,+		OrderBy:     models.SearchOrderByAlphabetically,+		ListOptions: models.ListOptions{},+	})+	if err != nil {+		return errors.New("Cann't find users")+	}++	var emails []string+	for _, user := range users {+		emails = append(emails, user.Email)

There's more I found in RFC

So a huge list of reciprocates may cause a error.

If an SMTP server has an implementation limit on the number of RCPT commands and this limit is exhausted, it MUST use a response code of 452 (but the client SHOULD also be prepared for a 552, as noted above). If the server has a configured site-policy limitation on the number of RCPT commands, it MAY instead use a 5yz response code.

And according to your question. So the behavior is literally implementation depended.

7.2. "Blind" Copies SMTP clients and servers SHOULD NOT copy the full set of RCPT command arguments into the header section, either as part of trace header fields or as informational or private- extension header fields. Since this rule is often violated in practice, and cannot be enforced, sending SMTP systems that are aware of "bcc" use MAY find it helpful to send each blind copy as a separate message transaction containing only a single RCPT command.

zhiburt

comment created time in 9 days

PullRequestReviewEvent

Pull request review commentgo-gitea/gitea

Sendmail command

 func runDeleteAuth(c *cli.Context) error {  	return models.DeleteSource(source) }++func runSendMail(c *cli.Context) error {+	if !c.IsSet("title") {+		return errors.New("--title flag is missing")+	}++	if !c.IsSet("content") {+		return errors.New("--content flag is missing")+	}++	subject := c.String("title")+	body := c.String("content")++	if err := initDB(); err != nil {+		return err+	}++	users, _, err := models.SearchUsers(&models.SearchUserOptions{

@techknowlogick @lafriks

I used a latest IterateUser function which uses batching under the hood.

2ed24b5

zhiburt

comment created time in 9 days

PullRequestReviewEvent

Pull request review commentgo-gitea/gitea

Sendmail command

+// Copyright 2020 The Gitea Authors. All rights reserved.+// Use of this source code is governed by a MIT-style+// license that can be found in the LICENSE file.++package cmd++import (+	"errors"+	"fmt"++	"code.gitea.io/gitea/models"+	"code.gitea.io/gitea/services/mailer"++	"github.com/urfave/cli"+)++func runSendMail(c *cli.Context) error {+	if err := argsSet(c, "title"); err != nil {+		return err+	}++	if err := initDB(); err != nil {+		return err+	}++	users, _, err := models.SearchUsers(&models.SearchUserOptions{+		Type:        models.UserTypeIndividual,+		OrderBy:     models.SearchOrderByAlphabetically,+		ListOptions: models.ListOptions{},+	})+	if err != nil {+		return errors.New("Cann't find users")+	}++	var emails []string+	for _, user := range users {+		emails = append(emails, user.Email)

I am not sure, but I as understand after going through the code, gitea uses net/smtp. And this is a method which responsible for this. (As I understand )

https://golang.org/pkg/net/smtp/#Client.Rcpt

There is a sort of specification I found.

https://blog.mailtrap.io/smtp-commands-and-responses/#RCPT_TO

The RCPT TO command specifies the recipient. As an argument, RCPT TO includes a destination mailbox (forward-path). In case of multiple recipients, RCPT TO will be used to specify each recipient separately.

So probably it will send each separately though I was previously thinking that it will do behave in a CC maner

zhiburt

comment created time in 9 days

PullRequestReviewEvent

push eventzhiburt/gitea

Lunny Xiao

commit sha 9b811931662fdc12e2d6f6fcfba6149d896300eb

Cache last commit when pushing for big repository (#10109) * Cache last commit when pushing for big repository * Fix bug * detect force push * Refactor cache push * Finish cache last commit info when push * Some improvements * Fix lint * Remove unused changes * Move pull request test before cache * Fix test mysql Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lauris BH <lauris@nix.lv>

view details

Melroy van den Berg

commit sha 508aca1cc01d881224c29727d2037f09c0a081dd

Improve Docker container name (#13077) * Improve Docker container name Use a better Docker container name than the default 'server' * Changing to gitea and use recommended v3 Docker-compose Use `gitea` as container name. And use version 3 of the docker-compose, which should now be used: https://docs.docker.com/compose/compose-file/compose-versioning/ Co-authored-by: techknowlogick <techknowlogick@gitea.io>

view details

Iván Valdés

commit sha 06f1cdde6edaf99a78ab18e0c1939a2d6ab30fde

Fix line break for MS teams webhook (#13081) Signed-off-by: Ivan Valdes <ivan@vald.es> Co-authored-by: Lauris BH <lauris@nix.lv>

view details

zeripath

commit sha ea69ec6f0feb357b82dc2572f88184db507e383b

Disable DSA ssh keys by default (#13056) * Disable DSA ssh keys by default OpenSSH has disabled DSA keys since version 7.0 As the docker runs openssh > v7.0 we should just disable DSA keys by default. Refers to #11417 Signed-off-by: Andrew Thornton <art27@cantab.net> * Just disable DSA keys by default Signed-off-by: Andrew Thornton <art27@cantab.net> * Appears we need to set the minimum key sizes too Signed-off-by: Andrew Thornton <art27@cantab.net> * Appears we need to set the minimum key sizes too Signed-off-by: Andrew Thornton <art27@cantab.net> * Remove DSA type * Fix Tests Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lauris BH <lauris@nix.lv>

view details

silverwind

commit sha 1c523e212913cdb6fc2b0709af7f4c910d1728c8

Set appropriate `autocomplete` attributes on password fields (#13078) `new-password` prevents annoying autocompletion in some cases, thought it's not semantically correct to use that for example on all three fields on the user account page, so some annoyances remain. Co-authored-by: Lauris BH <lauris@nix.lv>

view details

zeripath

commit sha d65cd5677af3df5d616bf48dfd4be354e23c184f

Change default log configuration (#13088) * Change default log configuration This PR changes the install page and the docker default logging configuration to match the suggested configuration that I repeatedly end up suggesting on issues. It further improves the logging configuration docs to recommend specific instructions for how to configure logs for posting to issues. Signed-off-by: Andrew Thornton <art27@cantab.net> * Update docs/content/doc/advanced/logging-documentation.en-us.md

view details

zeripath

commit sha 6f2784911fe739d3b83787b7984c1b8a2fb31690

Fix deadlock when deleting team user (#13092) `models.getUserRepoPermission(...)` calls `HasOrgVisible` which uses `models.x` potentially outside of the transaction `e` provided as an argument to `getUserRepoPermission`. This PR switches to use `hasOrgVisible(e, ...)`. Fix #12983 Signed-off-by: Andrew Thornton <art27@cantab.net>

view details

zeripath

commit sha 7eb846013299465e4cd73f76f13a00984183146e

Fix attachments list in edit comment (#13036) #11141 broke the appearance of dropzone attachments when editting comments causing poorly updating lists. This PR fixes this. Fix #12583 Signed-off-by: Andrew Thornton art27@cantab.net

view details

Wim

commit sha 9066d09c57d3eaddd27c4986900e6afc0885e0c7

Add ssh certificate support (#12281) * Add ssh certificate support * Add ssh certificate support to builtin ssh * Write trusted-user-ca-keys.pem based on configuration * Update app.example.ini * Update templates/user/settings/keys_principal.tmpl Co-authored-by: silverwind <me@silverwind.io> * Remove unused locale string * Update options/locale/locale_en-US.ini Co-authored-by: silverwind <me@silverwind.io> * Update options/locale/locale_en-US.ini Co-authored-by: silverwind <me@silverwind.io> * Update models/ssh_key.go Co-authored-by: silverwind <me@silverwind.io> * Add missing creation of SSH.Rootpath * Update cheatsheet, example and locale strings * Update models/ssh_key.go Co-authored-by: zeripath <art27@cantab.net> * Update models/ssh_key.go Co-authored-by: zeripath <art27@cantab.net> * Update models/ssh_key.go Co-authored-by: zeripath <art27@cantab.net> * Update models/ssh_key.go Co-authored-by: zeripath <art27@cantab.net> * Update models/ssh_key.go * Optimizations based on feedback * Validate CA keys for external sshd * Add filename option and change default filename Add a SSH_TRUSTED_USER_CA_KEYS_FILENAME option which default is RUN_USER/.ssh/gitea-trusted-user-ca-keys.pem Do not write a file when SSH_TRUSTED_USER_CA_KEYS is empty. Add some more documentation. * Remove unneeded principalkey functions * Add blank line * Apply suggestions from code review Co-authored-by: zeripath <art27@cantab.net> * Add SSH_AUTHORIZED_PRINCIPALS_ALLOW option This adds a SSH_AUTHORIZED_PRINCIPALS_ALLOW which is default email,username this means that users only can add the principals that match their email or username. To allow anything the admin need to set the option anything. This allows for a safe default in gitea which protects against malicious users using other user's prinicipals. (before that user could set it). This commit also has some small other fixes from the last code review. * Rewrite principal keys file on user deletion * Use correct rewrite method * Set correct AuthorizedPrincipalsBackup default setting * Rewrite principalsfile when adding principals * Add update authorized_principals option to admin dashboard * Handle non-primary emails Signed-off-by: Andrew Thornton <art27@cantab.net> * Add the command actually to the dashboard template * Update models/ssh_key.go Co-authored-by: silverwind <me@silverwind.io> * By default do not show principal options unless there are CA keys set or they are explicitly set Signed-off-by: Andrew Thornton <art27@cantab.net> * allow settings when enabled * Fix typos in TrustedUserCAKeys path * Allow every CASignatureAlgorithms algorithm As this depends on the content of TrustedUserCAKeys we should allow all signature algorithms as admins can choose the specific algorithm on their signing CA * Update models/ssh_key.go Co-authored-by: Lauris BH <lauris@nix.lv> * Fix linting issue Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Lauris BH <lauris@nix.lv> Co-authored-by: techknowlogick <matti@mdranta.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io>

view details

zeripath

commit sha 7edf7eb46c4c4d90f3f2a4df0948e94400a129eb

Log the underlying panic in runMigrateTask (#13096) If there is a panic during runMigrateTask we should capture and log the underlying panic error. This PR ensures that the panic is logged and captured as part of the task message. Fix #13095 Signed-off-by: Andrew Thornton <art27@cantab.net>

view details

GiteaBot

commit sha e35f7e81ae7ed8388a8011baa43cb4faf42ebfe0

[skip ci] Updated translations via Crowdin

view details

kolaente

commit sha 64133126cdb842a047b2cd104c2f177f6e83f79a

Update golangci-lint to version 1.31.0 (#13102) This PR updates golangci-lint to the latest version 1.31.0. The upgrade introduced a new check for which I've fixed or disabled most cases. Signed-off-by: kolaente <k@knt.li>

view details

6543

commit sha 845d0afb3326f147dc78059bbdcecf45c3a9a0df

4 line diff (#13103)

view details

wULLSnpAXbWZGYDYyhWTKKspEQoaYxXyhoisqHf

commit sha 0e4f663126dbd39266e56203cca48b8a5aa85ee6

chore: update minio image version (#13109) * 2020-05-16 --> 2020-10-09

view details

Chris Shyi

commit sha c752ccee6425091cf17c98029f039f3fe66552b4

Improve error feedback for duplicate deploy keys (#13112) Instead of a generic HTTP 500 error page, a flash message is rendered with the deploy key page template to inform the user that a key with the intended title already exists. Fixes #13110

view details

6543

commit sha 95136387159e116508b98e1aaa2db40993c266ad

Prohibit automatic downgrades (#13108) Prohibit automatic downgrades by checking the version of the db and warning if the version number should be lower. Close #13107 Co-authored-by: Cirno the Strongest <1447794+CirnoT@users.noreply.github.com>

view details

Elena Neuschild

commit sha bf6ed724a6fd843f5a34a3465e9118b6ba1ba61b

Fix args in tasks.json (#13116)

view details

GiteaBot

commit sha b546eda7a8fa17d86cf9722c9f7bcca009d40443

[skip ci] Updated translations via Crowdin

view details

赵智超

commit sha 8be3e439c2b3a90fcb639b732008486b85314b8d

Add team support for review request (#12039) Add team support for review request Block #11355 Signed-off-by: a1012112796 <1012112796@qq.com> Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lauris BH <lauris@nix.lv> Co-authored-by: Andrew Thornton <art27@cantab.net>

view details

zeripath

commit sha f2858600af811c584c82b45efbf343b53821575b

Return 404 not 500 from API if team does not exist (#13118) If team does not exist expect ErrTeamNotExist not ErrUserNotEXist Fix #11336 Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lauris BH <lauris@nix.lv>

view details

push time in 9 days

PR opened stevepryde/xenon

Make driver_path optional, instead use default name of drivers

I am not sure though the match case like that worth it. It would be better to add a transformation to a parse stage. But it's require a custom implementation of Deserializer of having a some a kind of new function.It would provide a performance win as well as a error detection from the outset.

So I have a mixed fillings about this PR.

I provide the PR in such state to show you that we need to match browser to its webdriver in any way.

What do you think @stevepryde ?

ref #9

+12 -2

0 comment

1 changed file

pr created time in 10 days

create barnchzhiburt/xenon

branch : use_default_paths

created branch time in 10 days

push eventzhiburt/xenon

Maxim Zhiburt

commit sha 15ff0bde34788e369a38937cee7e984aeb313b23

clean a test which uses undeclared module `pretty_env_logger` I decided to remove it allthough there could be added a dev-dependency.

view details

Maxim Zhiburt

commit sha 449daf64433fd2a27d9ac6f24a5f64897d926704

raise error on config parsing error Priviously it was replaced by default config

view details

Maxim Zhiburt

commit sha 72ea0fdbdc875724eca5706617fb5fcb4ac3ae55

cleaning

view details

Steve Pryde

commit sha eb9bd234dc63811118e087982f0663f61d3b1865

Merge pull request #4 from zhiburt/dont_use_default_config_in_case_of_error Don't use default config in case of error

view details

Steve Pryde

commit sha 455894af637f185a122111b1f01830ed152e1f63

Merge pull request #2 from zhiburt/remove_failed_test Clean a test which uses undeclared module `pretty_env_logger`

view details

Maxim Zhiburt

commit sha d1fd8eee012feb8a3a11f2fc8337789289ea6e75

session/create: Add content-type parameter to the responce Some tools require to have a correct responce type. In other way they will consider the protocol no compatible with W3C. Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

Maxim Zhiburt

commit sha a988c9cb2614667900190cac41dd4758092d1d7d

fix example confix file

view details

Steve Pryde

commit sha 7b7c240834054586b0e8cde7d2a8b91f203fe70c

Merge pull request #6 from zhiburt/fix_default_example_config fix example confix file

view details

Steve Pryde

commit sha 2182e3fac9388bd302ff1f82c01afa92a7e8a9da

Merge pull request #5 from zhiburt/add_content_type_to_responce_ session/create: Add content-type parameter to the responce

view details

Maxim Zhiburt

commit sha 180234e29fb89f5fd6bd1828735d574c53620782

Add support for custom arguments in config. The argumets will be passed to the webdriver instance. Default value is None. Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>

view details

Steve Pryde

commit sha 7ff8d71c9682dc0d06f5dbef5ef266a38c52718a

Merge pull request #8 from zhiburt/args_support_cfg Add support for custom arguments in config.

view details

push time in 10 days

issue openedstevepryde/xenon

config/ Make driver_path optional

I think it doesn't necessary to provide a path. By default xenon could assume that it's visible (driver could be located through $PATH)

created time in 10 days

PR opened stevepryde/xenon

Add support for custom arguments in config.

closes #7

+29 -7

0 comment

2 changed files

pr created time in 11 days

create barnchzhiburt/xenon

branch : args_support_cfg

created branch time in 11 days

issue openedstevepryde/xenon

Pass constom arguments to webdriver though config

Some times we need to path through arguments to a webdriver (geckodriver/chromedriver etc.).

For example path to executable (firefox/chrome) since it may have not standard location.

As I see currently we pass only port which handled internally.

https://github.com/stevepryde/xenon/blob/91fef580287c438b43d3aacf545d5282e95f346f/src/service.rs#L21-L32

We could add a list of specific options or a custom list which may be benefitial

I'll tackle it later if you don't mind and if you consider that's suitable change.

created time in 11 days

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

Just publishing an update.

I did manage filling of new Hashmap<pid, (left, right)> by small changes in ProcessList_buildTree (just add a counter that's it :smile: ). All though I tried to rewrite it once and didn't succeed :disappointed: .

pid=1400; lft=1073; rhs=1074
pid=0; lft=0; rhs=1519
pid=1; lft=1; rhs=1308
pid=1402; lft=1071; rhs=1072
pid=2; lft=1309; rhs=1310
pid=3; lft=1311; rhs=1312
pid=12604; lft=235; rhs=236
pid=4; lft=1313; rhs=1314
pid=1405; lft=1089; rhs=1090
pid=2461; lft=296; rhs=1055

The main point as I understand was to simplify sorting but I didn't remove any stuff in actual function so I just thinking :thinking:.

Overall how this information has to be used? I don't thing about sorting it as well about keeping a new process vector keep up to date acording to this information.

I suppose you may have expected something different in the approach so I decided to put it here

Thanks

zhiburt

comment created time in 11 days

push eventzhiburt/gitea

Maxim Zhiburt

commit sha d3723b55e2db0a25ecdf200405e05c3e76c39e6a

Fix import style Co-authored-by: 6543 <6543@obermui.de>

view details

push time in 13 days

Pull request review commentgo-gitea/gitea

Sendmail command

 func runDeleteAuth(c *cli.Context) error {  	return models.DeleteSource(source) }++func runSendMail(c *cli.Context) error {+	if !c.IsSet("title") {+		return errors.New("--title flag is missing")+	}++	if !c.IsSet("content") {+		return errors.New("--content flag is missing")+	}++	subject := c.String("title")+	body := c.String("content")++	if err := initDB(); err != nil {+		return err+	}++	users, _, err := models.SearchUsers(&models.SearchUserOptions{

I tried to have this done but it seems to me that changes has to be done in https://github.com/go-gitea/gitea/blob/c752ccee6425091cf17c98029f039f3fe66552b4/models/user.go#L1660

zhiburt

comment created time in 13 days

PullRequestReviewEvent

pull request commentgo-gitea/gitea

Sendmail command

Just to notice if --force is passed warning will not be printed. And left title as required just because an empty email makes no sense?

zhiburt

comment created time in 13 days

push eventzhiburt/gitea

Maxim Zhiburt

commit sha 3cb7d18ef8f903c1d9b377c74281a5f08c06bbff

Make content optional Print waring if it's empty or haven't been set up. The warning will be skiped if there's a `--force` flag.

view details

push time in 13 days

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

@BenBE Sorry If this question will appear a bit out of place but ... :disappointed_relieved:

As I understand each insert/remove in ProcessList will require to recalculate location ranges right? And this list get updated a lot as I understand. Therefore I just doubt that it will really be more efficient :)

Nested sets are very slow for inserts because it requires updating left and right domain values for all records in the table after the insert. This can cause a lot of database stress as many rows are rewritten and indexes rebuilt. However, if it is possible to store a forest of small trees in table instead of a single big tree, the overhead may be significantly reduced, since only one small tree must be updated.

zhiburt

comment created time in 14 days

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

I've examined wiki and your Joomla link.

I hope I understood what it's supposed to look like.

image

The image almost a copy paste from wiki.

But unfortunately I haven't got an complete view why it's a beneficial approach yet :disappointed: .

Do you propose to recalculate everything in ProcessList_sort or it's supposed to be like a brand new data structure which will be kept up to date. (There will be always a valid processes)?

zhiburt

comment created time in 14 days

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 static void ProcessList_buildTree(ProcessList* this, pid_t pid, int level, int i          Vector_add(children, process);       }    }++   // sort children in by default comparator+   // so all children will be sorted by it.+   // only a nodes with deep == 0 will be sorted by PID

Probably the comment should be removed

zhiburt

comment created time in 14 days

PullRequestReviewEvent

Pull request review commenthtop-dev/htop

Add support for sorting in Tree mode

 static void ProcessList_buildTree(ProcessList* this, pid_t pid, int level, int i          Vector_add(children, process);       }    }++   // sort children in by default comparator+   // so all children will be sorted by it.+   // only a nodes with deep == 0 will be sorted by PID

Take a look at my last comment

zhiburt

comment created time in 14 days

PullRequestReviewEvent

pull request commenthtop-dev/htop

Add support for sorting in Tree mode

So basically it doesn't sort a main line (init on screenshot). image

If there's more init-like processies they will be not sorted

If it sort everything it works like this

image

zhiburt

comment created time in 14 days

more