Hello Memcached community!

Just an update:

Again, the unsupported options/features (may support in the future):

   1. sasl (Upstream support since v1.4.3)
   2. extstore (Upstream support since v1.5.4) *Now supported! All tests 
   passed!*
   3. -u/user (Better use Windows runas command, Windows explorer's Run as 
   different user context menu, or other Windows built-in tools)
   4. -s/unix-socket
   5. -k/lock-memory
   6. -r/coredumps
   7. seccomp

Build/Tests/Artifacts: 
https://ci.appveyor.com/project/jefty/memcached-windows
Alternative Downloads: 
https://bintray.com/jefty/generic/memcached-windows/_latestVersion

Regards,
Jefty

On Tuesday, March 31, 2020 at 9:35:47 PM UTC+2, Jefty Negapatan wrote:
>
> Hello Memcached community!
>
>
> Just an update (v1.6.3):
>
>
> *Unsupported/Disabled options/features (may support in the future):*
>
> *tls* (Upstream support since v1.5.13) *Now supported! **Built and tested 
> with latest OpenSSL (1.1.1d).* Built and tested with latest *BoringSSL 
> (chromium-stable)*. *BoringSSL* reduced the statically-linked executable 
> size by *~34%* (Win64 2.94MB -> 1.94MB). *BoringSSL* already rejects peer 
> renegotiations by default so the unsupported *OpenSSL*-only 
> *SSL_in_before* API used in memcached is no longer necessary. I just 
> disabled it using *OPENSSL_IS_BORINGSSL* macro.
>
> *Testing:*
>
> *NOTE:* Since Perl-based test suite is not executed, test is lacking on 
> some areas. *Use at your own risk!* Perl-based test suite is now ported 
> and it was able to detect issues and I already fixed! Majority of the test 
> suite change is only disabling the unsupported unix socket connection but 
> no changes in test cases/scenarios. All tests *PASSED*! This will now 
> give Windows users the confidence to use the native Windows port.
>
> GitHub Release: 
> https://github.com/jefyt/memcached-windows/releases/tag/1.6.3_mingw 
>
> Build/Test/Artifacts: 
> https://ci.appveyor.com/project/jefty/memcached-windows/builds/31859470
>
> Again, the unsupported options/features (may support in the future):
>
>    1. sasl (Upstream support since v1.4.3)
>    2. extstore (Upstream support since v1.5.4)
>    3. -u/user (Can use Windows runas command or Windows explorer's Run as 
>    different user context menu)
>    4. -s/unix-socket
>    5. -k/lock-memory
>    6. -r/coredumps
>    7. seccomp
>
>
> Regards,
> Jefty
>
> On Friday, March 27, 2020 at 10:25:05 PM UTC+1, Jefty Negapatan wrote:
>>
>> Hello Memcached community!
>>
>> Just an update:
>>
>> *Unsupported/Disabled options/features (may support in the future):*
>>
>>    1. *tls* (Upstream support since v1.5.13) *Now supported! Built and 
>>    tested with latest OpenSSL (1.1.1d).*
>>
>> Just like cURL and Google Chrome for Windows, TLS library is statically 
>> linked.
>> Statically-linked exe size: *327KB* -> *3,008KB*
>>
>> Regards,
>> Jefty
>>
>> On Tuesday, March 24, 2020 at 11:26:13 PM UTC+1, Jefty Negapatan wrote:
>>>
>>> Hello Memcached community!
>>>
>>> Just wanna share that I've ported the latest memcached (1.6.2 
>>> <https://github.com/memcached/memcached/releases/tag/1.6.2>) to 
>>> Windows. Based on my search if I'm not mistaken, the last native Windows 
>>> build (not via Cygwin/WSL) is already outdated (1.4.5).
>>>
>>> *Unsupported/Disabled options/features (may support in the future):*
>>>
>>>    1. *sasl* (Upstream support since v1.4.3)
>>>    2. *extstore* (Upstream support since v1.5.4)
>>>    3. *tls* (Upstream support since v1.5.13)
>>>    4. *-u/user* (Can use Windows *runas* command or Windows explorer's *Run 
>>>    as different user* context menu)
>>>    5. *-s/unix-socket* (Windows does not currently support Unix domain 
>>>    socket)
>>>    6. *-k/lock-memory* (Windows does not currently support locking of 
>>>    all paged memory)
>>>    7. *-r/coredumps* (mingw-w64 <http://mingw-w64.org/doku.php> 
>>>    currently doesn't support postmortem but gdb debugging without coredump 
>>> is 
>>>    possible)
>>>    8. *seccomp* (Linux-specific)
>>>
>>>
>>> *Testing:*
>>>
>>>    1. memcached's *testapp* is also ported to easily verify that the 
>>>    port is working as expected (all *57* tests are *OK*)
>>>    2. *make test* will only execute *testapp.exe* and *sizes.exe* but 
>>>    not the Perl-based test suite (at least currently)
>>>    3. mc-crusher <https://github.com/memcached/mc-crusher> test is also 
>>>    performed (although not really for hours/days).
>>>    4. Maximum connection limit concurrency testing is also performed 
>>>    using libMemcached <https://libmemcached.org/>'s *memcslap*.
>>>    5. *NOTE:* Since Perl-based test suite is not executed, test is 
>>>    lacking on some areas. *Use at your own risk!*
>>>
>>>
>>> Since the ideal target is to be merged upstream although not really a 
>>> priority and just depends on the maintainer, the codes are carefully 
>>> written (and of course tested!) not to cause major merge conflicts with the 
>>> base code. You can confirm this with the diffs. Building with changes for 
>>> non-Windows target is just like building the original codes as changes are 
>>> all protected with preprocessor macros (e.g. *DISABLE_UNIX_SOCKET*) and 
>>> build env. Main logic is same as the official except for the necessary 
>>> Windows-specific changes mostly implemented in separate files (see mingw 
>>> folder). 
>>> https://github.com/jefyt/memcached-windows#implementation-notes-for-devs 
>>> contains the summary of changes.
>>>
>>> Just refer to https://github.com/jefyt/memcached-windows (*mingw* 
>>> branch) for more details (e.g. building, binaries, notes).
>>>
>>> If you know anyone asking for Windows binaries or just interested to 
>>> try/test/take a look, you can refer to this port.
>>>
>>> Thanks!
>>>
>>> Regards,
>>> Jefty
>>>
>>>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"memcached" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to memcached+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/memcached/32ae9fed-3165-4ce4-b5d2-7e5c2f7ecae8%40googlegroups.com.

Reply via email to