- Total rewrite in order to address current pain points:
- No documentation
- ABI crashes
- No tests
- No CI
- Missing async API
- build: Allow configuration of sysconfig module
- config_envvar: Add environment variable for pacrunner debugging
- build: disable mozjs by default
- python: Support Python 3.10 and above
- Add Duktape pacrunner module
- config_kde: Compute list of config file locations ourselves
- cpmfog_gnome3: Add gnome-wayland to permitted DESKTOP_SESSION
- python bindings: fix "TypeError: argtypes must be a sequence of types" (#125)
- Port to, and require, SpiderMonkey 68
- Use closesocket() instead of close() on Windows
- Add symbol versions - be ready to introduce new APIs as needed
- Add public px_proxy_factory_free_proxies function
- Add PacRunner config backend (largely untested; feedback welcome!)
- Small performance improvements
- pxgsettings: use the correct syntax to connect to the changed signal (silences annoying output on console)
- Support python3 up to version 3.9
- Fix buffer overflow when PAC is enabled (CVE-2020-26154)
- Rewrite url::recvline to be nonrecursive (CVE-2020-25219)
- Remove nonfunctional and crashy pacrunner caching
- Never use system libmodman (no other consumers, not maintained)
- Port to, and require, SpiderMonkey 38.
- Fix "NetworkManager plugin not being built" (gh#libproxy#53).
- Fix "networkmanager plugin not working (gh#libproxy#58).
- Fix "Invalid read after free" (gh#libproxy#59).
- Fix intermittent unit test failures.
- Parallel build support for python2 and python3. -DWITH_PYTHON has been replaced with -DWITH_PYTHON2 and -DWITH_PYTHON3 to have full control over this. Default is ON for both (issue#22)
- Minor fixes to the PAC retriever code (issue#40)
- Fallback to mcs instead of gmcs for the mono bindings (issue#37)
- Fix build using cmake 3.7
- Fix deprecation warnings of pxgsettings with glib 2.46
- Improve the get-pac test suite (issue#47)
- Allow linking webkit pacrunner against javascriptcore-4.0 (webkit2).
- Allow to disable building of the KDE module (-DWITH_KDE=ON/OFF).
- Fix compilation errors with CLang on MacOSX.
- bindings: perl: Add an option to explicitly link against libperl.so Some distributions want to do it, other prefer not to, the library is anyway in context of perl.
- config_kde: Add a basic cache and invalidation: performance improvement for the KDE module.
- Move development to github.com/libproxy/libproxy
- Fix fd leak in get_pac (Bug #185)
- Detect running MATE session (Bug #186, Part1).
- Fix linking of perl bindings to pthread (Bug #182)
- Correctly detect spidermonky (mozjs185) (Bug #188)
- Stop pxgsettings from segfaulting on exit (Bug #192)
- Fix test #10 (Bug #189)
- Fix build on Mac OS X (Bug #183)
- Add a generic KDE Config module (fix crashes of Qt5 based apps) (issue#4)
- Build fixes with cmake 2.8.10+
- Quick release without built binaries / files (Address Bug #184)
- Fix http chunk encoded PAC that was broken in previous release
- Add HTTP client unit test
- Fix more coding style issues
- CVE-2012-4504 Fixed buffer overflow when downloading PAC
- Fix infinit loop uppon network errors
- Only support standalone mozjs185 as mozilla js engine. xulrunner being part of the now lightning fast moving firefox is impossible to be tracked as a dependency and it is not supported by Mozilla to be used in this scenario.
- Support building with javascritpcoregtk 1.5 (got split out of webkitgtk).
- Support sending multiple results.
- Issues fixed:
- #166: Libproxy does not parse NO_PROXY correct when the line contains spaces
- #164: If gconf's value is an empty list, pxgconf will make /usr/bin/proxy wait forever
- #60: use lib js for embedded solutions
- #160: strdup and gethostbyname not declared on OSX 10.7
- #168: .pc file should be installed under OSX as well.
- #170: Also check for "Transfer-Encoding: chunked".
- #171: mozjs pacrunner: Fix parameters of dnsResolve_()
- #172: Allow to forcibly build pacrunner as module (-DBIPR={ON,OFF})
- #173: Libproxy doesn't build with gcc 4.7
- #147: Use ${CMAKE_DL_LIBS} instead of assuming libdl is correct.
- #176: python bindings: guard the destructor.
- #177: Speed up importing of libproxy in python.
- #179: CMAKE 2.8.8 does not define PKG_CONFIG_FOUND
- Support/require xulrunner 2.0+
- Support linking againgst libwebkit-gtk3 (-DWITH_WEBKIT3=ON)
- Port to gsettings for gnome3. (-DWITH_GNOME3=ON[default])
- Issues closed:
- #149: always test for the right python noarch module path
- #155: Cannot compile with Firefox 4
- #156: libproxy should build against webkitgtk-3.0
- #158: Won't compile w/ xulrunner 2.0 final
- #159: libproxy fails with autoconfiguration "http://proxy.domain.com"
- #131: GSettings-based GNOME plugin
- #150: SUSE sysconfig/proxy config support
- Fixed a crash in the URL parser
- Fixed build issues with Visual Studio
- Updated the INSTALL file
- Install Python binding in prefix path if site-packages exists
- Fixed compilation with Visual Studio
- C# bindings are installable (-DWITH_DOTNET=ON)
- C# bindings installation path can be changed using -DGAC_DIR=
- Internal libmodman build fixed
- Installation dirs are now all relative to CMAKE_INSTALL_PREFIX
- Fixed test while using --as-needed linker flag
- Fixed generation of libproxy-1.0.pc
- Basic support for Mingw added (not yet 100% functional)
- Ruby binding implemented (not yet in the build system)
- Fixed modules not being found caused by relative LIBEXEC_INSTALL_DIR
- Fixed bug with builtin plugins (Issue 133)
- Vala bindings installation path can be changed using -DVAPI_DIR=
- Python bindings installation path can be changed using -DPYTHON_SITEPKG_DIR=
- Perl bindings can be installed in vendor directory (-DPERL_VENDORARCH=ON)
- Perl bindings installation path can be change using -DPX_PERL_ARCH=
- Unit test now builds on OSX
- Add support for optionally building using a system libmodman
- Rework build system to be cleaner
- Fix two major build system bugs: 127, 128
- Test can now be out-compiled using BUILD_TESTING=OFF
- Fixed python binding not handling NULL pointer
- Pyhton binding now support Python version 3
- Rewrote URL parser to comply with unit test
- Username and password are now URL encoded
- Scheme comparison is now non-case sensitive
- Fixed deadlock using WebKit has PAC runner
- Fixed OS X compilation of Perl bindings
- Fixed python binding that failed on missing px_free symbole
- Workaround cmake bug with dynamic libraries in non-standard folders
- Perl bindings have been integrated into the CMake Build System
- Vala bindings are installed if -DWITH_VALA=yes is passed to cmake
- All extensions can be disabled using WITH_*=OFF cmake options
- socks5:// and socks4:// can now be returned
- Many bugfixes
- C++ rewrite
- Small API change (px_proxy_factory_get_proxy() can now return NULL)
- SOVERSION bump
- libmodman is now a seperate library
- Migrate to cmake
- Windows support (config_w32reg, ignore_hostname; VC++ support)
- MacOSX support (config_macosx, ignore_hostname)
- Built-in modules support
- Support for chunked encoding
- Move to hidden visibility by default
- KDE's KConfig symantics are fully supported
- Removeal of all PX_* env variables (no longer needed)
- Symbol based detection of relevant pacrunner
- Reworked config_gnome to not suck (its much faster)
- Many other things I can't remember
- Bugfixes
- config file parser reads all sections
- KDE session detection based on environment varibales, as suggested by KDE upstream.
- KDE configuration module is the first module in C++ and now links to libkdecore4 in order to properly detect the configuration folder for kde.
- At the moment we're not compatible with KDE3. Sorry.
- .NET bindings can now properly be installed and it should be possible for packagers to provide them.
- WARNING!!! Slight API change!!! see docs for px_proxy_factory_get_proxies()
- Credentials support (see API change above)
- A complete rewrite of the module manager
- file:// as valid PAC URLs
- Sample Mono application
- Automake 1.11 shaved output
- gnome backend rewrite (now w/o thread issues)
- Test suite base functionality exists
- Many solaris build fixes
- Seamonkey support as JS pacrunner
- Bugfixes
- Compiles for MS Windows using Mingw